On Tue, Jan 6, 2015 at 3:25 PM, Stefan Sperling <s...@elego.de> wrote:
> On Tue, Jan 06, 2015 at 01:12:24PM -0000, stef...@apache.org wrote: > > Author: stefan2 > > Date: Tue Jan 6 13:12:23 2015 > > New Revision: 1649797 > > > > URL: http://svn.apache.org/r1649797 > > Log: > > Simplify the r0 template in FSX. Because we treat directories with NULL > > text reps as empty (and do so efficiently), we can simply ommit the text > > rep for the root directory in r0. The remainder are simple strings that > > we can take length info from and that can be composed into r0. > > > > * subversion/libsvn_fs_x/fs_x.c > > (write_revision_zero): Omit /@0 text rep and compose r0 from strings. > > Derive offset info from string lengths. > > > > Modified: > > subversion/trunk/subversion/libsvn_fs_x/fs_x.c > > > > THANK YOU! This is so much more readable :) > You are welcome. The key here was that I could simply omit the complicated part. Is there a regression test which compares the result of this function > with a known template or copy of r0? > Not for FSX - which makes sense because there will be changes to noderev and changed path list representation at some point this year. For FSFS, there are a two tests that will fail due to hard-coded expectations once you omit the directory representation. If I succeed writing a "complete" constructor for FSFS r0, I'll add a regression test to make sure that old servers will be presented with the same r0 contents as always. -- Stefan^2.