Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-13835

E175002 in org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request

    • Icon: Bug Bug
    • Resolution: Won't Fix
    • Icon: Blocker Blocker
    • subversion-plugin
    • Jenkins ver. 1.460; Subversion Plugin ver. 1.40, 1.39; Windows Server 2003 R2 x64 SP2; Subversion server ver. 1.6.16.

      Updating Subversion Plugin to 1.40 caused multiple bugs. Rolling back to 1.39 resulted to complete inability to perform a checkout. CI server is totally unusable now.

      Issue #1
      After updating to Subversion Plugin to 1.40 (from 1.39) this exception started occurring sometimes (various salves, various jobs):

      Checking out a fresh workspace because there's no workspace at C:_JenkinsCI\workspace\XXX
      Cleaning local Directory .
      Checking out http://oursvnserver/svn/svnLatest/.../XXX
      A ...
      ERROR: Failed to check out http://oursvnserver/svn/svnLatest/.../XXX
      org.tmatesoft.svn.core.SVNException: svn: E175002: REPORT /svn/svnLatest/!svn/vcc/default failed
      at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:304)
      at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:289)
      at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:277)
      at org.tmatesoft.svn.core.internal.io.dav.DAVConnection.performHttpRequest(DAVConnection.java:696)
      at org.tmatesoft.svn.core.internal.io.dav.DAVConnection.doReport(DAVConnection.java:328)
      at org.tmatesoft.svn.core.internal.io.dav.DAVRepository.runReport(DAVRepository.java:1289)
      at org.tmatesoft.svn.core.internal.io.dav.DAVRepository.update(DAVRepository.java:837)
      at org.tmatesoft.svn.core.internal.wc2.ng.SvnNgAbstractUpdate.updateInternal(SvnNgAbstractUpdate.java:216)
      at org.tmatesoft.svn.core.internal.wc2.ng.SvnNgAbstractUpdate.update(SvnNgAbstractUpdate.java:100)
      at org.tmatesoft.svn.core.internal.wc2.ng.SvnNgAbstractUpdate.checkout(SvnNgAbstractUpdate.java:756)
      at org.tmatesoft.svn.core.internal.wc2.ng.SvnNgCheckout.run(SvnNgCheckout.java:14)
      at org.tmatesoft.svn.core.internal.wc2.ng.SvnNgCheckout.run(SvnNgCheckout.java:9)
      at org.tmatesoft.svn.core.internal.wc2.ng.SvnNgOperationRunner.run(SvnNgOperationRunner.java:20)
      at org.tmatesoft.svn.core.internal.wc2.SvnOperationRunner.run(SvnOperationRunner.java:20)
      at org.tmatesoft.svn.core.wc2.SvnOperationFactory.run(SvnOperationFactory.java:1221)
      at org.tmatesoft.svn.core.wc2.SvnOperation.run(SvnOperation.java:292)
      at org.tmatesoft.svn.core.wc.SVNUpdateClient.doCheckout(SVNUpdateClient.java:781)
      at hudson.scm.subversion.CheckoutUpdater$1.perform(CheckoutUpdater.java:85)
      at hudson.scm.subversion.WorkspaceUpdater$UpdateTask.delegateTo(WorkspaceUpdater.java:144)
      at hudson.scm.subversion.WorkspaceUpdater$UpdateTask.delegateTo(WorkspaceUpdater.java:152)
      at hudson.scm.subversion.UpdateUpdater$TaskImpl.perform(UpdateUpdater.java:121)
      at hudson.scm.subversion.WorkspaceUpdater$UpdateTask.delegateTo(WorkspaceUpdater.java:144)
      at hudson.scm.SubversionSCM$CheckOutTask.perform(SubversionSCM.java:789)
      at hudson.scm.SubversionSCM$CheckOutTask.invoke(SubversionSCM.java:770)
      at hudson.scm.SubversionSCM$CheckOutTask.invoke(SubversionSCM.java:753)
      at hudson.FilePath$FileCallableWrapper.call(FilePath.java:2154)
      at hudson.remoting.UserRequest.perform(UserRequest.java:118)
      at hudson.remoting.UserRequest.perform(UserRequest.java:48)
      at hudson.remoting.Request$2.run(Request.java:287)
      at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
      at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
      at java.util.concurrent.FutureTask.run(FutureTask.java:138)
      at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
      at java.lang.Thread.run(Thread.java:662)
      Caused by: svn: E175002: REPORT /svn/svnLatest/!svn/vcc/default failed
      at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:208)
      at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:154)
      at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:97)
      ... 35 more
      FATAL: null
      java.lang.NullPointerException

      Issue #2
      Emulate clean checkout by first deleting unversioned/ignored files, then 'svn update' no longer deletes unversioned files in 1.40.

      Issue #3
      Because of #2 and #3 I've decided to roll back to 1.39. So, I've wiped out all workspaces on all nodes and... 1.39 is no longer able to checkout due to:

      Checking out a fresh workspace because there's no workspace at C:_JenkinsCI\workspace\update_Tools_on_all_nodes
      Cleaning local Directory .
      Checking out http://oursvnserver/svn/svnLatest/Tools
      ERROR: Failed to check out http://oursvnserver/svn/svnLatest/Tools
      org.tmatesoft.svn.core.SVNException: svn: 'C:_JenkinsCI\workspace\update_Tools_on_all_nodes' is not a working copy
      at org.tmatesoft.svn.core.internal.wc.SVNErrorManager.error(SVNErrorManager.java:64)
      at org.tmatesoft.svn.core.internal.wc.admin.SVNAdminAreaFactory.open(SVNAdminAreaFactory.java:197)
      at org.tmatesoft.svn.core.internal.wc.admin.SVNWCAccess.doOpen(SVNWCAccess.java:379)
      at org.tmatesoft.svn.core.internal.wc.admin.SVNWCAccess.open(SVNWCAccess.java:283)
      at org.tmatesoft.svn.core.internal.wc.admin.SVNWCAccess.open(SVNWCAccess.java:276)
      at org.tmatesoft.svn.core.internal.wc.admin.SVNWCAccess.openAnchor(SVNWCAccess.java:171)
      at org.tmatesoft.svn.core.wc.SVNUpdateClient.update(SVNUpdateClient.java:512)
      at org.tmatesoft.svn.core.wc.SVNUpdateClient.doCheckout(SVNUpdateClient.java:942)
      at hudson.scm.subversion.CheckoutUpdater$1.perform(CheckoutUpdater.java:84)
      at hudson.scm.subversion.WorkspaceUpdater$UpdateTask.delegateTo(WorkspaceUpdater.java:136)
      at hudson.scm.subversion.WorkspaceUpdater$UpdateTask.delegateTo(WorkspaceUpdater.java:144)
      at hudson.scm.subversion.UpdateUpdater$TaskImpl.perform(UpdateUpdater.java:121)
      at hudson.scm.subversion.WorkspaceUpdater$UpdateTask.delegateTo(WorkspaceUpdater.java:136)
      at hudson.scm.SubversionSCM$CheckOutTask.perform(SubversionSCM.java:788)
      at hudson.scm.SubversionSCM$CheckOutTask.invoke(SubversionSCM.java:769)
      at hudson.scm.SubversionSCM$CheckOutTask.invoke(SubversionSCM.java:753)
      at hudson.FilePath$FileCallableWrapper.call(FilePath.java:2154)
      at hudson.remoting.UserRequest.perform(UserRequest.java:118)
      at hudson.remoting.UserRequest.perform(UserRequest.java:48)
      at hudson.remoting.Request$2.run(Request.java:287)
      at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
      at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
      at java.util.concurrent.FutureTask.run(FutureTask.java:138)
      at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
      at java.lang.Thread.run(Thread.java:662)
      Caused by: org.tmatesoft.svn.core.SVNErrorMessage: svn: 'C:_JenkinsCI\workspace\update_Tools_on_all_nodes' is not a working copy
      at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:163)
      at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:118)
      at org.tmatesoft.svn.core.internal.wc.admin.SVNAdminAreaFactory.open(SVNAdminAreaFactory.java:192)
      ... 24 more
      FATAL: null
      java.lang.NullPointerException
      at java.util.ArrayList.addAll(Unknown Source)
      at hudson.scm.SubversionSCM.checkout(SubversionSCM.java:743)
      at hudson.scm.SubversionSCM.checkout(SubversionSCM.java:685)
      at hudson.model.AbstractProject.checkout(AbstractProject.java:1218)
      at hudson.model.AbstractBuild$AbstractRunner.checkout(AbstractBuild.java:581)
      at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:470)
      at hudson.model.Run.run(Run.java:1421)
      at hudson.matrix.MatrixBuild.run(MatrixBuild.java:248)
      at hudson.model.ResourceController.execute(ResourceController.java:88)
      at hudson.model.Executor.run(Executor.java:238)
      at hudson.model.OneOffExecutor.run(OneOffExecutor.java:66)

      Needless to say that 'C:_JenkinsCI\workspace\update_Tools_on_all_nodes' didn't even exist before checkout.
      This happens on both slave and master.

          [JENKINS-13835] E175002 in org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request

          pancake created issue -
          pancake made changes -
          Environment Original: Jenkins ver. 1.460; Subversion Plugin 1.40, 1.39; Windows Server 2003 R2 x64 SP2 New: Jenkins ver. 1.460; Subversion Plugin ver. 1.40, 1.39; Windows Server 2003 R2 x64 SP2; Subversion server ver. 1.6.16.

          pancake added a comment -

          Found workaround for Issue #3: set svn wc format to 1.6 in Jenkins configuration.
          After downgrading Subversion Plugin value "1.4" was shown for svn wc format on Jenkins configuration page.
          Note I've set it to 1.7 after uprading to Subversion Plugin ver. 1.40.
          I.e. either actual value "1.7" of wc format was rendered (and treated) incorrectly or Subversion Plugin ver. 1.39 can't work with wc format 1.4.

          I'm now decreasing issue priority to "blocker" -> "major" since our CI server can function properly due to the workaround. The issues #1 and #2 still prevent us from upgrading to Subversion Plugin ver. 1.40.

          pancake added a comment - Found workaround for Issue #3 : set svn wc format to 1.6 in Jenkins configuration. After downgrading Subversion Plugin value "1.4" was shown for svn wc format on Jenkins configuration page. Note I've set it to 1.7 after uprading to Subversion Plugin ver. 1.40. I.e. either actual value "1.7" of wc format was rendered (and treated) incorrectly or Subversion Plugin ver. 1.39 can't work with wc format 1.4. I'm now decreasing issue priority to "blocker" -> "major" since our CI server can function properly due to the workaround. The issues #1 and #2 still prevent us from upgrading to Subversion Plugin ver. 1.40.
          pancake made changes -
          Priority Original: Blocker [ 1 ] New: Major [ 3 ]
          Marcel Beister made changes -
          Link New: This issue is related to JENKINS-13844 [ JENKINS-13844 ]
          christopheM made changes -
          Link New: This issue is related to JENKINS-13913 [ JENKINS-13913 ]

          aristedes added a comment -

          I can report a very similar issue. The Subversion 1.7.4 server. 1.40 svn jenkins plugin. Pre-existing 1.6 workspace, and Jenkins set to use a 1.7 checkout format. The problem goes away if you choose 1.6 as the workspace format.

          ERROR: Failed to update https://acme.com/ish/angel/trunk
          org.tmatesoft.svn.core.SVNException: svn: E175002: REPORT /ish/!svn/vcc/default failed
          	at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:304)
          	at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:289)
          	at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:277)
          	at org.tmatesoft.svn.core.internal.io.dav.DAVConnection.performHttpRequest(DAVConnection.java:696)
          	at org.tmatesoft.svn.core.internal.io.dav.DAVConnection.doReport(DAVConnection.java:328)
          	at org.tmatesoft.svn.core.internal.io.dav.DAVRepository.runReport(DAVRepository.java:1289)
          	at org.tmatesoft.svn.core.internal.io.dav.DAVRepository.update(DAVRepository.java:837)
          	at org.tmatesoft.svn.core.internal.wc16.SVNUpdateClient16.update(SVNUpdateClient16.java:557)
          	at org.tmatesoft.svn.core.internal.wc16.SVNUpdateClient16.doUpdate(SVNUpdateClient16.java:414)
          	at org.tmatesoft.svn.core.internal.wc16.SVNUpdateClient16.doUpdate(SVNUpdateClient16.java:324)
          	at org.tmatesoft.svn.core.internal.wc2.old.SvnOldUpdate.run(SvnOldUpdate.java:27)
          	at org.tmatesoft.svn.core.internal.wc2.old.SvnOldUpdate.run(SvnOldUpdate.java:11)
          	at org.tmatesoft.svn.core.internal.wc2.SvnOperationRunner.run(SvnOperationRunner.java:20)
          	at org.tmatesoft.svn.core.wc2.SvnOperationFactory.run(SvnOperationFactory.java:1221)
          	at org.tmatesoft.svn.core.wc2.SvnOperation.run(SvnOperation.java:292)
          	at org.tmatesoft.svn.core.wc.SVNUpdateClient.doUpdate(SVNUpdateClient.java:315)
          	at org.tmatesoft.svn.core.wc.SVNUpdateClient.doUpdate(SVNUpdateClient.java:295)
          	at org.tmatesoft.svn.core.wc.SVNUpdateClient.doUpdate(SVNUpdateClient.java:391)
          	at hudson.scm.subversion.UpdateUpdater$TaskImpl.perform(UpdateUpdater.java:136)
          	at hudson.scm.subversion.WorkspaceUpdater$UpdateTask.delegateTo(WorkspaceUpdater.java:144)
          	at hudson.scm.SubversionSCM$CheckOutTask.perform(SubversionSCM.java:789)
          	at hudson.scm.SubversionSCM$CheckOutTask.invoke(SubversionSCM.java:770)
          	at hudson.scm.SubversionSCM$CheckOutTask.invoke(SubversionSCM.java:753)
          	at hudson.FilePath$FileCallableWrapper.call(FilePath.java:2154)
          	at hudson.remoting.UserRequest.perform(UserRequest.java:118)
          	at hudson.remoting.UserRequest.perform(UserRequest.java:48)
          	at hudson.remoting.Request$2.run(Request.java:287)
          	at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
          	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
          	at java.util.concurrent.FutureTask.run(FutureTask.java:138)
          	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
          	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
          	at java.lang.Thread.run(Thread.java:680)
          Caused by: svn: E175002: REPORT /ish/!svn/vcc/default failed
          	at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:208)
          	at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:154)
          	at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:97)
          	... 33 more
          
          

          Looks like it tries to upgrade the workspace and fails.

          aristedes added a comment - I can report a very similar issue. The Subversion 1.7.4 server. 1.40 svn jenkins plugin. Pre-existing 1.6 workspace, and Jenkins set to use a 1.7 checkout format. The problem goes away if you choose 1.6 as the workspace format. ERROR: Failed to update https: //acme.com/ish/angel/trunk org.tmatesoft.svn.core.SVNException: svn: E175002: REPORT /ish/!svn/vcc/ default failed at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:304) at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:289) at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:277) at org.tmatesoft.svn.core.internal.io.dav.DAVConnection.performHttpRequest(DAVConnection.java:696) at org.tmatesoft.svn.core.internal.io.dav.DAVConnection.doReport(DAVConnection.java:328) at org.tmatesoft.svn.core.internal.io.dav.DAVRepository.runReport(DAVRepository.java:1289) at org.tmatesoft.svn.core.internal.io.dav.DAVRepository.update(DAVRepository.java:837) at org.tmatesoft.svn.core.internal.wc16.SVNUpdateClient16.update(SVNUpdateClient16.java:557) at org.tmatesoft.svn.core.internal.wc16.SVNUpdateClient16.doUpdate(SVNUpdateClient16.java:414) at org.tmatesoft.svn.core.internal.wc16.SVNUpdateClient16.doUpdate(SVNUpdateClient16.java:324) at org.tmatesoft.svn.core.internal.wc2.old.SvnOldUpdate.run(SvnOldUpdate.java:27) at org.tmatesoft.svn.core.internal.wc2.old.SvnOldUpdate.run(SvnOldUpdate.java:11) at org.tmatesoft.svn.core.internal.wc2.SvnOperationRunner.run(SvnOperationRunner.java:20) at org.tmatesoft.svn.core.wc2.SvnOperationFactory.run(SvnOperationFactory.java:1221) at org.tmatesoft.svn.core.wc2.SvnOperation.run(SvnOperation.java:292) at org.tmatesoft.svn.core.wc.SVNUpdateClient.doUpdate(SVNUpdateClient.java:315) at org.tmatesoft.svn.core.wc.SVNUpdateClient.doUpdate(SVNUpdateClient.java:295) at org.tmatesoft.svn.core.wc.SVNUpdateClient.doUpdate(SVNUpdateClient.java:391) at hudson.scm.subversion.UpdateUpdater$TaskImpl.perform(UpdateUpdater.java:136) at hudson.scm.subversion.WorkspaceUpdater$UpdateTask.delegateTo(WorkspaceUpdater.java:144) at hudson.scm.SubversionSCM$CheckOutTask.perform(SubversionSCM.java:789) at hudson.scm.SubversionSCM$CheckOutTask.invoke(SubversionSCM.java:770) at hudson.scm.SubversionSCM$CheckOutTask.invoke(SubversionSCM.java:753) at hudson.FilePath$FileCallableWrapper.call(FilePath.java:2154) at hudson.remoting.UserRequest.perform(UserRequest.java:118) at hudson.remoting.UserRequest.perform(UserRequest.java:48) at hudson.remoting.Request$2.run(Request.java:287) at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang. Thread .run( Thread .java:680) Caused by: svn: E175002: REPORT /ish/!svn/vcc/ default failed at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:208) at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:154) at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:97) ... 33 more Looks like it tries to upgrade the workspace and fails.

          Same here with existing repositories in 1.5 format.

          Julien Nicoulaud added a comment - Same here with existing repositories in 1.5 format.

          This looks to be an encoding issue with your log messages on your subversion server.

          Log messages have always been required to be UTF-8. Only recent releases of Subversion started enforcing it better at all layers. The SVN command line client always handled this, but the lower level API's (and I suspect the SVNKit library that Jenkins uses) did not so if you used a different client (i.e. committing from TortoiseSVN or eclipse, etc) it was possible to get non-UTF-8 data into the repository.

          You can use svnsync from SVN 1.7 to synch the existing repository to a new repository using the --source-prop-encoding ARG option. This will convert the existing revprops from the specified encoding to UTF-8 as part of synching to a new repository. When the process is done, you can switch in the new repository for the old one to fix your repository.

          Stephen Connolly added a comment - This looks to be an encoding issue with your log messages on your subversion server. Log messages have always been required to be UTF-8. Only recent releases of Subversion started enforcing it better at all layers. The SVN command line client always handled this, but the lower level API's (and I suspect the SVNKit library that Jenkins uses) did not so if you used a different client (i.e. committing from TortoiseSVN or eclipse, etc) it was possible to get non-UTF-8 data into the repository. You can use svnsync from SVN 1.7 to synch the existing repository to a new repository using the --source-prop-encoding ARG option. This will convert the existing revprops from the specified encoding to UTF-8 as part of synching to a new repository. When the process is done, you can switch in the new repository for the old one to fix your repository.

          Luca Orlandi added a comment - - edited

          Same issue here.
          I've also downgraded to jenkins 1.464 and subversion plugin 1.34 with NO SUCCESS at all.
          I cannot upgrade the server format as suggested by @stephenconnolly comment because of a very large 1.6 repository

          It's urgent for me to find a robust workaround (maybe something on apache encoding?).

          Luca Orlandi added a comment - - edited Same issue here. I've also downgraded to jenkins 1.464 and subversion plugin 1.34 with NO SUCCESS at all. I cannot upgrade the server format as suggested by @stephenconnolly comment because of a very large 1.6 repository It's urgent for me to find a robust workaround (maybe something on apache encoding?).

            recena Manuel Recena Soto
            pancake pancake
            Votes:
            50 Vote for this issue
            Watchers:
            58 Start watching this issue

              Created:
              Updated:
              Resolved: