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

Re: [PATCH v2 2/3] midx.c: use `pack-objects --stdin-packs` when repacking

From
Taylor Blau <me@ttaylorr.com>
Date
Sep 23, 2022, 18:28 UTC
Message-ID
<Yy364WAutGIdXCub@nand.local>
In-Reply-To
<5172dbb7-61d1-7249-f9bb-d760e6f4450a@github.com>
On Fri, Sep 23, 2022 at 02:23:30PM -0400, Derrick Stolee wrote:
> Do you know if there is any reason to do this explicitly? Does this
> change the set of objects in any way (perhaps by not including
> duplicates that are tracked in those other packs)?

Yes. The "^" lines become excluded packs from the perspective of the follow-on reachability traversal to discover the namehashes. So as soon as we hit an object contained in one of the packs marked as excluded, we'll halt the traversal along that direction, since we know that we're not going to pick up any objects in those packs.

So you could omit them, and you'd get the same resulting pack, but it would take longer to generate since we wouldn't be stopping the follow-on traversal as early as possible.

Thanks, Taylor

Previous: Derrick StoleeNext: Derrick Stolee
Message 5 of 10 in “midx: use `--stdin-packs` to implement `repack`”
  1. 0/3 midx: use `--stdin-packs` to implement `repack`Taylor Blau, Sep 20, 2022
  2. 1/3 midx.c: compute pack_info array outside of fill_included_packs_batch()Taylor Blau, Sep 20, 2022
  3. 2/3 midx.c: use `pack-objects --stdin-packs` when repackingTaylor Blau, Sep 20, 2022
  4. Derrick StoleeSep 23, 2022
  5. Taylor BlauSep 23, 2022
  6. Derrick StoleeSep 23, 2022
  7. 3/3 midx.c: unify `include_pack` array into `pack_info` structTaylor Blau, Sep 20, 2022
  8. Jeff KingSep 20, 2022
  9. Junio C HamanoSep 21, 2022
  10. Taylor BlauSep 23, 2022

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.