[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Error during 'svn export' over http with serf 1.3.1

From: Curt Sellmer <sellmerfud_at_gmail.com>
Date: Wed, 11 Sep 2013 00:32:04 -0500

On Tue, Sep 10, 2013 at 8:39 PM, Ben Reser <ben_at_reser.org> wrote:
> On 9/10/13 2:31 PM, Curt Sellmer wrote:
>> After giving it more time I can now reproduce the problem with both
>> version 1.8.0 and 1.8.3 of the client. And I have now seen the
>> problem with both the older and newer versions of the repository.
>> Very hard to debug as it does not seem to follow any pattern. As I
>> posted earlier, it was working without a hitch for several minutes of
>> testing. Then I went through a period where it failed more than
>> succeeded. A bit later it was failing more sporadically, regardless
>> of which version of the client.
>> I can say this with complete confidence, but it seems that the 1.8.3
>> client fails more with the old repo and the 1.8.0 client fails more
>> with the new repo, but I can verify that the both have failed with
>> both repos.
>>
>> With 1.8.0 I see the following errors (separate runs):
>> svn: E160004: Corrupt node-revision '3-1.0-489.r495/2100'
>>
>> svn: E120104: ra_serf: An error occurred during decompression
>>
>> ------------
>> With 1.8.3 I get the same errors but the reporting for the Corrupt
>> node is different:
>> svn: E175002: Unexpected HTTP status 400 'Bad Request' on
>> '/svn/www/!svn/rvr/496/branches/rails-3.2'
>>
>> svn: E160004: Additional errors:
>> svn: E160004: Corrupt node-revision '3-1.0-489.r495/2100'
>>
>> And again both errors can be seen against both repos.
>> I ran svnadmin verify again against both repos with no errors reported.
>
> Can you please post the output of:
> svn --version --verbose
>
> If that command doesn't show that you're using serf 1.3.1 can you please
> rebuild using the 1.3.1 version of the serf library?
>
> The minimum required serf version is still 1.2.1 in 1.8.0-1.8.3. Serf 1.3.0
> and 1.3.1 have fixed quite a few bugs that impact Subversion users, but they
> also switched to using the SCons build system that may present some trouble for
> people building. Since most of the issues fixed in serf are relatively rare we
> haven't raised the minimum required version.
>
> If after you've upgraded serf to 1.3.1 and if you are still having the issue it
> could still either be a bug in Subversion or a bug in Serf.

It is indeed serf 1.2.1 installed via homebrew. Homebrew does not yet
have 1.3.1
due to the SCons issue that you mentioned. I will try to download and
build serf 1.3.1.

Here is the output of svn --version --verbose
svn, version 1.8.0 (r1490375)
   compiled Aug 27 2013, 18:39:10 on x86_64-apple-darwin12.4.0

Copyright (C) 2013 The Apache Software Foundation.
This software consists of contributions made by many people;
see the NOTICE file for more information.
Subversion is open source software, see http://subversion.apache.org/

The following repository access (RA) modules are available:

* ra_svn : Module for accessing a repository using the svn network protocol.
  - with Cyrus SASL authentication
  - handles 'svn' scheme
* ra_local : Module for accessing a repository on local disk.
  - handles 'file' scheme
* ra_serf : Module for accessing a repository via WebDAV protocol using serf.
  - handles 'http' scheme
  - handles 'https' scheme

System information:

* running on x86_64-apple-darwin12.4.0
  - Mac OS X 10.8.4 Mountain Lion, build 12E55
* linked dependencies:
  - APR 1.4.5 (compiled with 1.4.5)
  - APR-Util 1.3.12 (compiled with 1.3.12)
  - SQLite 3.8.0.2 (compiled with 3.8.0)
* loaded shared libraries:
  - /usr/local/bin/svn (Intel 64-bit)
  - /usr/local/Cellar/subversion/1.8.0/lib/libsvn_client-1.0.dylib
(Intel 64-bit)
  - /usr/local/Cellar/subversion/1.8.0/lib/libsvn_wc-1.0.dylib (Intel 64-bit)
  - /usr/local/Cellar/subversion/1.8.0/lib/libsvn_ra-1.0.dylib (Intel 64-bit)
  - /usr/local/Cellar/subversion/1.8.0/lib/libsvn_diff-1.0.dylib
(Intel 64-bit)
  - /usr/local/Cellar/subversion/1.8.0/lib/libsvn_ra_local-1.0.dylib
(Intel 64-bit)
  - /usr/local/Cellar/subversion/1.8.0/lib/libsvn_repos-1.0.dylib
(Intel 64-bit)
  - /usr/local/Cellar/subversion/1.8.0/lib/libsvn_fs-1.0.dylib (Intel 64-bit)
  - /usr/local/Cellar/subversion/1.8.0/lib/libsvn_fs_fs-1.0.dylib
(Intel 64-bit)
  - /usr/local/Cellar/subversion/1.8.0/lib/libsvn_fs_util-1.0.dylib
(Intel 64-bit)
  - /usr/local/Cellar/subversion/1.8.0/lib/libsvn_ra_svn-1.0.dylib
(Intel 64-bit)
  - /usr/lib/libsasl2.2.dylib (Intel 64-bit)
  - /usr/local/Cellar/subversion/1.8.0/lib/libsvn_ra_serf-1.0.dylib
(Intel 64-bit)
  - /usr/local/lib/libserf-1.0.dylib (Intel 64-bit)
  - /usr/local/Cellar/subversion/1.8.0/lib/libsvn_delta-1.0.dylib
(Intel 64-bit)
  - /usr/local/Cellar/subversion/1.8.0/lib/libsvn_subr-1.0.dylib
(Intel 64-bit)
  - /usr/lib/libexpat.1.dylib (Intel 64-bit)
  - /usr/lib/libz.1.dylib (Intel 64-bit)
  - /usr/local/opt/sqlite/lib/libsqlite3.0.dylib (Intel 64-bit)
  - /usr/lib/libaprutil-1.0.dylib (Intel 64-bit)
  - /usr/lib/libapr-1.0.dylib (Intel 64-bit)
  - /usr/lib/libSystem.B.dylib (Intel 64-bit)
  - /usr/lib/libiconv.2.dylib (Intel 64-bit)
  - /usr/lib/libsqlite3.dylib (Intel 64-bit)
  - /usr/lib/libobjc.A.dylib (Intel 64-bit)
  - /usr/lib/libauto.dylib (Intel 64-bit)
  - /usr/lib/libc++abi.dylib (Intel 64-bit)
  - /usr/lib/libc++.1.dylib (Intel 64-bit)
  - /usr/lib/libDiagnosticMessagesClient.dylib (Intel 64-bit)
  - /usr/lib/libcrypto.0.9.8.dylib (Intel 64-bit)
  - /usr/lib/libssl.0.9.8.dylib (Intel 64-bit)
  - /usr/lib/libresolv.9.dylib (Intel 64-bit)
  - /usr/lib/libicucore.A.dylib (Intel 64-bit)
  - /usr/lib/libstdc++.6.dylib (Intel 64-bit)
  - /usr/lib/libbsm.0.dylib (Intel 64-bit)
  - /usr/lib/libxar.1.dylib (Intel 64-bit)
  - /usr/lib/libpam.2.dylib (Intel 64-bit)
  - /usr/lib/libOpenScriptingUtil.dylib (Intel 64-bit)
  - /usr/lib/libbz2.1.0.dylib (Intel 64-bit)
  - /usr/lib/libxml2.2.dylib (Intel 64-bit)
  - /usr/lib/liblangid.dylib (Intel 64-bit)
  - /usr/lib/libCRFSuite.dylib (Intel 64-bit)
  - /usr/lib/libxslt.1.dylib (Intel 64-bit)
  - /usr/lib/sasl2/apop.so (Intel 64-bit)
  - /usr/lib/sasl2/dhx.so (Intel 64-bit)
  - /usr/lib/sasl2/digestmd5WebDAV.so (Intel 64-bit)
  - /usr/lib/sasl2/libanonymous.2.so

   (Intel 64-bit)
  - /usr/lib/sasl2/libcrammd5.2.so

   (Intel 64-bit)
  - /usr/lib/sasl2/libdigestmd5.2.so

   (Intel 64-bit)
  - /usr/lib/sasl2/libgssapiv2.2.so

   (Intel 64-bit)
  - /usr/lib/sasl2/login.so (Intel 64-bit)
  - /usr/lib/sasl2/libntlm.so (Intel 64-bit)
  - /usr/lib/sasl2/libotp.2.so

   (Intel 64-bit)
  - /usr/lib/sasl2/libplain.2.so

   (Intel 64-bit)
  - /usr/lib/sasl2/libpps.so (Intel 64-bit)
  - /usr/lib/sasl2/mschapv2.so (Intel 64-bit)
  - /usr/lib/sasl2/pwauxprop.so (Intel 64-bit)
  - /usr/lib/sasl2/shadow_auxprop.so (Intel 64-bit)
  - /usr/lib/sasl2/smb_nt.so (Intel 64-bit)
  - /usr/lib/sasl2/smb_ntlmv2.so (Intel 64-bit)

And here from the 1.8.3 client (also using serf 1.2.1)

svn, version 1.8.3 (r1516576)
   compiled Sep 10 2013, 15:36:31 on x86_64-apple-darwin12.4.0

Copyright (C) 2013 The Apache Software Foundation.
This software consists of contributions made by many people;
see the NOTICE file for more information.
Subversion is open source software, see http://subversion.apache.org/

The following repository access (RA) modules are available:

* ra_svn : Module for accessing a repository using the svn network protocol.
  - with Cyrus SASL authentication
  - handles 'svn' scheme
* ra_local : Module for accessing a repository on local disk.
  - handles 'file' scheme
* ra_serf : Module for accessing a repository via WebDAV protocol using serf.
  - using serf 1.2.1
  - handles 'http' scheme
  - handles 'https' scheme

System information:

* running on x86_64-apple-darwin12.4.0
  - Mac OS X 10.8.4 Mountain Lion, build 12E55
* linked dependencies:
  - APR 1.4.5 (compiled with 1.4.5)
  - APR-Util 1.3.12 (compiled with 1.3.12)
  - SQLite 3.8.0.2 (compiled with 3.8.0.2)
* loaded shared libraries:
  - /Users/curt/Downloads/subversion-1.8.3/subversion/svn/.libs/svn
(Intel 64-bit)
  - /Users/curt/Downloads/subversion-1.8.3/subversion/libsvn_client/.libs/libsvn_client-1.0.dylib
  (Intel 64-bit)
  - /Users/curt/Downloads/subversion-1.8.3/subversion/libsvn_wc/.libs/libsvn_wc-1.0.dylib
  (Intel 64-bit)
  - /Users/curt/Downloads/subversion-1.8.3/subversion/libsvn_ra/.libs/libsvn_ra-1.0.dylib
  (Intel 64-bit)
  - /Users/curt/Downloads/subversion-1.8.3/subversion/libsvn_diff/.libs/libsvn_diff-1.0.dylib
  (Intel 64-bit)
  - /Users/curt/Downloads/subversion-1.8.3/subversion/libsvn_ra_local/.libs/libsvn_ra_local-1.0.dylib
  (Intel 64-bit)
  - /Users/curt/Downloads/subversion-1.8.3/subversion/libsvn_repos/.libs/libsvn_repos-1.0.dylib
  (Intel 64-bit)
  - /Users/curt/Downloads/subversion-1.8.3/subversion/libsvn_fs/.libs/libsvn_fs-1.0.dylib
  (Intel 64-bit)
  - /Users/curt/Downloads/subversion-1.8.3/subversion/libsvn_fs_fs/.libs/libsvn_fs_fs-1.0.dylib
  (Intel 64-bit)
  - /Users/curt/Downloads/subversion-1.8.3/subversion/libsvn_fs_util/.libs/libsvn_fs_util-1.0.dylib
  (Intel 64-bit)
  - /Users/curt/Downloads/subversion-1.8.3/subversion/libsvn_ra_svn/.libs/libsvn_ra_svn-1.0.dylib
  (Intel 64-bit)
  - /usr/lib/libsasl2.2.dylib (Intel 64-bit)
  - /Users/curt/Downloads/subversion-1.8.3/subversion/libsvn_ra_serf/.libs/libsvn_ra_serf-1.0.dylib
  (Intel 64-bit)
  - /usr/local/lib/libserf-1.0.dylib (Intel 64-bit)
  - /Users/curt/Downloads/subversion-1.8.3/subversion/libsvn_delta/.libs/libsvn_delta-1.0.dylib
  (Intel 64-bit)
  - /Users/curt/Downloads/subversion-1.8.3/subversion/libsvn_subr/.libs/libsvn_subr-1.0.dylib
  (Intel 64-bit)
  - /usr/lib/libexpat.1.dylib (Intel 64-bit)
  - /usr/lib/libz.1.dylib (Intel 64-bit)
  - /usr/local/opt/sqlite/lib/libsqlite3.0.dylib (Intel 64-bit)
  - /usr/local/lib/libmagic.1.dylib (Intel 64-bit)
  - /usr/lib/libaprutil-1.0.dylib (Intel 64-bit)
  - /usr/lib/libapr-1.0.dylib (Intel 64-bit)
  - /usr/lib/libSystem.B.dylib (Intel 64-bit)
  - /usr/lib/libiconv.2.dylib (Intel 64-bit)
  - /usr/lib/libsqlite3.dylib (Intel 64-bit)
  - /usr/lib/libobjc.A.dylib (Intel 64-bit)
  - /usr/lib/libauto.dylib (Intel 64-bit)
  - /usr/lib/libc++abi.dylib (Intel 64-bit)
  - /usr/lib/libc++.1.dylib (Intel 64-bit)
  - /usr/lib/libDiagnosticMessagesClient.dylib (Intel 64-bit)
  - /usr/lib/libcrypto.0.9.8.dylib (Intel 64-bit)
  - /usr/lib/libssl.0.9.8.dylib (Intel 64-bit)
  - /usr/lib/libresolv.9.dylib (Intel 64-bit)
  - /usr/lib/libicucore.A.dylib (Intel 64-bit)
  - /usr/lib/libstdc++.6.dylib (Intel 64-bit)
  - /usr/lib/libbsm.0.dylib (Intel 64-bit)
  - /usr/lib/libxar.1.dylib (Intel 64-bit)
  - /usr/lib/libpam.2.dylib (Intel 64-bit)
  - /usr/lib/libOpenScriptingUtil.dylib (Intel 64-bit)
  - /usr/lib/libbz2.1.0.dylib (Intel 64-bit)
  - /usr/lib/libxml2.2.dylib (Intel 64-bit)
  - /usr/lib/liblangid.dylib (Intel 64-bit)
  - /usr/lib/libCRFSuite.dylib (Intel 64-bit)
  - /usr/lib/libxslt.1.dylib (Intel 64-bit)
  - /usr/lib/sasl2/apop.so (Intel 64-bit)
  - /usr/lib/sasl2/dhx.so (Intel 64-bit)
  - /usr/lib/sasl2/digestmd5WebDAV.so (Intel 64-bit)
  - /usr/lib/sasl2/libanonymous.2.so

   (Intel 64-bit)
  - /usr/lib/sasl2/libcrammd5.2.so

   (Intel 64-bit)
  - /usr/lib/sasl2/libdigestmd5.2.so

   (Intel 64-bit)
  - /usr/lib/sasl2/libgssapiv2.2.so

   (Intel 64-bit)
  - /usr/lib/sasl2/login.so (Intel 64-bit)
  - /usr/lib/sasl2/libntlm.so (Intel 64-bit)
  - /usr/lib/sasl2/libotp.2.so

   (Intel 64-bit)
  - /usr/lib/sasl2/libplain.2.so

   (Intel 64-bit)
  - /usr/lib/sasl2/libpps.so (Intel 64-bit)
  - /usr/lib/sasl2/mschapv2.so (Intel 64-bit)
  - /usr/lib/sasl2/pwauxprop.so (Intel 64-bit)
  - /usr/lib/sasl2/shadow_auxprop.so (Intel 64-bit)
  - /usr/lib/sasl2/smb_nt.so (Intel 64-bit)
  - /usr/lib/sasl2/smb_ntlmv2.so (Intel 64-bit)

On Tue, Sep 10, 2013 at 8:39 PM, Ben Reser <ben_at_reser.org> wrote:
> On 9/10/13 2:31 PM, Curt Sellmer wrote:
>> After giving it more time I can now reproduce the problem with both
>> version 1.8.0 and 1.8.3 of the client. And I have now seen the
>> problem with both the older and newer versions of the repository.
>> Very hard to debug as it does not seem to follow any pattern. As I
>> posted earlier, it was working without a hitch for several minutes of
>> testing. Then I went through a period where it failed more than
>> succeeded. A bit later it was failing more sporadically, regardless
>> of which version of the client.
>> I can say this with complete confidence, but it seems that the 1.8.3
>> client fails more with the old repo and the 1.8.0 client fails more
>> with the new repo, but I can verify that the both have failed with
>> both repos.
>>
>> With 1.8.0 I see the following errors (separate runs):
>> svn: E160004: Corrupt node-revision '3-1.0-489.r495/2100'
>>
>> svn: E120104: ra_serf: An error occurred during decompression
>>
>> ------------
>> With 1.8.3 I get the same errors but the reporting for the Corrupt
>> node is different:
>> svn: E175002: Unexpected HTTP status 400 'Bad Request' on
>> '/svn/www/!svn/rvr/496/branches/rails-3.2'
>>
>> svn: E160004: Additional errors:
>> svn: E160004: Corrupt node-revision '3-1.0-489.r495/2100'
>>
>> And again both errors can be seen against both repos.
>> I ran svnadmin verify again against both repos with no errors reported.
>
> Can you please post the output of:
> svn --version --verbose
>
> If that command doesn't show that you're using serf 1.3.1 can you please
> rebuild using the 1.3.1 version of the serf library?
>
> The minimum required serf version is still 1.2.1 in 1.8.0-1.8.3. Serf 1.3.0
> and 1.3.1 have fixed quite a few bugs that impact Subversion users, but they
> also switched to using the SCons build system that may present some trouble for
> people building. Since most of the issues fixed in serf are relatively rare we
> haven't raised the minimum required version.
>
> If after you've upgraded serf to 1.3.1 and if you are still having the issue it
> could still either be a bug in Subversion or a bug in Serf.
Received on 2013-09-11 07:32:47 CEST

This is an archived mail posted to the Subversion Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.