Description of problem: rpm-4.4.2-33.el5 How reproducible: Sometimes. Happened now for the second time in three days. Steps to Reproduce: 1. rpm -qa Actual results: rpm hangs. Error message in syslog: kernel: rpmq[4141]: segfault at 0000000000000078 rip 00000036d46d290b rsp 00007fff662ff2a0 error 4 Expected results: rpm query completes successful Additional info: Have to move away the __db* files in /var/lib/rpm. Otherwise all new rpm -qa invocations just hangs.
Segafualts and loss of data are likely due to removing an rpmdb environment without correcting other problems in the rpmdb. FYI: Most rpmdb "hangs" are now definitely fixed by purging stale read locks when opening a database environment in rpm-4.4.8-0.4. There's more todo, but I'm quite sure that a large class of problems with symptoms of "hang" are now corrected. Detecting damaged by verifying when needed is well automated in rpm-4.4.8-0.4. Automatically correcting all possible damage is going to take more work, but a large class of problems is likely already fixed in rpm-4.4.8-0.8 as well. UPSTREAM
The random breakage is almost certainly caused by kernel 2.6.18-19 mmap() bug which was present in some RHEL 5 beta kernels. RHEL 5 GA and later are not affected.