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

Re: [PATCH] Use OBJECT_INFO_QUICK to speedup git fetch-pack

From
Jeff King <peff@peff.net>
Date
Nov 27, 2017, 05:04 UTC
Message-ID
<20171127050420.GB6858@sigill>
In-Reply-To
<xmqqk1yce301.fsf@gitster.mtv.corp.google.com>
On Mon, Nov 27, 2017 at 01:53:34PM +0900, Junio C Hamano wrote:
Show 12 quoted lines
> > I'd be curious if the 5th patch there provides an additional speedup for
> > Takuto's case.
> 
> Indeed, it is a very good point.
> 
> IIUC, the 5th one is about fetching tons of refs that you have never
> seen, right?  If a repository that has trouble with everything-local
> is suffering because it right now has 300k remote-tracking branches,
> I'd imagine that these remote-tracking branches are being added at a
> considerable rate, so I'd not be surprised if these "new" refs
> benefits from that patch.  And it would be nice to know how much a
> real life scenario actually does improve.

Right, I think it will only kick in for new refs (and maybe deleted ones, but I didn't check).

I actually did have a real life scenario that was improved, but it's not very typical. As I've mentioned before, we keep a big shared-object repository for forks of a single repo, so a fairly common operation is

  git -C network.git fetch ../$fork.git +refs/*:refs/remotes/$fork/*
The first time that's run on a fork, everything looks like a new ref.
So "real life", but thankfully not life for most git users. :)
-Peff
Previous: Takuto Ikuta
Message 12 of 12 in “Use OBJECT_INFO_QUICK to speedup git fetch-pack”
  1. Use OBJECT_INFO_QUICK to speedup git fetch-packTakuto Ikuta, Nov 27, 2017
  2. Junio C HamanoNov 27, 2017
  3. Jeff KingNov 27, 2017
  4. Junio C HamanoNov 27, 2017
  5. Takuto IkutaNov 27, 2017
  6. Johannes SchindelinNov 27, 2017
  7. Junio C HamanoNov 27, 2017
  8. Johannes SchindelinNov 28, 2017
  9. Takuto IkutaNov 28, 2017
  10. Johannes SchindelinNov 28, 2017
  11. Takuto IkutaNov 28, 2017
  12. Jeff KingNov 27, 2017

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.