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

svn switch may corrupt working copy

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Critical
    • Resolution: Fixed
    • all
    • 1.1.0
    • libsvn_wc
    • None

    Description

      I'm not sure how many elements of this recipe are relevant, and I didn't gather
      data beforehand simply because I didn't think it was going to break :-)
      
      Summary:
      
      * a working copy against svn.collab.net/repos/svn/branches/1.0-stabilization
      * the WC was a non-recursive checkout (just that top-level dir's contents)
      * not sure what version was used for that checkout, but definitely "older"
      (possibly even something like 0.27 or whatever)
      * I tried to switch to branches/1.0.x (using a 0.37 client) and it died
      * realized I forgot -N and tried switching again. died harder.
      * some metadata appears borken
      
      Details:
      
      The first switch run and its failure:
      
      [gstein@buu 1.0-stabilization]$ svn switch
      http://svn.collab.net/repos/svn/branches/1.0.x
      U  Makefile.in
      UU STATUS
      U  build.conf
      subversion/libsvn_wc/lock.c:612: (apr_err=155005)
      svn: Working copy 'www' not locked
      [gstein@buu 1.0-stabilization]$
      
      # note it says it got a copied of STATUS. more on this later.
      
      Seeing that, I looked at the dir, and ran a couple 'svn info' commands:
      
      [gstein@buu 1.0-stabilization]$ svn info .
      Path: .
      URL: http://svn.collab.net/repos/svn/branches
      Repository UUID: 65390229-12b7-0310-b90b-f21a5aa7ec8e
      Revision: 8770
      Node Kind: directory
      Schedule: normal
      Last Changed Author: jszakmeister
      Last Changed Rev: 8153
      Last Changed Date: 2004-01-04 17:28:55 -0800 (Sun, 04 Jan 2004)
      Properties Last Updated: 2004-01-05 00:13:44 -0800 (Mon, 05 Jan 2004)
      
      # note the funky URL above
      
      [gstein@buu 1.0-stabilization]$ svn info autogen.sh
      Path: autogen.sh
      Name: autogen.sh
      URL: http://svn.collab.net/repos/svn/branches/1.0-stabilization/autogen.sh
      Repository UUID: 65390229-12b7-0310-b90b-f21a5aa7ec8e
      Revision: 8154
      Node Kind: file
      Schedule: normal
      Last Changed Author: gstein
      Last Changed Rev: 5638
      Last Changed Date: 2003-04-15 15:19:40 -0700 (Tue, 15 Apr 2003)
      Text Last Updated: 2004-01-05 00:13:42 -0800 (Mon, 05 Jan 2004)
      Properties Last Updated: 2004-01-05 00:13:42 -0800 (Mon, 05 Jan 2004)
      Checksum: ac604f24343b6c6728e777ebcfddf1ef
       
      [gstein@buu 1.0-stabilization]$
      
      # the above URL looks okay. this file wasn't touched.
      
      When I realized the non-recursive WC at this point, I then ran the switch again,
      but using the non-recursive flag:
      
      [gstein@buu 1.0-stabilization]$ svn switch -N
      http://svn.collab.net/repos/svn/branches/1.0.x
      subversion/libsvn_ra_dav/util.c:661: (apr_err=175002)
      svn: REPORT request failed on '/repos/svn/!svn/vcc/default'
      subversion/libsvn_ra_dav/util.c:647: (apr_err=175002)
      svn: The REPORT request returned invalid XML in the response: XML parse error at
      line 1: no element found (/repos/svn/!svn/vcc/default)
      [gstein@buu 1.0-stabilization]$
      
      Another 'svn info' now:
      
      [gstein@buu 1.0-stabilization]$ svn info STATUS
      Path: STATUS
      Name: STATUS
      URL: http://svn.collab.net/repos/svn/branches/STATUS
      Repository UUID: 65390229-12b7-0310-b90b-f21a5aa7ec8e
      Revision: 8770
      Node Kind: file
      Schedule: normal
      Last Changed Author: kfogel
      Last Changed Rev: 8769
      Last Changed Date: 2004-02-19 16:43:13 -0800 (Thu, 19 Feb 2004)
      Text Last Updated: 2004-02-19 17:17:02 -0800 (Thu, 19 Feb 2004)
      Properties Last Updated: 2004-02-19 17:17:02 -0800 (Thu, 19 Feb 2004)
      Checksum: 43fbc95be40b8c7cfba83a19c177be8f
       
      [gstein@buu 1.0-stabilization]$
      
      Note the whacked URL. The contents of STATUS is the one from the 1.0.x branch at
      that time (rev 8769).
      
      I'll leave the WC around in case it might be helpful.
      

      Attachments

        1. 1_1751C1.diff
          5 kB
          Subversion Importer

        Activity

          People

            Unassigned Unassigned
            gstein Greg Stein
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: