On 4/13/05, John Newbigin <jnewbigin@xxxxxxxxxxxxxxx> wrote: > My final script for anyone who might need it is: > > #!/bin/bash > unset LANG > export LD_ASSUME_KERNEL=2.2.5 > rpm -qa | wc --lines > rm -rf /var/lib/rpm/__db.00? > rpm --define '__dbi_rebuild nofsync !log !txn !cdb !thread' --rebuilddb > unset LD_ASSUME_KERNEL > rpm -qa | wc --lines > rpm --rebuilddb > rpm -qa | wc --lines > > Note: Watch out for the ! characters. John, What are you doing that causes the corruption? Can you recreate. I have test harness for rpm and I have ran thousands perhaps tens of thousands of rpm transactions with it and have not seen this corruptions. I am reading you right that your turning off nptl by doing the LD_ASSUME_KERNEL stuff and turning off threads in use in rpm when doing the rebuild? I do know of a deadlock issue with scriptlets do an incorrect use of pthread_cond_*: https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=146549 The patch I attached to the bugzilla report fixes this. Just so you know I am the maniac that wrote the autorollback patch for rpm: http://lee.k12.nc.us/~joden/misc/patches/rpm/ And beyond caring about making rpm be able to provide rollback mechanisms that make possible a reliable rollback of an upgrade (I say possible because there is only so much you do about what people do in their scriptlets), I care about anything that causes rpm to be unreliable and unstable. So in short I am really interested in your problem. Cheers...james