It seems like every time there is a rebuild the download mirror would be slow, speed down to 300kb/s or 100 comparing to 1mb/s in usual days. And a lot of curl errors. May be due to large bandwidth? Also no up-to-date regional mirror for TW is available.

The only frustration of using TW…

From: Michael Hamilton <michael@actrix.gen.nz>
Sent: Saturday, September 3, 2022 4:47:28 PM
To: openSUSE Factory - Mailing List <opensuse-factory@opensuse.org>
Subject: Re: [SPAM?] Re: Tumbleweed - Review of the week 2022/35
 
On Saturday 03 September 2022, Larry Len Rainey wrote:
> I too has lots of curl errors and 3996 packages to upgrade - another glibc multiple update.
> Larry Rainey

> On 9/2/22 15:43, Eyad Issa wrote:

> Il 02/09/2022 22:21, Oliver Schwabedissen ha scritto:

> Am 02.09.22 um 19:39 schrieb Frank Krüger:

> 2758 packets to update, 1 new, 1 to remove!.

>  Today's update to TW20220831 with almost 2,600 packages is really a pain. In fact, after almost every 5th package download stops with the error message

>  Fehler beim Download (curl) für 'https://download.opensuse.org/tumbleweed/repo/oss/noarch/ibus-dict-emoji-1.5.27-2.1.noarch.rpm':
>  Fehlercode: 'Curl error 16'
>  Fehlermeldung:
> 3552 packages for me. Aborted download after 6 packages because it was so slow. Will retry until next week...
>  
> Regards,
> Oliver

> --
>  PGP Public Key available at https://pgp.mit.edu/
>  Key fingerprint = 3264 280C 05B1 572F 3F0B 42B8 1E7B 2D9D 063B D507
>

> Same for me, zypper is failing downloading almost every pacakge with "Curl error 16".


I resorted to an expect script, but the download rate became appalling, I gave up
and killed it at around 2976.  I have zypper configured to keep the downloads, so at least
I won't have to start from scratch.

#!/usr/bin/expect
set timeout -1
spawn zypper --no-color dup --auto-agree-with-licenses  --no-allow-vendor-change
expect "*Continue? * shows all options* (y): " { send -- "y\r" }
while {1 == 1} {
    expect \
        "*Abort, retry, ignore? * shows all options* (a): " {
            sleep 30
            send -- "r\r"
        } \
        eof { exit 0 }
}