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

Terrible bad performance for it blame --date=iso -C -C master -- <file>

From
UWUlrich Windl <ulrich.windl@rz.uni-regensburg.de>
Date
Mar 31, 2017, 07:30 UTC
Message-ID
<58DE0598020000A1000256CE@gwsmtp1.uni-regensburg.de>
In-Reply-To
<58DE0598020000A1000256CE@gwsmtp1.uni-regensburg.de>
Hi!
I was running "vc-annotate" in Emacs for a file from a large repository (>40000 files, a big percentage being binary, about 10 commits). For the first file the result was presented rather soon, but for a second file the command did not finish even after about 10 minutes!
The file in question is a rather short text file (124 kB), and according to git log it has one commit.
While being bored, I did an strace of the command to find out that a huge number of files is inspected.
I'm using git of openSUSE LEap 42.2 (git-2.10.2-3.1.x86_64).
Here's the stat of the process:

% cat /proc/6307/stat 6307 (git) R 6189 6307 6307 0 -1 4194304 30514692 0 1860 0 142035 6333 0 0 20 0 1 0 14519800 5850595328 391884 18446744073709551615 4194304 6038988 140726752300720 140726752293728 5549816 0 0 67108864 0 0 0 0 17 2 0 0 28211 0 0 8138160 8173100 9625600 140726752306005 140726752306072 140726752306072 140726752309227 0

Regards, Ulrich

Next: Junio C Hamano
Message 1 of 11 in “Terrible bad performance for it blame --date=iso -C -C master -- <file>”
  1. Ulrich WindlMar 31, 2017
  2. Junio C HamanoMar 31, 2017
  3. Samuel LijinMar 31, 2017
  4. Antw: Re: Terrible bad performance for it blame --date=iso -C -C master -- <file>Ulrich Windl, Apr 3, 2017
  5. SZEDER GáborApr 3, 2017
  6. Jakub NarębskiApr 3, 2017
  7. Antw: Re: Terrible bad performance for it blame --date=iso -CUlrich Windl, Apr 4, 2017
  8. Samuel LijinMay 1, 2017
  9. Junio C HamanoMay 2, 2017
  10. Samuel LijinMay 3, 2017
  11. Antw: Re: Terrible bad performance for it blame --date=iso -C -C master -- <file>Ulrich Windl, May 3, 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.