Historical bug tracker for the Pacman package manager.

The pacman bug tracker has moved to gitlab:

This tracker remains open for interaction with historical bugs during the transition period. Any new bugs reports will be closed without further action.

FS#70065 - pacman: strange behavior during update process

Attached to Project: Pacman
Opened by Karl-Heinz Strobl (Koarl) - Thursday, 18 March 2021, 13:55 GMT
Last edited by Eli Schwartz (eschwartz) - Thursday, 18 March 2021, 14:04 GMT
Task Type Bug Report
Category General
Status Closed
Assigned To No-one
Architecture All
Severity Critical
Priority Normal
Reported Version 5.2.2
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No


Summary and Info:

These days I did a system update as a hundreds of times before via "sudo pacman -Syu". There where let's say 20 packages to upgrade. One of these packages was broken (ruby-mocha, I did bug report today). Pacman did not update any of the "good" packages because of that one single "bad" package.
The next day there where let's say 50 packages to upgrade with one "bad" package (ruby-mocha). Pacman again did not apply any of the updates because of one single broken package. I could have done so until there would have been hundreds of packages to upgrade and pacman still refusing to update because of one single small broken package.
Of course I bypassed the problem by invoking "sudo pacman -Syu --ignore ruby-mocha" so that pacman upgraded all the other "good" packages.
But in my opinion this behavior of pacman makes absolutely no sense at all. It would make much more sense to install all the correct packages and discard the one and only broken package without forcing the user to solve this problem by himself.
This nonlogical behavior can also cause security problems when critical and important bug fixes can't be applied because of a small error in a little and unimportant package.
I hope that makes sense and sorry if there are linguistic mistakes because I am a german Arch-lover.

Steps to Reproduce:

Try to update a bunch of packages with one of them being broken.
This task depends upon

Closed by  Eli Schwartz (eschwartz)
Thursday, 18 March 2021, 14:04 GMT
Reason for closing:  Won't implement
Comment by Eli Schwartz (eschwartz) - Thursday, 18 March 2021, 13:59 GMT
You've submitted a "critical" priority bug report claiming that the pacman software is conceptually broken due to enforcing consistent database transactions.

I don't see how this is "critical" just because you misinterpret it as a security bug because you want to make it sound scary.
Comment by Eli Schwartz (eschwartz) - Thursday, 18 March 2021, 14:04 GMT
No, pacman will not change to allow broken transactions to occur.

Manually ignoring a problematic package that you've decided is not mission-critical is the correct approach on distributions unlike archlinux -- i.e. distributions that support partial upgrades.

Fixing your keyring is the correct approach on archlinux, since there is a high risk that you've probably broken any packages depending on the ignored package. If you're having a hard time with this, use the user help forums (or IRC, or the mailing list), there are many people eager to help you out.

Cavalierly committing a database transaction with knowingly broken integrity that contradicts the original intention of the user (-Syu) is not an option and pacman will not be modified to do this.