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

Allow transaction roots as copy sources in the filesystem.

    XMLWordPrintableJSON

Details

    • New Feature
    • Status: Closed
    • Major
    • Resolution: Duplicate
    • all
    • unscheduled
    • libsvn_fs_base
    • None

    Description

      Note: this can probably be post 1.0, but just entering this as an FYI.
      
      Ben was mentioning to me the deal about ensuring higher RevisionIDs 
      mean newer timestamp values. Apparently doing this in cvs2svn is 
      fairly complicated. (I took Ben and Ben's report of Greg saying this was 
      hard/maybe impossible as true.) 
      
      It'd be nice to insert every revision in time stamp order. 
      
      I looked at the schema wondering if it was possible for cvs2svn to 
      create a bunch of pending transactions and commit all of the 
      transactions at once in correct time stamp order.
      
      The only thing that blocked us from doing this was the Copy table. 
      Specifically, SRC-Rev-ID. 
      
      If we changed SRC-Rev-ID to SRC-Txn-ID this problem would go away.
      
      If we did this, we'd need to add additional logic at commit time to 
      verify that any new Copy rows being committed in the Transaction 
      we're trying to commit didn't reference a SRC-Txn-ID that hasn't been 
      committed yet. This is necessary to prevent odd Copy records from 
      getting inserted.
      
      We can get away with this because the Transaction table should always 
      contain a pointer to the root node of the transaction. This is 
      semantically equivalent to the existing SRC-Rev-ID.
      
      Additionally, it'd make changing to handle importing a pending 
      transaction from a distributed repository for examination, conflict 
      resolution, etc simple since branches/file renames need to be 
      importable.
      
      Definately not necessary for 1.0, but it does allow cvs2svn to commit 
      everything in timestamp order.
      

      Original issue reported by rassilon

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              subversion-importer Subversion Importer
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: