Re: [PATCH v3 2/4] eoie: add End of Index Entry (EOIE) extension

2018-09-08 Thread Martin Ågren
On Sat, 8 Sep 2018 at 16:04, Ben Peart wrote: > On 9/8/2018 2:29 AM, Martin Ågren wrote: > > Maybe it all works out, e.g., so that when someone (brian) merges a > > NewHash and runs the testsuite, this will fail consistently and in a > > safe way. But I wonder if it would be too hard to avoid the

Re: [PATCH v3 2/4] eoie: add End of Index Entry (EOIE) extension

2018-09-08 Thread Ben Peart
On 9/8/2018 2:29 AM, Martin Ågren wrote: On Fri, 7 Sep 2018 at 22:24, Ben Peart wrote: Ben Peart writes: - 160-bit SHA-1 over the extension types and their sizes (but not their contents). E.g. if we have "TREE" extension that is N-bytes long, "REUC" extension that is M-bytes long,

Re: [PATCH v3 2/4] eoie: add End of Index Entry (EOIE) extension

2018-09-08 Thread Martin Ågren
On Fri, 7 Sep 2018 at 22:24, Ben Peart wrote: > > Ben Peart writes: > >> - 160-bit SHA-1 over the extension types and their sizes (but not > >> their contents). E.g. if we have "TREE" extension that is N-bytes > >> long, "REUC" extension that is M-bytes long, followed by "EOIE", > >> then the

Re: [PATCH v3 2/4] eoie: add End of Index Entry (EOIE) extension

2018-09-07 Thread Ben Peart
On 9/7/2018 1:55 PM, Junio C Hamano wrote: Ben Peart writes: The extension consists of: - 32-bit offset to the end of the index entries - 160-bit SHA-1 over the extension types and their sizes (but not their contents). E.g. if we have "TREE" extension that is N-bytes long, "REUC"

Re: [PATCH v3 2/4] eoie: add End of Index Entry (EOIE) extension

2018-09-07 Thread Junio C Hamano
Ben Peart writes: > The extension consists of: > > - 32-bit offset to the end of the index entries > > - 160-bit SHA-1 over the extension types and their sizes (but not > their contents). E.g. if we have "TREE" extension that is N-bytes > long, "REUC" extension that is M-bytes long, followed by

[PATCH v3 2/4] eoie: add End of Index Entry (EOIE) extension

2018-09-06 Thread Ben Peart
The End of Index Entry (EOIE) is used to locate the end of the variable length index entries and the beginning of the extensions. Code can take advantage of this to quickly locate the index extensions without having to parse through all of the index entries. Because it must be able to be loaded