On 7/26/2011 8:44 AM, Stefan Sperling wrote:
> On Tue, Jul 26, 2011 at 08:35:31AM -0700, David Chapman wrote:
>> If the processor architectures differ, copying the repositories
>> directly won't work unless changes to the repository format have
>> been made recently. I had a problem when copying a repository from
>> a 64-bit x86 machine to a 32-bit x86 machine, for example. (I think
>> this was in 1.4.x, but it was years ago and I don't remember the
>> details.) Solaris 10 suggests a SPARC machine as the source.
>> Because of the byte ordering difference, I'd expect major trouble
>> when copying a repository directly from a SPARC machine to an x86
> This only applies to repositories using the BDB backend.
> There is no such problem with the FSFS backend because it uses flat files.
The bad copy was a FSFS repository. IIRC, the problem was writing
binary data (e.g. integers) into files. The 64-bit machine wrote 64-bit
integers into some of the files, and the 32-bit machine got confused.
Unless FSFS writes no binary data into its files, or else it is careful
to do so in a platform-independent matter, there will be trouble. Not
being an official Subversion developer, I can't comment on the internals
of the FSFS format, but I would be very surprised if its files were
truly platform-independent because this would slow down repository
operations. Given that there is an official portable transfer file
format (the dump file), I would expect the Subversion developers to use
more-efficient non-portable code within the repository files.
You can certainly try to copy one repository directly from one platform
to the other, then run "svnadmin verify". That *should* tell you if
there was a problem. But I wouldn't trust anything worth money on an
inter-platform repository file copy.
David Chapman dcchapman_at_acm.org
Chapman Consulting -- San Jose, CA
Received on 2011-07-26 18:23:06 CEST