[5141] in testers

home help back first fref pref prev next nref lref last post

RPM DB corruption in Linux Athena 9.1 alpha

daemon@ATHENA.MIT.EDU (Greg Hudson)
Sun Apr 28 00:51:07 2002

Date: Sun, 28 Apr 2002 00:51:04 -0400
Message-Id: <200204280451.AAA32189@error-messages.mit.edu>
From: Greg Hudson <ghudson@MIT.EDU>
To: testers@MIT.EDU

Garry has noted some RPM DB corruption on a 9.1 alpha Linux machine.
I believe this could have arisen in one of two ways:

  * I built the staging rpmupdate with Red Hat 7.2 db and rpm
    libraries.  Running the resulting binary on a Red Hat 7.1 system
    might not work quite right.

  * The build root on kenmore had rpm 4.0.3 RPMs in it, so the 9.1
    alpha rpmupdate was built against those libraries.  It's quite
    possible that those libraries are rather buggy compared to the
    current 4.0.4-7x.

I rebuilt the staging rpmupdate against Red Hat 7.1 rpm-4.0.4-7x
libraries, after inspecting the source and deciding that all of the
relevant bugs had been fixed.  I have also updated kenmore's build
root and rebuilt athena-rpmupdate.  I hope these measures will prevent
us from seeing any corruption problems during beta.

One problem still troubles me: Garry and I have both seen updates hang
at the end.  The problem seems to be that a duplicate of rpm's stdout
file descriptor is being held open by a program called minilogd, so
that the "tee" command which logs the update doesn't exit.  Things I
don't understand:

  * What the hell starts minilogd.  It's owned by the initscripts RPM,
    but initscripts doesn't seem to start it; neither does anything in
    /etc/init.d, and it doesn't seem to be running on any of the
    systems I've checked.

  * How minilogd is being started such that all the excess file
    descriptors aren't closed; normally, the "daemon" command in
    init.d scripts takes care of that.

  * Why the rpmlib fixes I pushed through back in April 2001 didn't
    prevent this problem.  It may be that all the hung updates
    happened with an rpmupdate linked against rpm-4.0.3, in which case
    we shouldn't see this problem again.

home help back first fref pref prev next nref lref last post