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

Re: Berkeley's db_dump is your friend. Your *best* friend.

From: Karl Fogel <kfogel_at_galois.collab.net>
Date: 2001-03-02 20:40:43 CET

Jim Blandy <jimb@zwingli.cygnus.com> writes:
> If you actually print that out without the backslashing (i.e. \0a is a
> newline), you'll get an indented view of the skel. However, I'm
> thinking the indentation probably isn't worth it. Wouldn't you rather
> see
>
> (fulltext ((dir ()) ()))
>
> ?

Yeah, I think that might be easier to debug, since I doubt anyone is
going to take the trouble to translate the newlines correctly
anyway. :-)

And personally, I usually verify s-expression boundaries by using sexp
motion commands in my editor; the indentation would be a further clue,
but not really necessary -- if I were debugging something, I'd
probably be looking *very* hard at the exact sexps, independent of
indentation.

-K

> Ben Collins-Sussman <sussman@newton.ch.collab.net> writes:
> > Wow, this is amazing. Here's a printout of the repos right after
> > running fs-test #6, the one which creates an empty file:
> >
> > --------------------------
> > VERSION=2
> > format=print
> > type=btree
> > HEADER=END
> > 0.0
> > (\0a fulltext \0a (\0a (\0a dir \0a (\0a )\0a )\0a (\0a )\0a )\0a)
> > 0.1
> > (\0a fulltext \0a (\0a (\0a dir \0a (\0a )\0a (\0a mutable \0a 0\0a\0a )\0a )\0a (\0a (\0a beer.txt \0a 3\0a1.1\0a )\0a )\0a )\0a)
> > 1.1
> > (\0a fulltext \0a (\0a (\0a file \0a (\0a )\0a (\0a mutable \0a 3\0a0.1\0a )\0a )\0a 0\0a\0a )\0a)
> > DATA=END
> > ---------------------------
> >
> > Notice node-rev 0.0 is a dir with no mutable flag, and no dirents.
> > This is the "root" node made when the fs is created.
> >
> > Notice that 0.1 is the root of the first transaction: it's a clone of
> > the root node. How can we tell?
> >
> > * You can tell they're both revisions of node 0, because they're
> > both named "0.*".
> >
> > * The only difference between 0.0 and 0.1 is that the the latter has
> > the "mutable" flag.
> >
> > And finally, notice our new empty file -- node 1. It's of type
> > "file", has the mutable flag (which points to parent 0.1), and has no
> > content.
> >
> > Whee!
> >
> >
Received on Sat Oct 21 14:36:24 2006

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