Marge Bot pushed to branch master at Glasgow Haskell Compiler / GHC Commits: 3c001377 by Cheng Shao at 2025-12-13T05:03:15-05:00 ci: use treeless fetch for perf notes This patch improves the ci logic for fetching perf notes by using treeless fetch (https://github.blog/open-source/git/get-up-to-speed-with-partial-clone-and-s...), to avoid downloading all blobs of the perf notes repo at once, and only fetch the actually required blobs on-demand when needed. This makes the initial `test-metrics.sh pull` operation much faster, and also more robust, since we are seeing an increasing rate of 504 errors in CI when fetching all perf notes at once, which is a major source of CI flakiness at this point. Co-authored-by: Codex <codex@openai.com> - - - - - 1 changed file: - .gitlab/test-metrics.sh Changes: ===================================== .gitlab/test-metrics.sh ===================================== @@ -17,12 +17,14 @@ fail() { function pull() { local ref="refs/notes/$REF" - # 2023-10-04: `git fetch` started failing, first on Darwin in CI and then on - # Linux locally, both using git version 2.40.1. See #24055. One workaround is - # to set a larger http.postBuffer, although this is definitely a workaround. - # The default should work just fine. The error could be in git, GitLab, or - # perhaps the networking tube (including all proxies etc) between the two. - run git -c http.postBuffer=2097152 fetch -f "$NOTES_ORIGIN" "$ref:$ref" + + # Fetch performance notes from a dedicated promisor remote using a + # treeless filter, so that individual note blobs are fetched lazily + # as needed. + git remote add perf-notes "$NOTES_ORIGIN" || true + git config fetch.recurseSubmodules false + git config remote.perf-notes.partialclonefilter tree:0 + run git fetch --force perf-notes "$ref:$ref" echo "perf notes ref $ref is $(git rev-parse $ref)" } @@ -81,4 +83,3 @@ case $1 in pull) pull ;; *) fail "Invalid mode $1" ;; esac - View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/3c0013778b4459c1f8e56cd0dc2600f5... -- View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/3c0013778b4459c1f8e56cd0dc2600f5... You're receiving this email because of your account on gitlab.haskell.org.