On 06.09.2013 17:50, Philip Martin wrote: > Philip Martin <philip.mar...@wandisco.com> writes: > >> What about alter_dir? I think the rule is that alter_dir on a directory >> should occur before add or delete affects the children of the directory. >> There is also a rule: >> >> * - The ancestor of an added, copied-here, moved-here, or >> * modified node may not be deleted. The ancestor may not be moved >> * (instead: perform the move, *then* the edits). > I've been thinking about alter_dir and I see no reason, in the update > editor at least, for a rule that requires alter_dir before adding or > removing children. The Ev2 "once" rule is designed to ensure that Ev2 > actions can be applied to the nodes in the working copy as the actions > are received and that the working copy nodes will always reflect > repository nodes. This doesn't require alter_dir on the parent before > add/delete of children.
Actually, the Once Rule is way more important for server implementations than client implementations. It effectively defines when the server can commit changes to a node and assume no further changes will happen later. That's quite a nice property to have when you're designing caching strategies; especially if writes are orders of magnitude more expensive than reads, which is the norm for distributed databases -- and even for plain vanilla filesystems. -- Brane -- Branko Čibej | Director of Subversion WANdisco // Non-Stop Data e. br...@wandisco.com