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

Re: [bug] "git bisect old v3.0" takes 21 mins on Linux repo

From
D. Ben Knoble <ben.knoble@gmail.com>
Date
Jan 14, 2025, 22:21 UTC
Message-ID
<CALnO6CAzN1oeT4tMjJ1Qm4dW0xdVkVKHJ39oJTX8R8E614FH6g@mail.gmail.com>
In-Reply-To
<19461b87a5c.5a2ea74016716.8214238482389812984@zohomail.com>
On Mon, Jan 13, 2025 at 5:11 PM Askar Safin <safinaskar@zohomail.com> wrote:
>
> Hi. This is bug report. "git bisect" is unacceptable slow on Linux repo.
That may be a bit inflammatory ;)
Show 25 quoted lines
>
> Steps to reproduce:
>
> ===
> d-user@comp:/tmp/t$ git clone git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
> Cloning into 'linux'...
> remote: Enumerating objects: 13079335, done.
> remote: Counting objects: 100% (153/153), done.
> remote: Compressing objects: 100% (108/108), done.
> remote: Total 13079335 (delta 84), reused 70 (delta 45), pack-reused 13079182
> Receiving objects: 100% (13079335/13079335), 5.18 GiB | 13.72 MiB/s, done.
> Resolving deltas: 100% (10454171/10454171), done.
> Updating files: 100% (87234/87234), done.
> d-user@comp:/tmp/t$ cd linux
> d-user@comp:/tmp/t/linux$ git bisect start
> status: waiting for both good and bad commits
> d-user@comp:/tmp/t/linux$ git bisect new v6.13-rc7
> status: waiting for good commit(s), bad commit known
> d-user@comp:/tmp/t/linux$ time -p git bisect old v3.0
> Bisecting: 535608 revisions left to test after this (roughly 19 steps)
> [62606c224d72a98c35d21a849f95cccf95b0a252] Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
> real 1293.32
> user 1291.70
> sys 1.41
> ===
FWIW:

$ time git rev-list --count v3.0...v6.13-rc7 1070175 git rev-list --count v3.0...v6.13-rc7 13,57s user 1,41s system 96% cpu 15,466 total

That's a large number of revisions to bisect. Further,

# --force needed because my filesystem is case-insensitive :eyeroll: $ time git checkout [--force] 62606c224d72a98c35d21a849f95cccf95b0a252 git checkout --force 62606c224d72a98c35d21a849f95cccf95b0a252 7,94s user 18,54s system 96% cpu 27,360 total

Using pathspecs or a smaller commit range should help speed up the start. (On a recent git, the helper is gone, so I'm not sure where the time is spent—but I do notice that `git bisect start v6.13-rc7 v3.0` is slow enough that I've killed it rather than wait.)

-- 
D. Ben Knoble
Previous: Askar SafinNext: Jeff King
Message 3 of 10 in “[bug] "git bisect old v3.0" takes 21 mins on Linux repo”
  1. Askar SafinJan 13, 2025
  2. Askar SafinJan 13, 2025
  3. D. Ben KnobleJan 14, 2025
  4. Jeff KingJan 16, 2025
  5. Jeff KingJan 16, 2025
  6. Jeff KingJan 16, 2025
  7. Junio C HamanoJan 16, 2025
  8. Askar SafinJan 17, 2025
  9. Jeff KingJan 17, 2025
  10. Junio C HamanoJan 17, 2025

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.