I sent this message the user list on Friday, but I believe that may have
been the wrong list. Quick summary, I have a repository that appears to
have had a Delta put in incorrectly. Now the repository is unworkable.
I'd like to be able to fix the repository, but in the case that
subversion has lost my data, I'd like to get the repository working
again.
Thanks,
Ted
-------- Forwarded Message --------
From: Ted Gould <ted@gould.cx>
To: users@subversion.tigris.org
Subject: Delta does not fill the target window
Date: Fri, 19 Aug 2005 13:44:18 -0700
Hello,
I seem to have a corrupt SVN repository. I have checked several backups
and I believe that there is not a disk error, but actually a subversion
error has occurred. Let me show you the simplest way to get this error
in my repository:
$ svnadmin dump -r 671 --incremental /home/ted/.svn_data/PhotosFS/ >
/dev/null
svn: Delta does not fill the target window
I'm using a filesystem backend and Ubuntu Linux. The version was
created in June, so I'm not entirely sure which version of subversion I
was running at that time. I believe it was in the 1.1.x series. I
found this as I now have a new hard drive, and I copied over the
repository and I am trying to create a new working copy. The checkout
fails when trying to restore img_5633.jpg from version 671. I don't
have an original copy of img_5633.jpg to compare against, but I'm
working on getting that.
I believe that there are no other versions that have this error in my
repository. Here is how I checked:
$ perl -e "for (\$i = 672; \$i < 725; \$i++) {system(\"svnadmin dump -r
\$i --incremental /home/ted/.svn_data/PhotosFS/ > /dev/null\");}"
I'm not entirely able to make out the file format in the FSFS repository
files, but I think this is the metadata for the file with the error:
PLAIN
K 13
svn:mime-type
V 24
application/octet-stream
END
ENDREP
id: 7ry.0.r671/469843979
type: file
count: 0
text: 671 125184612 3924753 3922699 9112d223ba3e88b19e846e429f0ef361
props: 671 469843913 53 0 113136892f2137aa0116093a524ade0b
cpath: /Unsorted/65_Alaska/03_DenaliToo/img_5633.jpg
copyroot: 0 /
I believe that one of the numbers on the 'text:' line is probably the
diff size? Which one? I'd like to determine whether the diff is too
small or if the number is.
Also, when I do "svn cat -r 671 img_5633.jpg > img_5633.jpg" besides
getting the delta error, the file contains a JPEG with about 75% of the
picture. Should I assume that the diff is too small then?
I have put the version file on my website, but unfortunately it is
450MB, so it is not easy to download. It is located here for anyone who
would be willing to help with this:
http://gould.cx/corrupt.671.bz2
After all that, I guess my questions are:
1) How do I determine whether the size listing or the size of the delta
are correct?
2) Assuming I give up on ever seeing img_5633.jpg again, how do I get my
repository back online?
3) Is this a bug? Any other data that you need?
Thanks in advance,
Ted
Received on Tue Aug 23 08:53:30 2005