[RFC]: Pack-file object format for individual objects (Was: Revisiting large binary files issue.)
- From
- sf <sf@b-i-t.de>
- Date
- Jul 11, 2006, 09:40 UTC
- Message-ID
- <44B371FB.2070800@b-i-t.de>
- In-Reply-To
- <Pine.LNX.4.64.0607101623230.5623@g5.osdl.org>
Linus Torvalds wrote: ...
> The problem is that the individual object disk format isn't actually the > same as the pack-file object format for one object. The header is > different: a pack-file uses a very dense bit packing, while the individual > object format is a bit less dense.
I just stumbled over the same fact and asked myself why there are still two formats. Wouldn't it make more sense to use the pack-file object format for individual objects as well?
As it happens individual objects all start with nibble 7 (deflated with default _zlib_ window size of 32K) whereas in the pack-file object format nibble 7 indicates delta entries which never occur as individual files.
Roadmap for using pack-file format as individual object disk format:
Step 1. When reading individual objects from disk check the first nibble and decode accordingly (see above).
Step 2. When writing individual objects to disk write them in pack-file object format. Make that optional (config-file parameter, command line option etc.)?
Step 3. Remove code for (old) individual object disk format.
Please comment.
Regards Stephan