LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Mandriva (http://www.linuxquestions.org/questions/mandriva-30/)
-   -   RPM segmentation fault & database corruption (http://www.linuxquestions.org/questions/mandriva-30/rpm-segmentation-fault-and-database-corruption-546754/)

make 04-17-2007 08:40 AM

RPM segmentation fault & database corruption
 
Many Mandriva 2007 users have probably already experienced this notorious bug in the distro. More about it here:

http://wiki.mandriva.com/en/Releases...va/2007/Errata
http://qa.mandriva.com/show_bug.cgi?id=27987

V3 binary RPM's are installed in some cases incorrectly as source RPM's, causing a severe database corruption and crippling the whole system.

This is a very common problem I've seen on at least 10 computers running Mandriva 2007. I actually find it odd no-one has started thread about it here yet. I am trying to stick only with the official sources now (+ contrib & PLF) and the new version of rpm in the testing-branch (http://club.mandriva.com/xwiki/bin/v.../MirrorFinder2) fixes the actual bug from the package manager (HIGHLY recommended BEFORE you run into this problem!). However, I have questions:


1) How can I actually fix all these corrupted systems? Recovering /var/lib/rpm from an old backup (just after the system installation) does not help. "rm -f /var/lib/rpm/__* && rpm --rebuilddb" does not help. I can't possibly trace every single RPM packet that has been installed to them. And would removing those old V3 packets even fix it?

2) HOW do I actually identify incompatible RPM packets (V3)? "file packet.rpm" shows "V3" or "sticky V3" even for the official RPM packets tagged with "mdv2007" on the Mandriva installation DVD. How to identify too old and incompatible RPM files? Mandriva 2007 only supports V4 RPM format.


While I find Mandriva 2007 to be very stable and relatively bug-free, this package management bug is even more serious than the one SuSE 10.1 had. It cripples the whole system and I have no idea how to fix those systems without a full re-install.

Ixthusdan 04-17-2007 09:42 AM

It is always best to install rpm's that are intended for a specific distro/release. If I find something I like not included in a particular distro, I use a tarball or compile it. rpmbuild is also useful, if there is a source rpm.

If the commands for rebuilding do not help, you'll have to reinstall. I did not encounter any problems from this bug in 2007, 2007RC's, or the 2007.1 release.

make 04-17-2007 09:56 AM

Quote:

Originally Posted by Ixthusdan
It is always best to install rpm's that are intended for a specific distro/release. If I find something I like not included in a particular distro, I use a tarball or compile it. rpmbuild is also useful, if there is a source rpm.

That is indeed correct. However, I have several RPM's that are not made spefically for Mandriva, but used to work perfectly with it (generic RPM's for example). Until now. These RPM's do not conflict with the distro or miss any dependencies, so it seems completely idiotic that Mandriva decided not to support the V3 RPM's, making even older RPM's from Mandriva incompatible with 2007. I can't find all the software I need compiled for Mandriva and compiling big programs usually either fails or is too time-consuming.

I guess I will end up extracting all the old RPM's I have and building them myself into a new RPM packet on Mandriva 2007... But I still haven't figured out how to extinguish between V3 and V4 RPM files, as the file-command always shows V3 even for V4 RPM's. This would be important for me, to detect which files are incompatible with Mandriva 2007.


All times are GMT -5. The time now is 07:28 PM.