summaryrefslogtreecommitdiff
path: root/doc/bugs
diff options
context:
space:
mode:
authorGravatar Joey Hess <joey@kitenet.net>2011-12-11 14:51:20 -0400
committerGravatar Joey Hess <joey@kitenet.net>2011-12-11 15:05:53 -0400
commit8680c415dedcc1fdbbcc0b9cdd7e37e860b22130 (patch)
tree073641a052f833cda6222a19b1cf1c91c41ee94d /doc/bugs
parent59971c923029a6f10c47a526e7878130637c139e (diff)
slow, stupid, and safe index updating
Always merge the git-annex branch into .git/annex/index before making a commit from the index. This ensures that, when the branch has been changed in any way (by a push being received, or changes pulled directly into it, or even by the user checking it out, and committing a change), the index reflects those changes. This is much too slow; it needs to be optimised to only update the index when the branch has really changed, not every time. Also, there is an unhandled race, when a change is made to the branch right after the index gets updated. I left it in for now because it's unlikely and I didn't want to complicate things with additional locking yet.
Diffstat (limited to 'doc/bugs')
-rw-r--r--doc/bugs/git-annex_branch_corruption.mdwn3
1 files changed, 3 insertions, 0 deletions
diff --git a/doc/bugs/git-annex_branch_corruption.mdwn b/doc/bugs/git-annex_branch_corruption.mdwn
index 63633fb08..5249e63d8 100644
--- a/doc/bugs/git-annex_branch_corruption.mdwn
+++ b/doc/bugs/git-annex_branch_corruption.mdwn
@@ -39,6 +39,9 @@ corresponds to its index, and if the branch is at a different ref,
merge it into the index. I am still considering how to do that atomically;
what if a push comes in while git-annex is updating its index?
+> Now git-annex always updates the index with the git-annex branch, which
+> is a slow, but safe way to avoid this problem. [[done]] --[[Joey]]
+
---
## Workaround