Thread (113 messages) 113 messages, 3 authors, 2016-06-15

Re: [PATCH 37/38] pack v4: introduce "escape hatches" in the name and path indexes

From: Duy Nguyen <hidden>
Date: 2016-06-15 22:58:39

On Fri, Sep 6, 2013 at 2:02 AM, Nicolas Pitre [off-list ref] wrote:
I think that we've found a way to better support thin packs.

You said:
quoted
What if the sender prepares the sha-1 table to contain missing objects
in advance? The sender should know what base objects are missing. Then
we only need to append objects at the receiving end and verify that
all new objects are also present in the sha-1 table.
So the SHA1 table is covered.

Missing objects in a thin pack cannot themselves be deltas.  We had
their undeltified form at the end of a pack for the pack to be complete.
Therefore those missing objects serve only as base objects for other
deltas.

Although this is possible to have deltified commit objects in pack v2, I
don't think this happens very often. There is no deltified commit
objects in pack v4.

Blob objects are the same in pack v2 and pack v4.  No dictionary
references are needed.

That leaves only tree objects.  And because we've also discussed the
need to have non transcoded object representations for those odd cases
such as zero padded file modes, we might as well simply use that for the
appended tree objects already needed to complete a thin pack.  At least
the strings in tree entries will be compressed that way.

Problem solved, and one less special case in the code.

What do you think?
Agreed.
 Please also remove this from your documentation patch.
Will do.
-- 
Duy
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help