Bug 52789 - RPM install of XFree86 results in DB3 error
RPM install of XFree86 results in DB3 error
Status: CLOSED WORKSFORME
Product: Red Hat Public Beta
Classification: Retired
Component: rpm (Show other bugs)
roswell
i386 Linux
medium Severity medium
: ---
: ---
Assigned To: Jeff Johnson
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2001-08-28 23:08 EDT by Nick Simicich
Modified: 2008-05-01 11:38 EDT (History)
0 users

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2001-10-02 17:08:34 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
This is a tar of /var/lib/rpm before I did the rpm -rebuilddb (32.89 MB, application/octet-stream)
2001-08-28 23:35 EDT, Nick Simicich
no flags Details

  None (edit)
Description Nick Simicich 2001-08-28 23:08:33 EDT
From Bugzilla Helper:
User-Agent: Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)

Description of problem:
After a crash, I attempted to install the xfree86 package from rawhide to 
fix the xfs bug.

After the packages partially installed, it ended with:

error: db3 error(-30998) from db->close: DB_INCOMPLETE: Cache flush was
unable to complete
rpmdb: Overflow page 3860 of invalid type
rpmdb: First overflow page 344 has a prev_pgno
rpmdb: Overflow item incomplete on page 5718
error: db3 error(-30985) from db->verify: DB_VERIFY_BAD: Database
verification failed

Subsequently, any attempt to run any rpm command, query or another 
install, resulted in the same error.

I copied all files out of /var/lib/rpm and did a rpm --rebuilddb to 
rebuild the indices.  This gave me the following meaningless (to me) error 
messages:

[root@parrot rpm]# rpm -v --rebuilddb
error: rpmdb: damaged header instance #1872 retrieved, skipping.
error: record number 2057 in database is bad -- skipping.
[root@parrot rpm]#

Version-Release number of selected component (if applicable):


How reproducible:
Didn't try


Additional info:

up2date hung before I did the --rebuilddb with no error messages at the 
step where it was "getting package list".  After rebuilding the database, 
up2date worked again.  I copied the contents of /var/lib/rpm into another 
directory before I did the rebuild. I am going to try and tar those files 
up and attach them.

I'm especially worried about the rpmdb failures in the --rebuilddb.  I 
didn't think that this syste was an old crufty one.

Here is the entire command failure scenario and messages:

> [root@parrot xfree]# rpm -Fvh *.rpm
> Preparing...                ########################################### 
[100%]
>    1:XFree86-Xvfb           ########################################### 
[  7%]
>    2:XFree86-doc            ########################################### 
[ 14%]
>    3:XFree86-libs           ########################################### 
[ 21%]
>    4:XFree86-Xnest          ########################################### 
[ 28%]
>    5:XFree86-devel          ########################################### 
[ 35%]
>    6:XFree86-tools          ########################################### 
[ 42%]
>    7:XFree86-twm            ########################################### 
[ 50%]
>    8:XFree86-xdm            ########################################### 
[ 57%]
>    9:XFree86-xf86cfg        ########################################### 
[ 64%]
>   10:XFree86-xfs            ########################################### 
[ 71%]
>   11:XFree86-100dpi-fonts   ########################################### 
[ 78%]
>   12:XFree86-75dpi-fonts    ########################################### 
[ 85%]
>   13:XFree86-ISO8859-2-100dp########################################### 
[ 92%]
>   14:XFree86-ISO8859-9-100dp########################################### 
[100%]
> error: db3 error(-30998) from db->close: DB_INCOMPLETE: Cache flush was
> unable t
> o complete
> rpmdb: Overflow page 3860 of invalid type
> rpmdb: First overflow page 344 has a prev_pgno
> rpmdb: Overflow item incomplete on page 5718
> error: db3 error(-30985) from db->verify: DB_VERIFY_BAD: Database
> verification f
> ailed
Comment 1 Nick Simicich 2001-08-28 23:35:56 EDT
Created attachment 30034 [details]
This is a tar of /var/lib/rpm before I did the rpm -rebuilddb
Comment 2 Jeff Johnson 2001-08-29 13:59:53 EDT
Can you add a pointer (i.e. URL) to the tarball? rpm databases are
too large for bugzilla attachments.

The error message indicates that header instance #1872
failed certain sanity checks, and so was skipped. That
means that a single package instance was deleted
from the database.
Comment 3 Nick Simicich 2001-10-02 04:10:41 EDT
This hs been widely reported. I did what I could to save the state.  When rom 
took the files and announced that they were stashed, I wiped them.  If you 
wiped the files rather than saving them yourselves I don't know what to do.  
Bugzilla should not take files that you are not going to tryto preserve, if I 
had gotten a "too big" note at the time, I might not have wiped the file.

I would hope that since this was reported over and over and over again on the 
mailing list that someone might have figured out the scenario and figured out 
ho to reproduce it.
Comment 4 Jeff Johnson 2001-10-02 08:32:55 EDT
Reported over and over on *which* mailing list?

And, if you want a fix, I need to be able to reproduce
the problem somehow. I don't see this problem.
Comment 5 Nick Simicich 2001-10-02 14:22:35 EDT
The roswell-list@redhat.com mailing list.

You know, the one that Redhat set up to discuss the beta?

A couple of other people reported problems that I thought were similar. Maybe 
you should look in the archives.  I thought that there was a pattern.

https://listman.redhat.com/mailman/listinfo/roswell-list
Comment 6 Alexei Podtelezhnikov 2001-10-02 14:49:02 EDT
I was under impression that jbj was asking you about the location of RPM file
which fails. Can you post http or ftp link? You jknow why he's asking? He thinks
that the problem might be in the corrupted file. Did you try RPM from some other
major mirror?
Comment 7 Nick Simicich 2001-10-02 17:08:28 EDT
No, that was not it.  Why would a rpm file cause a failure in the db3 routines?

Read the decreiption.  up2date hung, and then when I tried to do something else 
(install some rpm files) my database was hosed.  I tried to grab doc at the 
time, to tar up my rpm database so that someone could restore it and try to 
figure out why this happened.  I remember reading about other people who had 
db3 errors.  

So this was not a copy of a particular rpm file that was on a file server 
somewhere, it was a copy of the rpm database directory in the failing state.  
It was even called an "rpm database" by the person who deleted it.  It was 
unique documentation, it was uploaded, and then I assumed it was safely in the 
hands of bugzilla, so I deleted it.

If you can't work on the problem from the description, we need to chalk this up 
as a bugzilla failure.  bugzilla should not take attachments that are too big 
and if it does, they should not be deleted, they should be extracted to 
someplace within redhat and a pointer should be inserted by whoever maintains 
bugzilla who decided that the accepted doc was too big.  To just delete the 
file and say, "Can you provide a pointer" is kind of hosed.  The answer to the 
question that should not be asked is no.
Comment 8 Jeff Johnson 2001-10-02 18:15:05 EDT
OK, will close the problem WORKSFORME as I can't
reproduce the problem. The bugzilla problem with
rpmdb size attachments is known, there's little
that I can do about the problem, only suggest a workaround

The error is showing up in db3 routines because that's
what rpm uses to keep track of the installed package base.

Note You need to log in before you can comment on or make changes to this bug.