> -----Original Message-----
> From: Philip Martin [mailto:philip.martin_at_wandisco.com]
> Sent: vrijdag 8 april 2011 11:11
> To: Daniel Shahaf
> Cc: Aleksandr Platonov; dev_at_subversion.apache.org;
> users_at_subversion.apache.org
> Subject: Re: XML parsing and checksum mismatch errors at updates and
> checkouts
>
> Daniel Shahaf <d.s_at_daniel.shahaf.name> writes:
>
> > [ summary for dev@: bug in trunk that doesn't reproduce in 1.6.16;
> > I can reproduce it with trunk/ra_serf but not with trunk/ra_neon ]
> >
> > Aleksandr Platonov wrote on Thu, Apr 07, 2011 at 17:52:13 +0400:
> >>
> >> I build Subversion as a part of TortoiseSVN (see
> >>
> http://tortoisesvn.googlecode.com/svn/trunk/ext/build/subversion.build)
> >>
> >> This problem happens when I try to checkout following url:
> >> http://svn.webdav.org/repos/projects/neon/tags/0.29.5
> >>
> >
> > I can reproduce it (with trunk svn):
> >
> > * Checking out that URL over ra_neon proceeds normally.
> >
> > * Checking out that URL over ra_serf is
> > (a) noticeably slower
> > (b) fails with a checksum error:
> >
> > svn: E200014: Checksum mismatch for '/tmp/svn/neon-0.29.5-via-
> serf/src/ne_auth.c':
> > expected: 4ce0a5989ad4d1b0f7f66ae08c1e05c1
> > actual: 5848237f8c173bd25a118db45cd5574a
>
> I was getting that error last month:
>
> http://svn.haxx.se/dev/archive-2011-03/0745.shtml
>
> What I find is that the problem sometimes appears and sometimes does
> not. It's not predictable either, repeating a failed export/checkout
> will sometimes work and sometimes fail at a different place. That is
> the case when I try that neon URL:
>
> svn: E200014: Checksum mismatch for
> 'subversion/tests/xx/src/ne_openssl.c':
> expected: 3bd789b372ca14793e8ac228cdf43a15
> actual: be72d4221d805da2484b1cd0182b9049
>
> svn: E200014: Checksum mismatch for 'subversion/tests/xx/src/ne_ssl.h':
> expected: 6fbb6c5dda02229623c887a9a08b1533
> actual: 4f0c8e04845b70ebf1e88adbb780a2f0
>
> I suspect the pool/memory handling in serf or libsvn_ra_serf, but I'm
> not certain.
The update in one fetch operation in neon doesn't receive all checksums in
all places. Serf receives a few more, because it uses a request per file.
For trunk I fixed the missing checksums for 1.7, so a trunk server with a
trunk client gets all the checksums editor v1 supports.
But using an older server or an older client will not. In that case you just
get the calculated checksums in your working copy.
I think this server is pre 1.5, but it is certainly possible to get invalid
checksums in a checkout when you encounter the problems mentioned in issue
#3711. But you don't encounter these problems with trunk clients.
Bert
Received on 2011-04-08 11:23:54 CEST