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

switch with out-of-date slave corrupts working copy

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: trunk
    • Fix Version/s: 1.8.0
    • Component/s: libsvn_ra_serf
    • Labels:

      Description

      I have a master-slave write through proxy and following a commit the slave is
      temporarily out-of-date.  A switch/update of the working copy should fail
      because the committed items in the working copy are newer than the slave
      repository. With serf a switch succeeds and leaves a broken working copy.
      
      Create the master/slave repositories:
      
      svnadmin create master
      svnadmin create slave
      svn mkdir -mm file://`pwd`/master/A
      svn cp -mm file://`pwd`/master/A ^/B
      svn mkdir -mm file://`pwd`/master/B/C
      svnadmin dump -r0:2 master | svnadmin load slave
      
      Setup the working copy corresponding the the slave commit:
      
      svn co http://localhost/master@2 wc
      svn up wc/C
      svn relocate http://localhost/master http://localhost/slave wc
      
      Now attempt to switch using 1.7/neon:
      
      $ svn sw ^/A wc
      svn: E175002: REPORT of '/slave/!svn/me': Could not read chunk size: connection
      was closed by server (http://localhost:8888)
      $ svn info wc/C | grep URL
      URL: http://localhost/slave/B/C
      
      The switch fails because ^/B/C does not yet exist on the slave. This is the
      correct behaviour.  When the slave is up-to-date the switch will complete and
      wc/C will be removed because ^/A/C does not exist.
      
      The same switch using 1.8/serf appears to complete and that is wrong:
      
      $ svn sw ^/A wc
      At revision 2.
      $ svn info wc/C | grep URL
      URL: http://localhost/slave/A/C
      
      Now the working copy is broken because ^/A/C does not exist.
      

        Attachments

          Activity

            People

            • Assignee:
              cmpilato C. Michael Pilato
              Reporter:
              philipm Philip Martin
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: