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

Re: Git fetch slow on local repository with 600k refs

From
Bagas Sanjaya <bagasdotme@gmail.com>
Date
Mar 14, 2023, 08:22 UTC
Message-ID
<73a7f949-e828-fd9c-4be5-63f60b53eb41@gmail.com>
In-Reply-To
<e28a23e8eb044d26947462b8619e88bd@xiaomi.com>
On 3/13/23 18:54, 程洋 wrote:
Show 21 quoted lines
> 19:12:55.931180 common-main.c:48             | d0 | main                     | version      |     |           |           |              | 2.33.1.558.g2bd2f258f4.dirty
> 19:12:55.931215 common-main.c:49             | d0 | main                     | start        |     |  0.000335 |           |              | git fetch --no-tags git://10.13.8.10/miui/gerrit/base-test.git refs/changes/27/2741927/1:refs/changes/27/2741927/1
> 19:12:55.931302 compat/linux/procinfo.c:170  | d0 | main                     | cmd_ancestry |     |           |           |              | ancestry:[bash sudo bash miauthd miauthd systemd]
> 19:12:55.931381 git.c:456                    | d0 | main                     | cmd_name     |     |           |           |              | fetch (fetch)
> 19:12:55.931566 builtin/fetch.c:1579         | d0 | main                     | region_enter | r0  |  0.000692 |           | fetch        | label:remote_refs
> 19:12:55.936781 connect.c:167                | d0 | main                     | data         |     |  0.005907 |  0.005215 | transfer     | ..negotiated-version:2
> 19:12:55.940447 builtin/fetch.c:1582         | d0 | main                     | region_leave | r0  |  0.009573 |  0.008881 | fetch        | label:remote_refs
> 19:12:56.221133 run-command.c:739            | d0 | main                     | child_start  |     |  0.290252 |           |              | [ch0] class:? argv:[git rev-list --objects --stdin --not --all --quiet --alternate-refs --unsorted-input]
> 19:12:58.014792 run-command.c:995            | d0 | main                     | child_exit   |     |  2.083899 |  1.793647 |              | [ch0] pid:81860 code:0
> 19:12:58.014855 builtin/fetch.c:1321         | d0 | main                     | region_enter | r0  |  2.083980 |           | fetch        | label:consume_refs
> 19:12:58.015412 builtin/fetch.c:1326         | d0 | main                     | region_leave | r0  |  2.084538 |  0.000558 | fetch        | label:consume_refs
> 19:12:58.015466 run-command.c:739            | d0 | main                     | child_start  |     |  2.084590 |           |              | [ch1] class:? argv:[git maintenance run --auto --no-quiet]
> 19:12:58.018879 common-main.c:48             | d1 | main                     | version      |     |           |           |              | 2.33.1.558.g2bd2f258f4.dirty
> 19:12:58.018911 common-main.c:49             | d1 | main                     | start        |     |  0.000324 |           |              | /usr/libexec/git-core/git maintenance run --auto --no-quiet
> 19:12:58.019011 compat/linux/procinfo.c:170  | d1 | main                     | cmd_ancestry |     |           |           |              | ancestry:[git bash sudo bash miauthd miauthd systemd]
> 19:12:58.019087 git.c:456                    | d1 | main                     | cmd_name     |     |           |           |              | maintenance (fetch/maintenance)
> 19:12:58.019276 git.c:714                    | d1 | main                     | exit         |     |  0.000690 |           |              | code:0
> 19:12:58.019284 trace2/tr2_tgt_perf.c:213    | d1 | main                     | atexit       |     |  0.000698 |           |              | code:0
> 19:12:58.019386 run-command.c:995            | d0 | main                     | child_exit   |     |  2.088507 |  0.003917 |              | [ch1] pid:81878 code:0
> 19:12:58.019411 git.c:714                    | d0 | main                     | exit         |     |  2.088538 |           |              | code:0
> 19:12:58.019419 trace2/tr2_tgt_perf.c:213    | d0 | main                     | atexit       |     |  2.088545 |           |              | code:0

From above, I see that the hot paths are `git maintenance run` and `git rev-list`, right?

Next time, try to send only plain-text email in this ML, as vger isn't happy with HTML emails (most likely spam).

Thanks.
-- 
An old man doll... just what I always wanted! - Clara
Previous: 程洋Next: 程洋
Message 2 of 4 in “Git fetch slow on local repository with 600k refs”
  1. 程洋Mar 13, 2023
  2. Bagas SanjayaMar 14, 2023
  3. 程洋Mar 14, 2023
  4. Sean AllredMar 14, 2023

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.