You are not logged in.

#1 2026-04-06 09:06:06

probackup-nl
Member
From: Delft
Registered: 2017-11-15
Posts: 93
Website

[solved] Rankmirrors low value -m --max-time issue on slow CPU

On a box with limited CPU resources, that is a slow but energy efficient Intel Atom in this case, I had the habit to generate mirrorlist file updates with rankmirrors -n 5 -m 0.1. Where the "m" is for "max-time", to specify a ranking operation timeout.

Initially that rankmirrors (now running version 1.13.1) command worked fine.

Over time I noticed that core packages will receive updates using pacman -Syu while packages from extra or multilib repo won't receive updates.

It turns out that hosts that can be pinged in under 10 ms, still end up as "unreachable" in the -m 0.1 generated rankmirrors file. The key factor for this issue is that nearly all (commented) hosts ended up as "unreachable", where still 5 "good" hosts were left uncommented:

# https://ams.nl.mirrors.bjg.at/arch/$repo/os/$arch ... unreachable
# https://mirror.mijn.host/archlinux/$repo/os/$arch ... unreachable
# https://mirror.nyaa.vc/archlinux/$repo/os/$arch ... unreachable
# https://nl.arch.niranjan.co/$repo/os/$arch ... unreachable
# https://mirror.cj2.nl/archlinux/$repo/os/$arch ... unreachable
# https://archlinux.mirror.liteserver.nl/$repo/os/$arch ... 0.202087
# https://mirror.nl.cdn-perfprod.com/archlinux/$repo/os/$arch ... unreachable
# https://nl.mirror.cx/archlinux/$repo/os/$arch ... unreachable
# https://archlinux.mirror.wearetriple.com/$repo/os/$arch ... unreachable
# https://nl.mirror.flokinet.net/archlinux/$repo/os/$arch ... unreachable
# https://mirror.lyrahosting.com/archlinux/$repo/os/$arch ... unreachable
# https://nl.mirrors.cicku.me/archlinux/$repo/os/$arch ... unreachable
# https://mirror.bouwhuis.network/archlinux/$repo/os/$arch ... unreachable
# https://mirror.ams1.nl.leaseweb.net/archlinux/$repo/os/$arch ... unreachable
# https://mirrors.xtom.nl/archlinux/$repo/os/$arch ... unreachable
# https://arch.mirrors.lavatech.top/$repo/os/$arch ... unreachable
Server = https://archlinux.mirror.liteserver.nl/$repo/os/$arch
Server = https://ams.nl.mirrors.bjg.at/arch/$repo/os/$arch
Server = https://arch.mirrors.lavatech.top/$repo/os/$arch
Server = https://archlinux.mirror.wearetriple.com/$repo/os/$arch
Server = https://mirror.ams1.nl.leaseweb.net/archlinux/$repo/os/$arch

After increasing -m to 0.25 the mirrorlist -vn 5 output became:

# https://nl.mirror.cx/archlinux/$repo/os/$arch ... 0.250997
# https://archlinux.mirror.wearetriple.com/$repo/os/$arch ... 0.235898
# https://mirror.nyaa.vc/archlinux/$repo/os/$arch ... 0.243166
# https://mirrors.xtom.nl/archlinux/$repo/os/$arch ... 0.250669
# https://mirror.ams1.nl.leaseweb.net/archlinux/$repo/os/$arch ... 0.251095
# https://mirror.lyrahosting.com/archlinux/$repo/os/$arch ... unreachable
# https://mirror.nl.cdn-perfprod.com/archlinux/$repo/os/$arch ... unreachable
# https://arch.mirrors.lavatech.top/$repo/os/$arch ... 0.219841
# https://nl.mirror.flokinet.net/archlinux/$repo/os/$arch ... 0.250321
# https://ams.nl.mirrors.bjg.at/arch/$repo/os/$arch ... 0.239855
# https://nl.arch.niranjan.co/$repo/os/$arch ... 0.237894
# https://mirror.mijn.host/archlinux/$repo/os/$arch ... 0.220732
# https://nl.mirrors.cicku.me/archlinux/$repo/os/$arch ... unreachable
# https://mirror.cj2.nl/archlinux/$repo/os/$arch ... 0.238774
# https://mirror.bouwhuis.network/archlinux/$repo/os/$arch ... 0.223691
# https://archlinux.mirror.liteserver.nl/$repo/os/$arch ... 0.224038
Server = https://arch.mirrors.lavatech.top/$repo/os/$arch
Server = https://mirror.mijn.host/archlinux/$repo/os/$arch
Server = https://mirror.bouwhuis.network/archlinux/$repo/os/$arch
Server = https://archlinux.mirror.liteserver.nl/$repo/os/$arch
Server = https://archlinux.mirror.wearetriple.com/$repo/os/$arch

And pacman -Syu finally also updated extra and multilib packages (again).

Curl is the tool used by rankmirrors. Seems like the newer curl version(s) became considerably slower in executing it's commands over the years.

Offline

Board footer

Powered by FluxBB