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

Re: [PATCH v2 0/6] reuse on-disk deltas for fetches with bitmaps

From
Junio C Hamano <gitster@pobox.com>
Date
Aug 21, 2018, 19:34 UTC
Message-ID
<xmqqo9dv8qf9.fsf@gitster-ct.c.googlers.com>
In-Reply-To
<20180821190622.GA30301@sigill.intra.peff.net>
Jeff King <peff@peff.net> writes:
Show 16 quoted lines
> On Fri, Aug 17, 2018 at 04:54:27PM -0400, Jeff King wrote:
>
>> This series more aggressively reuses on-disk deltas to serve fetches
>> when reachability bitmaps tell us a more complete picture of what the
>> client has. That saves server CPU and results in smaller packs. See the
>> final patch for numbers and more discussion.
>
> Here's a v2, with just a few cosmetic fixes to address the comments on
> v1 (range-diff below).
>
>   [1/6]: t/perf: factor boilerplate out of test_perf
>   [2/6]: t/perf: factor out percent calculations
>   [3/6]: t/perf: add infrastructure for measuring sizes
>   [4/6]: t/perf: add perf tests for fetches from a bitmapped server
>   [5/6]: pack-bitmap: save "have" bitmap from walk
>   [6/6]: pack-objects: reuse on-disk deltas for thin "have" objects
Thanks.
Show 10 quoted lines
> 1:  89fa0ec8d8 ! 1:  3e1b94d7d6 pack-bitmap: save "have" bitmap from walk
>     @@ -69,6 +69,8 @@
>      +
>      +	if (!bitmap_git)
>      +		return 0; /* no bitmap loaded */
>     ++	if (!bitmap_git->result)
>     ++		BUG("failed to perform bitmap walk before querying");
>      +	if (!bitmap_git->haves)
>      +		return 0; /* walk had no "haves" */
>      +

The first four are unchanged, so this actually compares 5/6 of the previous and the current one. Omitting the four identical ones makes sense, but I wonder if it makes it easier to see if we keep the number-label of the surviving patches.

> 2:  f7ca0d59e3 ! 2:  b8b2416aac pack-objects: reuse on-disk deltas for thin "have" objects
Previous: Jeff KingNext: Jeff King
Message 16 of 17 in “reuse on-disk deltas for fetches with bitmaps”
  1. 0/6 reuse on-disk deltas for fetches with bitmapsJeff King, Aug 17, 2018
  2. 1/6 t/perf: factor boilerplate out of test_perfJeff King, Aug 17, 2018
  3. 2/6 t/perf: factor out percent calculationsJeff King, Aug 17, 2018
  4. 3/6 t/perf: add infrastructure for measuring sizesJeff King, Aug 17, 2018
  5. 4/6 t/perf: add perf tests for fetches from a bitmapped serverJeff King, Aug 17, 2018
  6. 5/6 pack-bitmap: save "have" bitmap from walkJeff King, Aug 17, 2018
  7. Stefan BellerAug 17, 2018
  8. Jeff KingAug 17, 2018
  9. 6/6 pack-objects: reuse on-disk deltas for thin "have" objectsJeff King, Aug 17, 2018
  10. Stefan BellerAug 17, 2018
  11. Jeff KingAug 17, 2018
  12. Junio C HamanoAug 20, 2018
  13. Jeff KingAug 20, 2018
  14. 0/6 reuse on-disk deltas for fetches with bitmapsJeff King, Aug 21, 2018
  15. Jeff KingAug 21, 2018
  16. Junio C HamanoAug 21, 2018
  17. Jeff KingAug 21, 2018

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.