You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by Graham Leggett <mi...@sharp.fm> on 2006/11/17 15:38:46 UTC

Found malformed header block in dumpfile stream

Hi all,

Following the instructions at
http://svnbook.red-bean.com/nightly/en/svn.reposadmin.maint.html#svn.reposadmin.maint.tk.svndumpfilter
I have been trying to split a single repository "fo" like this:

hoops/blah
infinity/foo

In two separate repositories "hoops" and "infinity" like this:

/blah

and

/foo

In other words, I want to strip off the leading directory in the dump file.

Using "svndumpfilter include hoops" and "svndumpfile include infinity", I
am able to split the repository in two, and can successfully load the two
dumpfiles back into new repos.

I then use sed to remove the prefix "hoops/" from the Node-path and
Node-copyfrom-path.

This new dumpfile is now corrupt. Any attempt to load the dump file
results in the following error message the first time a binary file is
included in a commit:

Found malformed header block in dumpfile stream

It seems to make no difference whether I try and remove the directory
prefix, or change the directory prefix - as soon as the directory changes,
the dumpfile is corrupt.

The docs warn that any editing must preserve the line endings. I dumped
the repo on a Solaris system, and did editing using sed on the same
system. Does sed disturb the line endings?

Is there a new way of achieving this that is not yet in the documentation?

Regards,
Graham
--


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

Re: Found malformed header block in dumpfile stream

Posted by Graham Leggett <mi...@sharp.fm>.
On Fri, November 17, 2006 5:38 pm, Graham Leggett wrote:

> I then use sed to remove the prefix "hoops/" from the Node-path and
> Node-copyfrom-path.

Aaargh... sed corrupts the original line endings (this isn't documented
anywhere unless you go into the deep technical details of how sed handles
buffers).

The solution is to use perl -p -i "s/search/replace/" -.

Regards,
Graham
--


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