Cloning does not work on available download bandwidth changes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Started to clone big git repo on not-too-fast, _stable_ VDSL link (up to 20mbps down)...

    $ git clone https://github.com/googleapis/google-api-go-client
    Cloning into 'google-api-go-client'...
    remote: Enumerating objects: 644446, done.
    remote: Counting objects: 100% (6922/6922), done.
    remote: Compressing objects: 100% (2904/2904), done.
    Receiving objects:   0% (3859/644446), 20.82 MiB | 1.01 MiB/s

...and then started to watch a VOD movie on same link; when VOD buffers data, eats almost all available down bandwidth and leaves only about 100 kB/s for git...

    Receiving objects:   1% (7111/644446), 44.49 MiB | 130.00 KiB/s

...and when VOD stops buffering and whole bandwith is available for git again, git transfer starts to grow...

    Receiving objects:   1% (7660/644446), 50.56 MiB | 575.00 KiB/s

...but finally git throws an error

    error: 181 bytes of body are still expected5 MiB | 1015.00 KiB/s
    fetch-pack: unexpected disconnect while reading sideband packet
    fatal: early EOF
    fatal: index-pack failed

or sometimes:

    error: RPC failed; curl 92 HTTP/2 stream 5 was not closed cleanly: CANCEL (err 8)
    error: 6109 bytes of body are still expected
    fetch-pack: unexpected disconnect while reading sideband packet
    fatal: early EOF
    fatal: fetch-pack: invalid index-pack output

No such problems when downloading bigger file (i.e. linux kernel source) with wget or curl instead of git clone (wget/curl transfer drops to about 100 kB/s when VOD buffers and increases to full speed when VOD is not transferring and transfer finishes successfully).

Sounds like a bug in git; should not throw an error on available download bandwidth changes as wget and curl do and should not require any params tuning (to stop users flooding bugtrackers).

git versions tested:

    // Debian 11, amd64
    $ dpkg -s git | grep Version
    Version: 1:2.30.2-1+deb11u2

    // Debian 12, amd64
    $ dpkg -s git | grep Version
    Version: 1:2.39.2-1.1

Similar reports:

https://lore.kernel.org/git/71f2b28b-3e27-4773-8408-2f4c13757b73@xxxxxxxxx/
https://lore.kernel.org/git/0d741b90-8307-40cf-b0b3-163203651a57@xxxxxxxxx/






[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux