Re: pack v4 status
On Tue, 27 Feb 2007, Johannes Schindelin wrote:
Show 24 quoted lines
> Hi,
>
> On Tue, 27 Feb 2007, Linus Torvalds wrote:
>
> > On Tue, 27 Feb 2007, Shawn O. Pearce wrote:
> > >
> > > We have thus far reformatted OBJ_TREEs with a new dictionary based
> > > compression scheme. In this scheme we pool the filenames and modes
> > > that appear within trees into a single table within the packfile.
> > > All trees are then converted to use a 22 byte record format:
> > >
> > > - 2 byte network byte order index into the string pool
> > > - 20 byte SHA-1
> >
> > Umm. Am I missing something, or is this totally braindamaged?
> >
> > Are you really expecting there to never be more than 64k basenames?
> > Trust me, that's a totally broken assumption. Anything that tracks
> > generated stuff will _easily_ have several tens of thousands of random
> > filenames even in a single tree, much less over the whole history of the
> > repository.
>
> The sane thing, of course, is to use some sort of prefix coding, together
> with an escape code.
No. There is a fundamental reason for having a fixed size tree record.
Nicolas