Ryan Schmidt wrote on Fri, Oct 29, 2010 at 18:26:25 -0500:
> On Oct 29, 2010, at 17:11, Daniel Shahaf wrote:
>
> > Short version: it's a bug in Google's backend, and I can reproduce it
> > with neon but not with serf.
>
> > % $svn log -v -r2967 http://pure-lang.googlecode.com/svn/trunk --config-option servers:global:http-library=serf
> > ------------------------------------------------------------------------
> > % echo $?
> > 0
> > % $svn log -v -r2967 http://pure-lang.googlecode.com/svn/trunk --config-option servers:global:http-library=neon
> > ...
> > subversion/libsvn_ra_neon/util.c:773: (apr_err=160004)
> > svn: Observed changes didn't match count
> > % echo %?
> > 1
> > % ./tools/dev/which-error.py 160004
> > 00160004 SVN_ERR_FS_CORRUPT
> > % $svn --version | head -n2
> > svn, version 1.7.0 (dev build)
> > compiled Oct 27 2010, 15:38:01
> > %
>
> I agree using serf instead of neon makes the error message go away.
> But it also doesn't actually show the list of files affected by the
> commit like it should. See "svn diff --summarize -r2967" for all the
> files that should be shown there.
>
More specifically, it behaves as if there are no relevant revisions to show:
[[[
% $svn log -vr1000000 http://svn.eu.apache.org/repos/asf/subversion
------------------------------------------------------------------------
% $svn log -vr1000000 http://svn.eu.apache.org/repos/asf
------------------------------------------------------------------------
r1000000 | yonik | 2010-09-22 16:48:10 +0200 (Wed, 22 Sep 2010) | 1 line
Changed paths:
M /lucene/dev/trunk/solr/CHANGES.txt
M /lucene/dev/trunk/solr/src/java/org/apache/solr/search/FunctionQParser.java
M /lucene/dev/trunk/solr/src/java/org/apache/solr/search/QueryParsing.java
M /lucene/dev/trunk/solr/src/test/org/apache/solr/search/FunctionQParserTest.java
M /lucene/dev/trunk/solr/src/test/org/apache/solr/search/function/TestFunctionQuery.java
SOLR-2128: full param substitution for function queries
------------------------------------------------------------------------
%
]]]
There shouldn't be any authz restrictions on this repository, right?
> Also, even when I change http-library to serf in the servers config
> file, svnsync still shows the "Observed changes didn't match count"
> error. Does svnsync not use this library setting?
>
Examining the code shows that the apr_hash_t *config is passed down to
svn_ra_open4(), and upon trying I cannot reproduce this:
[[[
% $svnsync init http://localhost:8081/t/{r2,r1}
DBG: ra_loader.c: 493: vtable='Module for accessing a repository via WebDAV protocol using serf.' url='http://localhost:8081/t/r2'
DBG: ra_loader.c: 493: vtable='Module for accessing a repository via WebDAV protocol using serf.' url='http://localhost:8081/t/r1'
Copied properties for revision 0.
% mkdir cfg
% cat > cfg/servers
[global]
http-library = neon
% $svnsync sync http://localhost:8081/t/r2 --config-dir cfg
DBG: ra_loader.c: 493: vtable='Module for accessing a repository via WebDAV protocol using Neon.' url='http://localhost:8081/t/r2'
DBG: ra_loader.c: 493: vtable='Module for accessing a repository via WebDAV protocol using Neon.' url='http://localhost:8081/t/r1'
Transmitting file data ............
Committed revision 1.
Copied properties for revision 1.
]]]
>
> >> I'm unsure what we should try from here. Possibly this error is unique
> >> to Google Code's Subversion backend,
> >
> > The error code confirms your suspicion. Furthermore, the word
> > "Observed" doesn't appear in Subversion's source code.
>
> I suppose we should report the problem to Google Code and hope they
> can uncorrupt the repository somehow?
Yes. SVN_ERR_FS_CORRUPT justifies reporting this to the Google admins.
> Apparently a couple dozen
> subsequent revisions see the same error, through r2993.
>
Received on 2010-10-30 02:02:05 CEST