We have included a workaround for this Owl upgrade issue into our latest build of RPM (4.2-owl22). When a pre-NPTL Owl system is upgraded, the /var/lib/rpm/__db.00? files will get removed automatically, thereby preventing the problem. This automatic removal only happens once, when going from a pre-NPTL to a with-NPTL build of RPM (e.g., when upgrading Owl 2.0-stable to Owl-current - or to our upcoming release). Simon - thank you for testing Owl-current and for reporting the issue! On Sun, Mar 28, 2010 at 01:01:41AM +0300, Solar Designer wrote: > ... I researched the issue some further. It appears to be quite normal > that the expected file format of /var/lib/rpm/__db.001 changes when RPM > built against NPTL is installed on a system that was previously using > RPM built against LinuxThreads. That file is memory-mapped and it > contains mutexes. Unfortunately, RPM does not distinguish this file > format change from it having accessed the file in an inconsistent state, > so it treats this as a temporary error and keeps retrying with the > confusing message that you saw. > > The workaround is to ensure that there's no rpm process running and to > "rm /var/lib/rpm/__db.00?". There's no need to run "rpm --rebuilddb" > after that, even though this is commonly suggested (cure for a different > disease). Once the old __db.00? files are removed, RPM works again (it > silently re-creates the files) and the issue does not re-occur. > > I still have no idea why the workaround didn't appear to work for Simon. > It could have something to do with the order in which packages were > being rebuilt/upgraded on Simon's system. > > This same error message may appear in many other cases. The above > description pertains to the specific known issue with upgrading an Owl > system to our latest packages (built on March 23). > > AlexanderReceived on Wed Mar 31 2010 - 05:26:42 PDT
This archive was generated by hypermail 2.2.0 : Wed Mar 31 2010 - 05:26:56 PDT