There is something in revisions before and after corrupted one:

% strings repo/db/revs/7/7448 | tail -1
2244140591 fa0c1a8229575b0ce27ef0c5a8b898b4 2244140730
7d861109493094a15013c7ea105e33a1W
% strings repo/db/revs/7/7450 | tail -1
51995736 59c66b6d95365e6bdb4be4ec3b2d3a34 51995799
72059006b7c456b03efb7f07e0557795S

But on corrupted (actual number of corrupted revision is 7449) it doesn't
give anything meaningful

% strings repo/db/revs/7/7449 | tail -1
Y$Q8

% < repo/db/revs/7/7449 xxd -s Y$Q8 -l 9
00000000: 4445 4c54 410a 5356 4e                   DELTA.SVN

On Sun, Jun 19, 2022 at 12:19 PM Daniel Shahaf <d...@daniel.shahaf.name>
wrote:

> Dmitry Minsky wrote on Sat, 18 Jun 2022 17:16 +00:00:
> > I have a pretty old repository and now going to move it to another
> machine.
> > When I start the dump process I stumbled upon this error in one of the
> old
> > revisions:
> >
> > svnadmin: E16004: Invalid r4422 footer
> >
>
> It's actually E160004.  (Just saying this so search engines will find this
> thread.)
>
> > I now workaround with a skip over corrupted revision and continue
> > --incremental dump. But like every 10-50 revisions I still get this error
> > because I suppose there are files that depend on something from this old
> > corrupted revision. The question is, how and where to look in this
> revision
> > so I could manually fix the error by changing some files or checksum or
> > anything?
>
> At the very end of the file, like the following but on db/revs/4/4422:
>
> % strings db/revs/0/1 | tail -1
> 417 b4657c89ff644471b6760fd6389d253c 445 ea755737e485eeb03c0012e5d6bc1b49I
> % < r/db/revs/0/1 xxd -s 417 -l 9
> 000001a1: 4c32 502d 494e 4445 58                   L2P-INDEX
> % < r/db/revs/0/1 xxd -s 445 -l 9
> 000001bd: 5032 4c2d 494e 4445 58                   P2L-INDEX
> %
>
> (The first command might pick up some of the P2L/L2P data too?  I don't
> remember whether it's guaranteed that there'll be a non-printable
> character between that and the last line.)
>
>

Reply via email to