finalize RepoSize database

Including locking on creation, handling of permissions errors, and
setting repo sizes.

I'm confident that locking is not needed while using this database.
Since writes happen in a single transaction. When there are two writers
that are recording sizes based on different git-annex branch commits,
one will overwrite what the other one recorded. Which is fine, it's only
necessary that the database stays consistent with the content of a
git-annex branch commit.
This commit is contained in:
Joey Hess 2024-08-15 11:50:01 -04:00
parent 63a3cedc45
commit eac4e9391b
No known key found for this signature in database
GPG key ID: DB12DB0FF05F8F38
3 changed files with 86 additions and 37 deletions

View file

@ -55,8 +55,6 @@ Planned schedule of work:
* Goal is for limitFullyBalanced not to need to calcRepoSizes.
* Add git-annex branch sha to Database.RepoSizes.
* When Annex.reposizes does not list the size of a UUID, and
that UUID's size is needed eg for balanced preferred
content, use calcRepoSizes and store in