Package: apt Version: 1.8.2.1 Severity: normal Tags: patch Dear Maintainer,
On Debian Buster we're seeing 30s timeouts when downloading a particular set of debian packages from an internal repo: ``` $ time apt-get download -y rubygem-stud rubygem-mustache rubygem-insist rubygem-pleaserun rubygem-fpm ... Fetched 451 kB in 30s (15.0 kB/s) real 0m31.022s user 0m0.923s sys 0m0.080s ``` The issue is fixed in the following commit in apt 2.1.9: ``` commit 08f05aa8beb58fa32485e2087eb21a9f3cb267bb Author: Julian Andres Klode <julian.kl...@canonical.com> Date: Mon Jun 29 14:03:21 2020 +0200 http: Redesign reading of pending data Instead of reading the data early, disable the timeout for the select() call and read the data later. Also, change Read() to call only once to drain the buffer in such instances. We could optimize this to call read() multiple times if there is also pending stuff on the socket, but that it slightly more complex and should not provide any benefits. ``` Please consider backporting this into Debian Buster, as it fixes the problem and the patch itself applies cleanly. -- System Information: Debian Release: 10.6 APT prefers stable-updates APT policy: (500, 'stable-updates'), (500, 'stable') Architecture: amd64 (x86_64) Kernel: Linux 5.4.70 Kernel taint flags: TAINT_OOT_MODULE Locale: LANG=C, LC_CTYPE=C.UTF-8 (charmap=UTF-8), LANGUAGE=C (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: unable to detect Versions of packages apt depends on: ii adduser 3.118 ii debian-archive-keyring 2019.1 ii gpgv 2.2.12-1+deb10u1 ii libapt-pkg5.0 1.8.2.1 ii libc6 2.28-10 ii libgcc1 1:8.3.0-6 ii libgnutls30 3.6.7-4+deb10u5 ii libseccomp2 2.5.1-1 ii libstdc++6 8.3.0-6 Versions of packages apt recommends: ii ca-certificates 20200601~deb10u1 Versions of packages apt suggests: pn apt-doc <none> pn aptitude | synaptic | wajig <none> ii dpkg-dev 1.19.7 ii gnupg 2.2.12-1+deb10u1 ii gnupg2 2.2.12-1+deb10u1 pn powermgmt-base <none> -- no debconf information