FS#14243 - upgrade causes problems when archlinux repository mirror is not up-to-date

Attached to Project: Arch Linux
Opened by Tomas Mudrunka (harvie) - Tuesday, 14 April 2009, 20:33 GMT
Last edited by Andrea Scarpino (BaSh) - Monday, 27 April 2009, 23:41 GMT
Task Type Bug Report
Category System
Status Closed
Assigned To No-one
Architecture All
Severity High
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 2
Private No

Details

Description:
Sometimes when executing full system upgrade (pacman -Syu) and lot of new packages are available (new GNOME, etc...) there can be problems, when local repositories have old versions of packages which are not strictly required by other packages which are already in mirror.

so for example few weeks ago there was new gnome and it tooked 100% of CPU without new build of xorg-server and today i was upgrading gnome again and after upgrade the "shutdown" command disappeared from my menu, now it appeared again, when packages appeared on mirror (and i upgraded them):

# Setup-Entry
Server = ftp://ftp.sh.cvut.cz/MIRRORS/arch/$repo/os/i686

so mirrors should look for new packages more often... or this issue can be fatal sometime in the future.
This task depends upon

Closed by  Andrea Scarpino (BaSh)
Monday, 27 April 2009, 23:41 GMT
Reason for closing:  Fixed
Comment by Viliam Šimovič (siigot) - Tuesday, 14 April 2009, 23:37 GMT
I have also noticed that especially cvut.cz mirror server has more outdated packages than other mirrors...This made some problems to me too.
Comment by Eric Belanger (Snowman) - Tuesday, 14 April 2009, 23:41 GMT
There is no easy way to solve this problem. This happens when a large number of packages (several 100's of MB) is added/moved to a repo. Even if mirrors would update more often, there not enough bandwidth on the main Arch server to provide all the packages to all the mirrors at the same time. You also need to account on the download speed of the mirrors. The best solution is to wait for your mirror to sync completely when these big updates happens.
Comment by Tomas Mudrunka (harvie) - Wednesday, 15 April 2009, 17:02 GMT
IMHO there are two possible solutions...
1.) more strictly declared dependencies (this is bad idea, because it will remove the freedom of package selection)
2.) more dynamical mirroring. you can check original repository for new version of package without downloading it. for example you can download md5sums of all packages from repository and compare it to local mirror to know which packages you should renew. or you can use something like LFTPFS ( http://aur.archlinux.org/packages.php?ID=24117 ). Of course wee don't need to overload the main repository, but this is bad too. And other mirrors are working much better than especialy cvut.cz
Comment by Tomas Mudrunka (harvie) - Friday, 17 April 2009, 23:27 GMT
i also remember that i wasn't able to open any console emulator in X after full system upgrade few weeks ago, until upgrade from synced mirror...
in another case it was impossible to get root acces from X.

Another solution:
3.) And why not modify pacman to check multiple mirrors and select the one with latest packages?
For example apt-get based systems are doing this. So i can download 90% of packages from half-synced mirror in my country, other 9% from bit more updated mirror, which is in nearer country and for example the left 1% which is not on any mirror yet from original archlinux repository. This fallback method should protect the system from being bricked by slow mirror.
Comment by Tomas Mudrunka (harvie) - Saturday, 18 April 2009, 00:02 GMT
Added to pacman tasklist: http://bugs.archlinux.org/task/14353
Comment by Tomas Mudrunka (harvie) - Sunday, 19 April 2009, 15:51 GMT
I have also reported this issue to mirror administrator and he changed mirror update to TWICE a HOUR.
But it will be better to fix this in pacman also.
Original message:
______________________________________________________________________

Ahoj,
Zkousel jsem update archlinuxu - mirror je maly a update trva par
sekund - a i ted nebyl aktulani = stahovaly se nove soubory.

Z nasi strany neni problem mirrorovat casteji. Zatim jsem to nastavil
(podobne jako gentoo-portage) na stahovani zmen 2x za hodinu. Takze
pokud se updatem neco rozbije, do pul hodiny se to opravi dalsim.

S pozdravem
Stanislav Gráf
S.Graf@sh.cvut.cz

> ------ Forwarded Message
> From: Tomáš Mudruňka <Harvie@email.cz>
> Date: Sat, 18 Apr 2009 01:33:00 +0200 (CEST)
> To: <M.Dubec@sh.cvut.cz>
> Subject: ftp.sh.cvut.cz
>
> Ahoj,
> hele neni nejaky zpusob, jak kontrolovat novy balicky v originalnim
> repozitari archlinuxu casteji (bez nutnosti stahovat prilis mnoho dat) a
> potom v pripade existence techto novych balicku upgradovat vas mirror o neco
> drive. Casto se totiz me a dalsim lidem stava, ze se vase synchronizace
> trefi zrovna doprostred vydavani nakyho velkyho updatu, ale system se z
> vaseho mirroru stejne zaktualizuje i presto, ze nektere balicky nejsou jeste
> na vasem mirroru v potrebne verzi (napriklad nejake volitelne zavislosti,
> bez kterych se dany software zaktualizuje). Potom nastavaji problemy se
> starsim buildem volitelne zavislosti pouzivanym vedle nove verze nektereho
> balicku. V zaveru to dela docela neprijemnosti, blize je problem popsany
> tady: http://bugs.archlinux.org/task/14243
>
> Snad se vam s tim podari neco udelat, kazdopadne diky za mirror.
> S pozdravem
> Harvie

Loading...