[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Bug in dump/restore...

From: Michael Sinz <Michael.Sinz_at_sinz.org>
Date: 2007-02-03 17:45:49 CET

I just ran into this problem and have not looked further than there is a problem.

In the development of Insurrection, I put together a repository with some test
cases that have (and in some cases still do) cause problems for Insurrection.

This includes file names with various characters in them that are not "normal"
(or at least not normal in the sense that they are rarely used in the
traditional sense.)

This repository can be seen at http://svn.sinz.com/svn/example/

The problem is that I was going to use that in testing some code on my local
machine so I was going to do a dump-restore of the repository rather than just
pulling the whole directory down. However, this plan ran into a bit of a snag
when svnadmin load could not process the output of svnadmin dump.

There is what I did:

In a fresh/cleanly built Subversion 1.4.3 setup, I used svnadmin dump to
generate the dump file and then just load that into a new repository as such:

$ svnadmin dump repositories/example >example.dump
$ svnadmin load repositories/new-ex <example.dump

The dump part claimed to be successful, doing all 36 revisions.

The load failed on revision #9 - where some of the special case file names
were added to the repository.

Output (trimmed) is:

      * adding path : trunk/tests/TestCase-~-/test.txt ... done.
svnadmin: Invalid control character '0x7f' in path 'trunk/tests/TestCase--'
      * adding path : trunk/tests/TestCase-- ...

You can see this at: http://svn.sinz.com/svn/example/trunk/tests/TestCase-%7F-/

It seems that this character sequence (0x7F) is not escaped correctly in the
dump and is placed there "in the raw" but then is not correctly handled in
the load process. (I don't blame the load too much since this is a "DEL" code,
but it works find in the bas

Note that the repository does correctly check out (svn co) for any revision on
my Linux box. (I do know it has problems on Windows due to some file names -
see http://svn.sinz.com/svn/example/trunk/tests/Win32-Tests/ for some details
on the problems within Windows...)

I have the example.dump file available at http://svn.sinz.com/example.dump.gz

Trying to load that into a repository reproduces the problem nicely...

Good thing I use FSFS and do the backups via filesystem snapshots.

Michael Sinz                     Technology and Engineering Director/Consultant
"Starting Startups"                                mailto:michael.sinz@sinz.org
My place on the web                            http://www.sinz.org/Michael.Sinz
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sat Feb 3 17:46:43 2007

This is an archived mail posted to the Subversion Dev mailing list.