Uploaded image for project: 'Subversion'
  1. Subversion
  2. SVN-842

broken copyID inheritance in fs

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Blocker
    • Resolution: Fixed
    • all
    • 0.14.2
    • libsvn_fs_base
    • 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.
      

      Attachments

        Activity

          People

            Unassigned Unassigned
            sussman Ben Collins-Sussman
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: