You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by Bruce Korb <bk...@gnu.org> on 2006/05/21 18:09:36 UTC

SVN: Checksum mismatch problem

CF: http://gcc.gnu.org/ml/gcc/2005-11/msg00950.html
    http://gcc.gnu.org/ml/gcc/2005-11/msg00951.html

Since Google did not yield an answer, I'm re-asking the question,
though with a slightly different file.  Help, please, from anybody
knowing how to work around the issue.  Thank you! - Bruce


$ sh contrib/gcc_update
Updating SVN tree
svn: Checksum mismatch for 
'gcc/ada/.svn/text-base/sem_ch8.adb.svn-base'; expected: 
'bf7be49fb4a377ca037b7c6fe02b1d5a', actual: 
'7160397e628c7b3dba95c55c0e50bbae'
Adjusting file timestamps
SVN update of full tree failed.

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: SVN: Checksum mismatch problem

Posted by Daniel Berlin <db...@dberlin.org>.
Bruce Korb wrote:
> CF: http://gcc.gnu.org/ml/gcc/2005-11/msg00950.html
>     http://gcc.gnu.org/ml/gcc/2005-11/msg00951.html
> 
> Since Google did not yield an answer, I'm re-asking the question,
> though with a slightly different file.  Help, please, from anybody
> knowing how to work around the issue.  Thank you! - Bruce
> 
> 
> $ sh contrib/gcc_update
> Updating SVN tree
> svn: Checksum mismatch for 
> 'gcc/ada/.svn/text-base/sem_ch8.adb.svn-base'; expected: 
> 'bf7be49fb4a377ca037b7c6fe02b1d5a', actual: 
> '7160397e628c7b3dba95c55c0e50bbae'
> Adjusting file timestamps
> SVN update of full tree failed.
> 


Generally, these are hardware errors.
However, in some small number of cases, it's an svn bug (if the file
looks just fine, it's usually an svn bug of some sort)

What version of svn, what platform, etc.

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: rsync and .svn directory hiding

Posted by Patrick Johnson <PJ...@TechnoScope.com>.
At 2:12 PM -0600 5/22/06, Bob Proulx wrote:
>differences I wanted to say thanks.  But if GoLive is having this
>problem I would have thought it would be better to svn export the
>directory instead.  Or I would use rsync to copy from a staging
>location into the live location to create a mirror without the .svn
>files.
>
>  rsync -n -a --delete --exclude .svn --delete-excluded /from/here /to/there

Thanks Bob. I hadn't though of rsync.  That may come in handy.

The problem with export or rsync for the normal workflow case is that GoLive is also the editor for the html and php files (in addition to providing site management functions like what pages link to this file, what files have errors, update changed files on the web server, etc.)  GoLive is the IDE I am working in much of the time, and, for the most part, GoLive ignores the .svn directories, and can coexist peacefully with Subversion, since it incrementally tracks the changes it is making to files and never rescans the directory or notices the .svn stuff.  However, if it gets out of sync with the directory (e.g. if you manipulate files from outside the IDE, which is sometimes necessary) you need to do a "refresh" to rescan all of the files.  That's where the .svn directories cause the trouble.

The Perl script is for temporarily "stashing" the .svn stuff where GoLive can't see it.  The directories are only stashed for the one operation, then quickly replaced after the GoLive tree scan.  It would work for bulk file edits, or anything else that scans the directory tree where you want to temporarily hide the .svn info.  It's quicker (and possibly riskier) than an rsync or export since it only renames the .svn directories to a parallel tree and doesn't have to copy any files.

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: SVN: Checksum mismatch problem

Posted by Bob Proulx <bo...@proulx.com>.
Patrick Johnson wrote:
> I found that this issue crops up in a few other places as well, such
> as IDEs that want to parse the source directory tree and get
> confused or bogged down by the .svn directories.

Personally I like the .svn (and RCS, CVS, {arch}, .git) directories to
be in the working copy.  This makes the working copy transportable.  I
have worked with other systems that put those in the home directory
and personally have had problems with them.  I really dislike a shared
config file or a shared repository in my home directory.  I really
like the distributed .svn directories much better.

> I'm not ready to make the move to svk, so I wrote a little Perl
> script, "adirstasher" to temporarily move the administrative .svn
> directories out of the way, then move them back.
> 
> http://svn.haxx.se/users/archive-2006-05/0739.shtml
> 
> It seems risky, but I have used it a couple of times without disaster.

Thanks for sharing your perl script.  Regardless of philosophical
differences I wanted to say thanks.  But if GoLive is having this
problem I would have thought it would be better to svn export the
directory instead.  Or I would use rsync to copy from a staging
location into the live location to create a mirror without the .svn
files.

  rsync -n -a --delete --exclude .svn --delete-excluded /from/here /to/there

Thanks
Bob

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: SVN: Checksum mismatch problem

Posted by Patrick Johnson <PJ...@TechnoScope.com>.
At 8:50 PM -0600 5/21/06, Bob Proulx wrote:
>But now I find that I need to be aware that in the .svn directory is a
>pristine copy of the same file.

I found that this issue crops up in a few other places as well, such as IDEs that want to parse the source directory tree and get confused or bogged down by the .svn directories.

I'm not ready to make the move to svk, so I wrote a little Perl script, "adirstasher" to temporarily move the administrative .svn directories out of the way, then move them back.

http://svn.haxx.se/users/archive-2006-05/0739.shtml

It seems risky, but I have used it a couple of times without disaster.

Patrick

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: SVN: Checksum mismatch problem

Posted by Russ Allbery <rr...@stanford.edu>.
Bruce Korb <bk...@gnu.org> writes:

> I do that also, but I am also careful to prune repository
> directories (CVS, .svn or SCCS even).  I rather doubt it is my RAM,
> BTW.  Perhaps a disk sector, but I'll never know now.  (Were it RAM,
> the failure would be random and not just the one file.)  The original
> data were rm-ed and replaced with a new pull of the Ada code.

Yup, I've seen change of capitalization of a single letter in files due to
bad disk sectors before, even on relatively modern hardware.  It's a
single bit error, so it's an explainable failure mode.

-- 
Russ Allbery (rra@stanford.edu)             <http://www.eyrie.org/~eagle/>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: SVN: Checksum mismatch problem

Posted by Bruce Korb <bk...@gnu.org>.
Hi Bob,

On 5/21/06, Bob Proulx <bo...@proulx.com> wrote:
> Bruce Korb wrote:
> > Philip Martin wrote:
> > >The capital 'I' in 'Is' looks wrong.
> > ...
> > That's what I wanted:  a nice, simple answer that was short of re-pulling
> > the entire repository. [...]
>
> Sometimes I run commands to walk down the filesystem and do things to
> the files in them.  With CVS this was never a problem, never a false
> hit, because CVS did not keep a pristine copy of the database around.

Except sometimes in the CVS/Base directory.  :)

I do that also, but I am also careful to prune repository
directories (CVS, .svn or SCCS even).  I rather doubt it is my RAM,
BTW.  Perhaps a disk sector, but I'll never know now.  (Were it RAM,
the failure would be random and not just the one file.)  The original
data were rm-ed and replaced with a new pull of the Ada code.

> I have no idea if this is possibly the type of thing that happened to
> you or not.

In any event, since my GCC work is constrained to fixincludes, I have
no need of recursive mass edits, so I haven't used the technique with
that code.  Especially one that would miscapitalize a sentence.  :)

Thanks - Bruce

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org


Re: SVN: Checksum mismatch problem

Posted by Bob Proulx <bo...@proulx.com>.
David M. Jones wrote:
> > Example:
> >   find . -name 'foo*' -print0 | xargs -r0 sed --in-place 's/foo/bar/g'
> 
> How about
> 
>     find . -name .svn -prune -o -name 'foo*' -print
> 
> That should ignore all .svn directories and their contents.

Yes.  If you know that in the .svn directory there are pristine copies
of files then you can take steps to avoid walking into it, such as the
fine example of pruning that you suggest.

Bob

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: SVN: Checksum mismatch problem

Posted by "David M. Jones" <dm...@ams.org>.
> Date: Sun, 21 May 2006 20:50:02 -0600
> From: bob@proulx.com (Bob Proulx)

> Example:
> 
>   find . -name foo -print0 | xargs -r0 sed --in-place 's/foo/bar/g'
> 
> But now I find that I need to be aware that in the .svn directory is a
> pristine copy of the same file.  The above won't match because the
> pristine copy always has .svn-base appended to the end.  But the
> following would match and would edit both the working copy and the
> pristine copy in the .svn directory.
> 
>   find . -name 'foo*' -print0 | xargs -r0 sed --in-place 's/foo/bar/g'

How about

    find . -name .svn -prune -o -name 'foo*' -print

That should ignore all .svn directories and their contents.

David.

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: SVN: Checksum mismatch problem

Posted by Bob Proulx <bo...@proulx.com>.
Bruce Korb wrote:
> Philip Martin wrote:
> >The capital 'I' in 'Is' looks wrong.
> ...
> That's what I wanted:  a nice, simple answer that was short of re-pulling
> the entire repository.  ``delete the entire ada sub-dir from the
> working copy and update will download it again.''  Thank you!
> (I don't want to go chase how the capitalization got to be wrong.
> I certainly don't go fiddling with stuff in the Ada directory.
> Someone did something somewhere.)  Cheers - Bruce

Sometimes I run commands to walk down the filesystem and do things to
the files in them.  With CVS this was never a problem, never a false
hit, because CVS did not keep a pristine copy of the database around.

Example:

  find . -name foo -print0 | xargs -r0 sed --in-place 's/foo/bar/g'

But now I find that I need to be aware that in the .svn directory is a
pristine copy of the same file.  The above won't match because the
pristine copy always has .svn-base appended to the end.  But the
following would match and would edit both the working copy and the
pristine copy in the .svn directory.

  find . -name 'foo*' -print0 | xargs -r0 sed --in-place 's/foo/bar/g'

I have no idea if this is possibly the type of thing that happened to
you or not.  But I thought I would mention it because it seems
plausible.

Bob

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: SVN: Checksum mismatch problem

Posted by Bruce Korb <bk...@gnu.org>.
Philip Martin wrote:
> Bruce Korb <bk...@gnu.org> writes:
> 
> 
>>   --  declaration. It Is important that all references to the type point to
> 
> 
> The capital 'I' in 'Is' looks wrong.
> 
> $ svn cat -r108304 svn://gcc.gnu.org/svn/gcc/trunk/gcc/ada/sem_ch8.adb > foo
> $ md5sum foo
> bf7be49fb4a377ca037b7c6fe02b1d5a  foo
> $ sed 's/is import/Is import/' foo | md5sum
> 7160397e628c7b3dba95c55c0e50bbae  -
> 
> Those are the two checksums in your original error message.  One way
> to fix your working copy is to edit the .svn-base file and fix the
> corruption.  Another way is to delete the entire ada sub-dir from the
> working copy and update will download it again.
> 

Hi Philip,

That's what I wanted:  a nice, simple answer that was short of re-pulling
the entire repository.  ``delete the entire ada sub-dir from the
working copy and update will download it again.''  Thank you!
(I don't want to go chase how the capitalization got to be wrong.
I certainly don't go fiddling with stuff in the Ada directory.
Someone did something somewhere.)  Cheers - Bruce

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: SVN: Checksum mismatch problem

Posted by Philip Martin <ph...@codematters.co.uk>.
Bruce Korb <bk...@gnu.org> writes:

>    --  declaration. It Is important that all references to the type point to

The capital 'I' in 'Is' looks wrong.

$ svn cat -r108304 svn://gcc.gnu.org/svn/gcc/trunk/gcc/ada/sem_ch8.adb > foo
$ md5sum foo
bf7be49fb4a377ca037b7c6fe02b1d5a  foo
$ sed 's/is import/Is import/' foo | md5sum
7160397e628c7b3dba95c55c0e50bbae  -

Those are the two checksums in your original error message.  One way
to fix your working copy is to edit the .svn-base file and fix the
corruption.  Another way is to delete the entire ada sub-dir from the
working copy and update will download it again.

-- 
Philip Martin

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: SVN: Checksum mismatch problem

Posted by Bruce Korb <bk...@gnu.org>.
Florian Weimer wrote:
> * Bruce Korb:
> 
> 
>>CF: http://gcc.gnu.org/ml/gcc/2005-11/msg00950.html
>>   http://gcc.gnu.org/ml/gcc/2005-11/msg00951.html
>>
>>Since Google did not yield an answer, I'm re-asking the question,
>>though with a slightly different file.  Help, please, from anybody
>>knowing how to work around the issue.  Thank you! - Bruce
> 
> 
> Could you send us a copy of the
> gcc/ada/.svn/text-base/sem_ch8.adb.svn-base file, preferably in a way
> that is fully binary transparent?

Hopefully, that is the way Thunderbird will MIME encode it.  Attached.
Leastwise, the one from my home box is attached.  Thanks - Bruce


Re: SVN: Checksum mismatch problem

Posted by Florian Weimer <fw...@deneb.enyo.de>.
* Bruce Korb:

> CF: http://gcc.gnu.org/ml/gcc/2005-11/msg00950.html
>    http://gcc.gnu.org/ml/gcc/2005-11/msg00951.html
>
> Since Google did not yield an answer, I'm re-asking the question,
> though with a slightly different file.  Help, please, from anybody
> knowing how to work around the issue.  Thank you! - Bruce

Could you send us a copy of the
gcc/ada/.svn/text-base/sem_ch8.adb.svn-base file, preferably in a way
that is fully binary transparent?

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org