lock free dirstate
Robert Collins
robertc at robertcollins.net
Mon Sep 28 10:07:18 BST 2009
I plan to do an experiment this week on an OSLock free dirstate - this
should work more robustly on NFS, AFP etc. I've tagged the bugs that
stood out as being fixed by this as 'dirstate2' in launchpad.
The design I plan to use is the one that I've spoken about before:
- write a collection of dirstate files named by hash (like we do
in .bzr/repository)
- have old dirstate files attempt to rm but handle them being open by
other processes by leaving them behind
- have a near-atomic pointer file in the root that is updated by the
standard foo.tmp, mv foo foo.old, mv foo.tmp foo, rm foo.old code
I figure this should be pretty straight forward to hook in. It will mean
a new tree format, but if successful will allow 'bzr diff' from a commit
editor to work and so forth.
If there are any objections to this design, please speak up now!
-Rob
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: This is a digitally signed message part
Url : https://lists.ubuntu.com/archives/bazaar/attachments/20090928/79cf4328/attachment-0002.pgp
More information about the bazaar
mailing list