git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH v2 0/5] packfile: use oidset for bad objects

From
Derrick Stolee <stolee@gmail.com>
Date
Sep 12, 2021, 03:51 UTC
Message-ID
<4d76db59-e049-32c3-c4dd-ab7f70cbc20b@gmail.com>
In-Reply-To
<YT1l75uQ50e2IaXM@nand.local>
On 9/11/21 10:29 PM, Taylor Blau wrote:
Show 18 quoted lines
> On Sat, Sep 11, 2021 at 09:51:04PM -0400, Taylor Blau wrote:
>> On Sat, Sep 11, 2021 at 07:59:40PM -0400, Derrick Stolee wrote:
>>> I initially hesitated to support the drop of
>>> nth_midxed_pack_entry(), since it was designed with things
>>> like midx bitmaps in mind (specifically, to also support
>>> lex-order-to-stable-order conversions).
>>
>> I didn't know that nth_midxed_pack_entry was designed with either
>> purpose in mind, since it predates midx bitmaps by quite a bit.
> 
> Thinking on it more, I can imagine that you wrote this function
> aspirationally envisioning something like MIDX bitmaps. And since you
> and I discussed the design together quite a bit, I imagine that that's
> the case ;-).
> 
> But I agree that after reading this series again, that the inline-ing
> suggested makes sense (and doesn't conflict with any series I have in
> flight which don't add any new callers).

I'm thinking more to my original design of the multi-pack-index. At that time, I was thinking about the possible integration with bitmaps based on my experience in other systems which used a stable object order to allow writing bitmaps asynchronously with respect to the multi-pack-index write and object packing.

One thing that you did when first considering bitmaps over the multi-pack-index was to demonstrate that a stable object order is not required, which surprised and delighted me. It greatly reduced the complexity of the problem, and being able to inline this method is only one small fallout from that simplicity.

Thanks, -Stolee

Previous: Taylor BlauNext: Taylor Blau
Message 27 of 28 in “packfile: use oidset for bad objects”
  1. 0/3 packfile: use oidset for bad objectsRené Scharfe, Sep 11, 2021
  2. 1/3 packfile: convert mark_bad_packed_object() to object_idRené Scharfe, Sep 11, 2021
  3. 2/3 packfile: convert has_packed_and_bad() to object_idRené Scharfe, Sep 11, 2021
  4. 3/3 packfile: use oidset for bad objectsRené Scharfe, Sep 11, 2021
  5. Jeff KingSep 11, 2021
  6. René ScharfeSep 11, 2021
  7. Jeff KingSep 11, 2021
  8. René ScharfeSep 11, 2021
  9. Jeff KingSep 11, 2021
  10. 4/3 midx: inline nth_midxed_pack_entry()René Scharfe, Sep 11, 2021
  11. René ScharfeSep 11, 2021
  12. Jeff KingSep 11, 2021
  13. René ScharfeSep 11, 2021
  14. Jeff KingSep 11, 2021
  15. René ScharfeSep 11, 2021
  16. 0/5 packfile: use oidset for bad objectsRené Scharfe, Sep 11, 2021
  17. 1/5 oidset: make oidset_size() an inline functionRené Scharfe, Sep 11, 2021
  18. 2/5 midx: inline nth_midxed_pack_entry()René Scharfe, Sep 11, 2021
  19. 3/5 packfile: convert mark_bad_packed_object() to object_idRené Scharfe, Sep 11, 2021
  20. 4/5 packfile: convert has_packed_and_bad() to object_idRené Scharfe, Sep 11, 2021
  21. 5/5 packfile: use oidset for bad objectsRené Scharfe, Sep 11, 2021
  22. René ScharfeSep 11, 2021
  23. Jeff KingSep 11, 2021
  24. Derrick StoleeSep 11, 2021
  25. Taylor BlauSep 12, 2021
  26. Taylor BlauSep 12, 2021
  27. Derrick StoleeSep 12, 2021
  28. Taylor BlauSep 12, 2021

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.