PDA

View Full Version : PSA: RPM database issues after update to libdb-5.3.28-21 on Fedora 24 and Fedora 25



antikythera
13th June 2017, 09:47 AM
By adamw on June 9, 2017

Hi there, folks!

This is an important PSA for Fedora 24, 25 and 26 (pre-release) version users: if you recently updated and got some kind of error or crash and now you’re getting RPM database errors, you need to do the old reliable RPM database fix dance:


# rm -f /var/lib/rpm/__db*
# rpm --rebuilddb
and all should be well again. We do apologize for this.

Longer version: there’s a rather subtle and tricky bug in libdb (https://bugzilla.redhat.com/show_bug.cgi?id=1394862) (the database that RPM uses) which has been causing problems with upgrades from Fedora 24/25 to Fedora 26. The developers have made a few attempts to fix this, and testing this week had indicated that the most recent attempt – libdb-5.3.28-21 – was working well. We believed the fix needed to be applied both on the ‘from’ and the ‘to’ end of any affected transaction, so we went ahead and sent the -21 update out to Fedora 24, 25 and 26.

Unfortunately it now seems like -21 may still have bugs that were not found in the testing; in the last few hours several people have reported that they hit some kind of crash during an update involving libdb -21, and subsequently there was a problem with their RPM database.

While we investigate and figure out what to do about fixing this properly, in the short term, if you’re affected, just doing the old “rebuild the RPM database” trick seems to resolve the problem:


# rm -f /var/lib/rpm/__db*
# rpm --rebuilddb
It’s unfortunate that we have to break that one out of cold storage (I hadn’t had to do it for so long I’d almost forgotten it…), but it should at least get you back up and working for now.

We do apologize sincerely for this mess, and we’ll try and do all we can to fix it up ASAP.

Source (https://www.happyassassin.net/2017/06/09/psa-rpm-database-issues-after-update-to-libdb-5-3-28-21-on-fedora-24-and-fedora-25/)

User808
13th June 2017, 10:49 AM
What you mean: updating system or upgrading from Fedora version to one higher ?

What type of error ? error message appearing in terminal during update/(or upgrade) or other form of error ? Please explain !

antikythera
13th June 2017, 11:45 AM
it affects any package update where you may have encountered an error but also a distribution upgrade as well

User808
13th June 2017, 12:06 PM
it affects any package update where you may have encountered an error but also a distribution upgrade as well

1) how I know an error occurred or not ?

2) since how long this database issue dated ?

3) does error in my bluetooth (blueberry), that you discussed yesterday, could be related to this issue ?

4) in this weak I faced error with portable program: ICQ messenger Linux package downloaded from their site: they installed but not working (just launched but I can not log in).

5) regarding code:

# rm -f /var/lib/rpm/__db*
# rpm --rebuilddb

a) how long it may need ? Long time, like over night ?

b) is their a risk from use it if I has no error ?

c) regarding "__db*" are you sure from this: 2 underscore like this __ I mean _ then _ so become __

d) does this could need Internet connection ?

antikythera
13th June 2017, 12:47 PM
how will you know? you'd get an error message like this (https://bugzilla.redhat.com/show_bug.cgi?id=1394862#c100)

as for the bluetooth issue, no it will not have caused that

refer to the bugzilla links in the first post for the exact date it was first noticed.

the command completes in seconds and the format is correct. the line is a double underscore.

risk? marginal (https://docs.fedoraproject.org/en-US/Fedora_Draft_Documentation/0.1/html/RPM_Guide/ch04s05s02.html). any rpm rebuild shouldn't break anything but if you haven't had any rpm errors you shouldn't run it just in case. the command can be run offline. I'd also do the following so that next time you run anything that uses dnf it also gets fresh package and metadata from the servers.


dnf clean all

keep calm and carry on...

User808
13th June 2017, 01:03 PM
how will you know? you'd get an error message like this (https://bugzilla.redhat.com/show_bug.cgi?id=1394862#c100)

1) You mean error message in response to "sudo dnf update --refresh -v" ?

2) Why update not upgrade ? I mean "sudo dnf upgrade --refresh -v"

3) What -v mean ?

antikythera
13th June 2017, 01:39 PM
the -v switch is a universal switch used by many command line applications to direct them to display verbose (full) output.

any more questions please open another thread.