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

Re: q: git-fetch a tad slow?

From
IMIngo Molnar <mingo@elte.hu>
Date
Jul 30, 2008, 19:06 UTC
Message-ID
<20080730190657.GC26389@elte.hu>
In-Reply-To
<20080730044855.GA7225@spearce.org>
* Shawn O. Pearce <spearce@spearce.org> wrote:
Show 11 quoted lines
> > should i pack on both repos? I dont explicitly pack anything, but on 
> > the server it goes into regular gc runs. (which will pack most 
> > stuff, right?)
> 
> git-gc automatically runs `git pack-refs --all --prune` like I 
> recommended, unless you disabled it with config gc.packrefs = false. 
> So its probably already packed.
> 
> What does `find .git/refs -type f | wc -l` give for the repository on 
> the central server?  If its more than a handful (~20) I would suggest 
> running git-gc before testing again.
ah, you are right, it gave 275, then git-gc brought it down to two:
  earth4:~/tip> find .git/refs -type f | wc -l
  275
  earth4:~/tip> git gc
  earth4:~/tip> find .git/refs -type f | wc -l
  2

i turned off auto-gc recently (two weeks ago) because it was auto-triggering _way_ too frequently. (like on every fifth merge i was doing or so)

alas, fetching still seems to be slow:
  titan:~/tip> time git-fetch origin
  real    0m5.112s
  user    0m0.972s
  sys     0m3.380s

(but the gc run has not finished yet on the central repo so this isnt fully valid.)

Show 11 quoted lines
> But I'm really suspecting that this is just our quadratic matching 
> algorithm running up against a large number of branches, causing it to 
> suck.
> 
> jgit at least uses an O(N) algorithm here, but since it is written in 
> Java its of course slow compared to C Git.  Takes a while to get that 
> JVM running.
> 
> I'll try to find some time to reproduce the issue and look at the 
> bottleneck here.  I'm two days into a new job so my git time has been 
> really quite short this week.  :-|
fetching the -tip repo:
   http://people.redhat.com/mingo/tip.git/README

and then running 'git remote update' will i think already show this problem for you too. People have been complaining about how slow the update is.

	Ingo
Previous: Shawn O. PearceNext: Shawn O. Pearce
Message 5 of 10 in “q: git-fetch a tad slow?”
  1. Ingo MolnarJul 28, 2008
  2. Shawn O. PearceJul 29, 2008
  3. Ingo MolnarJul 29, 2008
  4. Shawn O. PearceJul 30, 2008
  5. Ingo MolnarJul 30, 2008
  6. Shawn O. PearceJul 30, 2008
  7. Shawn O. PearceJul 31, 2008
  8. Ingo MolnarJul 31, 2008
  9. Ingo MolnarJul 31, 2008
  10. Shawn O. PearceJul 31, 2008

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.