Add format support for efficient sparse file handling.
authorMichael Vrable <mvrable@cs.ucsd.edu>
Fri, 7 Dec 2007 21:01:30 +0000 (13:01 -0800)
committerMichael Vrable <mvrable@turin.ucsd.edu>
Fri, 7 Dec 2007 21:01:30 +0000 (13:01 -0800)
commitd3c10b747ecec0acc14863fc12db9661c3f88128
treee79c01bdb4cbdf41ef89efe563b857a00e24dc39
parent020917702127ad12881c8868bb649a685c561def
Add format support for efficient sparse file handling.

While making other format changes, also add in support for explicitly
representing regions of a file that are entirely zero, as can happen with
sparse files.  These are represented with an object reference of the form
"zero[0+<length>]".  Update the lbs tool to generate and parse these
references, and the utility code to also handle it.

The restore tools do not seek over zero regions when writing out a file, so
the file is not restored as a sparse file, but that support can easily be
added later with no change needed to the format.
contrib/restore.pl
doc/format.txt
lbs.py
localdb.cc
ref.cc
ref.h
scandir.cc