Accessing large git repos from gitlab.gnome.org often causes 'error: RPC failed; curl 92 HTTP/2' and fails
Summary
Git downloads frequently fail for large repos such as GIMP and Gtk when downloading, with errors like error: RPC failed; curl 92 HTTP/2 stream...
. This makes running CI (and local builds) fraught with flaky errors.
They also can fail on push
es.
Steps to reproduce
It does not happen every time, so a redo is often a solution, but sometimes redoing also does not fix the problem.
The errors look like this issue: https://gitlab.com/gitlab-org/gitlab/-/issues/352078.
Here is one happening for GIMP: https://app.circleci.com/pipelines/github/GNOME/gimp-macos-build/1638/workflows/476df2a9-1674-49af-ae7a-f03522d73122/jobs/7753.
I've set HTTP to 1.1 to try to work around it, but it doesn't seem to fully solve the problem (though improves it).
I've had the most problems with the gtk repo (though the link here is on the gimp repo).
What is the current bug behavior?
Cloning into '/opt/local/var/macports/build/_Users_circleci_project_ports_graphics_gimp210/gimp210/work/gimp210-2.10.32'...
remote: Enumerating objects: 526004, done.
remote: Counting objects: 100% (21/21), done.
remote: Compressing objects: 100% (21/21), done.
error: RPC failed; curl 92 HTTP/2 stream 5 was not closed cleanly before end of the underlying stream
error: 44371 bytes of body are still expected
fetch-pack: unexpected disconnect while reading sideband packet
fatal: early EOF
fatal: fetch-pack: invalid index-pack output
Command failed: /usr/bin/git clone --progress https://gitlab.gnome.org/GNOME/gimp.git /opt/local/var/macports/build/_Users_circleci_project_ports_graphics_gimp210/gimp210/work/gimp210-2.10.32 2>&1
Exit code: 128
What is the expected correct behavior?
The git clone
succeeds.
Relevant logs and/or screenshots
/cc @averi @barthalion #/confidential