Bazaar dirstate locking (was: lock_* API change)

Robert Collins robertc at robertcollins.net
Mon May 17 03:08:52 BST 2010


So, when doing any sort of commit, bzr prepares the entire commit
*before* looking for a commit message.

Commits can change the working tree - both contents and metadata [in
particular 'missing' files are garbage collected during a commit and
the parent commit list is updated]. So, the lock is held because we
can't update the parent commit list until the commit finishes, we
don't want to have to rescan if someone else did a mutating operation
while the commit was in progress, and we're waiting on the commit
message.

I don't *think* my branch will eat your data; certainly I'd be
impressed if it did *and* managed to get past the cross-checks that
the repository layer enforces. Go nuts testing it ;).

-Rob



More information about the bazaar mailing list