On 03.03.2014 14:03, Philip Martin wrote: > Stefan Fuhrmann <stefan.fuhrm...@wandisco.com> writes: > >> On Sun, Mar 2, 2014 at 2:54 AM, Philip Martin >> <philip.mar...@wandisco.com>wrote: >> >>> There is a problem with the FNV1a checksums in format 7: the on-disk >>> representation for big-endian systems, like SPARC, is different from >>> that of little-endian systems, like x86. Both systems calculate the >>> same checksum value, however the checksum code calls htonl() before >>> returning the value to the caller. On SPARC this has no effect and on >>> x86 it reverses the byte order, changing the value. If we were to write >>> the resulting memory directly to disk as a block of data this would be >>> good because the disk representations would be the same, but that is not >>> what happens. The value is passed to encode_uint() which uses arithmetic >>> to write out a representation of the bytes. Since the htonl() call >>> changes the x86 value this means the disk representation changes. >> Committed with a few addition as r1573371 and r1573375. > This changes the on-disk representation for the unreleased FSFS format 7 > on little-endian systems, that's probably most systems. Anyone with > repositories in this format needs to dump/load.
That's fine ... it'll teach them not to use unreleased versions. :) -- Branko Čibej | Director of Subversion WANdisco // Non-Stop Data e. br...@wandisco.com