Mirrors failing during sync - 404 when installing packages

Development on core packages and the distribution goes on in here.

Mirrors failing during sync - 404 when installing packages

Postby Malvineous » Wed Aug 18, 2021 2:56 pm

Does anyone know how the Arch Linux ARM mirrors are updated? I am wondering whether it's done with rsync --delete, as I'm currently facing a problem where I am unable to install a package because the sync seems to be incomplete.

If I run "pacman -Sy util-linux-libs" then it wants to install version 2.37.1-3, however the download fails with a HTTP 404 error. If I go and look on the server (http://au.mirror.archlinuxarm.org/armv6h/core/) it only contains a file for a *newer* version, 2.37.2-1. In other words, the new package has been uploaded, the old package has been deleted, but the database itself hasn't yet been updated to point at the new version.

This issue seems to happen fairly often, but usually waiting 5-10 minutes and trying again works successfully. Unfortunately in this case it has been much longer than that and it's still failing. I'm wondering whether the sync process could be improved to remove this inconsistent state altogether?

I am thinking (assuming this is the problem) that rsync should be changed to use the --delete-after option, so that the old package files are still available until the mirror sync has completed. Although this won't solve the problem completely, it would still allow package updates during a larger part of the mirror sync process.

Even better would be a three-stage process - first add the new packages, second update the database files, and last remove the old packages. That way would take longer to do the sync but it would completely remove any inconsistent state.

Is this possible, or is this package update problem caused by something else entirely?
Malvineous
 
Posts: 40
Joined: Sat Mar 11, 2017 1:45 pm

Re: Mirrors failing during sync - 404 when installing packag

Postby unformatted » Wed Aug 18, 2021 4:25 pm

This morning and about an hour ago I installed a package and all was fine.
Before installing anything I always upgrade the system first using "pacman -Syu" and I install packages using "pacman -S".
If you try to install a package without upgrading first you might run into trouble. I've been there a couple of times...
unformatted
 
Posts: 119
Joined: Tue Mar 09, 2021 5:23 pm

Re: Mirrors failing during sync - 404 when installing packag

Postby Malvineous » Sat Aug 21, 2021 8:12 am

Yeah this system was only a day or so old since the last full pacman -Syu so that's not the problem. The problem was that the local mirror was only part way through the sync from the main mirror so some files weren't there yet. I tried it again today (without having changed anything) and it's working now as expected, since the sync would have finished by now.

But it's a regular issue I run into, but only on Arch Linux ARM, not the desktop/x86 version. They seem to do their mirror syncs in such a way that you never see an inconsistent state on the mirror, so I'm hoping Arch Linux ARM could do the same.

EDIT: Case in point, now 'mesa' is the package that can't be upgraded, but 'util-linux-libs' that wasn't working the other day is fine now:

$this->bbcode_second_pass_code('', '
# pacman -Syu
:: Synchronizing package databases...
core is up to date
extra is up to date
community is up to date
alarm is up to date
aur is up to date
:: Starting full system upgrade...
there is nothing to do

# pacman -S mesa
error: failed retrieving file 'mesa-21.2.1-1-armv6h.pkg.tar.xz' from au.mirror.archlinuxarm.org : The requested URL returned error: 404
warning: failed to retrieve some files
error: failed to commit transaction (failed to retrieve some files)
Errors occurred, no packages were upgraded.
')
Malvineous
 
Posts: 40
Joined: Sat Mar 11, 2017 1:45 pm


Return to Arch Linux ARM

Who is online

Users browsing this forum: No registered users and 3 guests