[Centos] rpm corruption

James Olin Oden james.oden at gmail.com
Thu Apr 14 01:55:32 UTC 2005


On 4/13/05, John Newbigin <jnewbigin at ict.swin.edu.au> 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



More information about the CentOS mailing list