Details
-
Bug
-
Status: Closed
-
Blocker
-
Resolution: Fixed
-
all
-
None
-
other
Description
We have a theoretical hole in the way our filesystem causes children to inherit copyids from parents. Here's the explanation: * Say we have a directory D, with a child alpha. alpha has an id of (1, 0, 5). 1 is the node-id, 0 is the copy-id, 5 is the txn-id. * svn cp alpha beta and commit. Now beta is (1, 1, 6), created in rev 6, has a copy id of 1, and the same node-id as alpha. * svn cp D to D2 and commit. Now D2 is (?, 2, 7). D2/alpha starts as (1, 0, 5). D2/beta starts as (1, 1, 6). * But if you now edit both children and commit: they "inherit" copy-id 2 from D2 and also all get txn-id 8 so they end up with 3 identical components. There's no way to tell alpha and beta apart anymore! Bill Tutt thinks that the copyID inheritnance rule needs to get smarter: in the example above, beta should receive copyID 3, as a "nested branch modification". Whatever the case: when this schema bug is fixed, we'll need another repository dump/load to happen. :-( Note that this issue is related to issue #830.