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

Re: [PATCH v2 2/2] diff: restrict when prefetching occurs

From
Junio C Hamano <gitster@pobox.com>
Date
Apr 3, 2020, 22:12 UTC
Message-ID
<xmqqr1x4xlpk.fsf@gitster.c.googlers.com>
In-Reply-To
<20200403213546.237273-1-jonathantanmy@google.com>
Jonathan Tan <jonathantanmy@google.com> writes:
Show 8 quoted lines
> Ah...that makes sense. Besides the accumulating of prefetch targets
> (which makes deduplication more necessary - I might make a
> "sort_and_uniq" function on oid_array that updates the oid_array
> in-place), looking at the code, it's not only diffcore_break() which
> might need prefetching, but diffcore_skip_stat_unmatch() too (not to
> speak of the functions that come after diffcore_rename()). The least
> brittle way is probably to have diff_populate_filespec() do the
> prefetching. I'll take a further look.

It might be a losing battle, unless we can somehow cleanly have a two pass approach where we ask various codepaths "enumerate blobs that you think you would need prefetching in this oid list" before letting any of them actually look at blobs and perform their main tasks, do a single prefetch and then let the existing age-old code call the diffcore transformations as if there is no need for it to worry about prefetching ;-)

Thanks.
Previous: Jonathan TanNext: Junio C Hamano
Message 17 of 26 in “diff: restrict when prefetching occurs”
  1. diff: restrict when prefetching occursJonathan Tan, Mar 31, 2020
  2. Derrick StoleeMar 31, 2020
  3. Jonathan TanMar 31, 2020
  4. Derrick StoleeMar 31, 2020
  5. Junio C HamanoMar 31, 2020
  6. Junio C HamanoMar 31, 2020
  7. 0/2 Restrict when prefetcing occursJonathan Tan, Apr 2, 2020
  8. 1/2 promisor-remote: accept 0 as oid_nr in functionJonathan Tan, Apr 2, 2020
  9. Junio C HamanoApr 2, 2020
  10. Jonathan TanApr 2, 2020
  11. 2/2 diff: restrict when prefetching occursJonathan Tan, Apr 2, 2020
  12. Junio C HamanoApr 2, 2020
  13. Jonathan TanApr 2, 2020
  14. Junio C HamanoApr 2, 2020
  15. Junio C HamanoApr 2, 2020
  16. Jonathan TanApr 3, 2020
  17. Junio C HamanoApr 3, 2020
  18. Junio C HamanoApr 2, 2020
  19. Derrick StoleeApr 6, 2020
  20. Garima SinghApr 6, 2020
  21. 0/4 Restrict when prefetcing occursJonathan Tan, Apr 7, 2020
  22. 1/4 promisor-remote: accept 0 as oid_nr in functionJonathan Tan, Apr 7, 2020
  23. 2/4 diff: make diff_populate_filespec_options structJonathan Tan, Apr 7, 2020
  24. Junio C HamanoApr 7, 2020
  25. 3/4 diff: refactor object readJonathan Tan, Apr 7, 2020
  26. 4/4 diff: restrict when prefetching occursJonathan Tan, Apr 7, 2020

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.