borgbackup/borg

ACLs on FreeBSD: use ACL_TEXT_NUMERIC_IDS for better speed

オープン

#9,144 opened on 2025/11/04

 (2 件のコメント) (0 件のリアクション) (0 人の担当者)Python (732 件のフォーク)batch import
cmd: createfilesystemhelp wantedos: bsd

Repository metrics

Stars
 (10,086 個のスター)
PR merge metrics
 (PR metrics pending)

説明

https://man.freebsd.org/cgi/man.cgi?query=acl_to_text&sektion=3&apropos=0&manpath=FreeBSD+14.3-RELEASE+and+Ports

We can:

  • get the uid / gid instead of the names: always use ACL_TEXT_NUMERIC_IDS
  • avoid a gazillion more or less expensive, uncached lookups inside "libacl" for the user/group names (especially for samba / winbind this can be slow)
  • replace these by cached lookups inside borg, using a LRU caches to map uids to user names and to map gids to group names (uid2user and gid2group already have caching).
  • replace the uid / gid in the ACL by some custom code (see linux.pyx)

Adding this feature needs a FreeBSD developer, who can develop and test it.

The Linux code in master branch already uses a similar method. #9143

コントリビューターガイド