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

Re: What's in git.git

From
Linus Torvalds <torvalds@osdl.org>
Date
Oct 17, 2006, 17:16 UTC
Message-ID
<Pine.LNX.4.64.0610171005370.3962@g5.osdl.org>
In-Reply-To
<7vvemjmlo2.fsf@assigned-by-dhcp.cox.net>
On Tue, 17 Oct 2006, Junio C Hamano wrote:
Show 5 quoted lines
>
> * The 'maint' branch has this fix and produced 1.4.2.4 release.
> 
>    Linus Torvalds (1):
>       Fix hash function in xdiff library
There's two things to note about this:
 - the libxdiff dependencies are broken, so it's likely that you need to 
   do a "make clean; make" to actually see the result of this.
   We really should fix this. I was bitten by this _again_ when I wanted 
   to do some performance testing, and was scratching my head about why it 
   didn't seem to matter.
   I haven't looked into which part of the Makefile is broken yet, so I 
   really don't know what's broken, but maybe somebody who likes makefiles 
   could take a look? Basically, doing a
	touch xdiff/xmacros.h
   should cause a recompile of a lot more than it causes.
 - while the hash function problem _can_ cause really huge slowdowns in 
   some unlucky situations, it actually causes noticeable performance 
   issues even for normal situations.
   For example, for me on a 2GHz merom machine in the current git 
   directory:
   Before:
	[torvalds@merom git]$ time ./git log -p | wc -l
	746211
	
	real    0m27.223s
	user    0m26.894s
	sys     0m0.424s
   After:
	[torvalds@merom git]$ time ./git log -p | wc -l
	746211
	
	real    0m9.638s
	user    0m9.329s
	sys     0m0.468s
   so there's a factor-of-three difference here even on a "normal" load 
   like git itself. You don't need a huge file with tons of changes to see 
   the effect of this.

So we should fix the makefile to add whatever proper header file dependencies, but we should also make sure that whoever builds binaries has done a "make clean", otherwise the fix is potentially hidden.

		Linus
Previous: Junio C HamanoNext: Andy Whitcroft
Message 2 of 8 in “What's in git.git”
  1. Junio C HamanoOct 17, 2006
  2. Linus TorvaldsOct 17, 2006
  3. add proper dependancies on the xdiff sourceAndy Whitcroft, Oct 17, 2006
  4. Ryan AndersonOct 17, 2006
  5. Davide LibenziOct 17, 2006
  6. Junio C HamanoOct 17, 2006
  7. Linus TorvaldsOct 17, 2006
  8. Andy WhitcroftOct 17, 2006

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.