Bug 13014

Summary: Core dumping after --rebuilddb on rpm-4.0-0.45
Product: [Retired] Red Hat Raw Hide Reporter: Reuben Farrelly <reuben-redhatbugzilla>
Component: rpmAssignee: Jeff Johnson <jbj>
Status: CLOSED RAWHIDE QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: 1.0CC: satan
Target Milestone: ---   
Target Release: ---   
Hardware: i386   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2000-07-07 01:04:49 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Reuben Farrelly 2000-06-25 14:34:24 UTC
As follows...the upgrade did appear to take place as all the files 
in /var/lib/rpm were timestamped with the new date, yet the rpm database 
seems to still be unusable...

[root@tornado reuben]# rpm -q rpm
db3 error(-30990) performing db->open: DB_OLDVERSION: Database requires a 
version upgrade
db3 error(-30990) performing db->open: DB_OLDVERSION: Database requires a 
version upgrade

--> The rpm database is in db1 format, not the suggested db3 format.
    If you have just upgraded the rpm package you need to convert
    your database to db3 format by running "rpm --rebuilddb" as root.

[root@tornado reuben]# rpm --rebuilddb
db3 error(-30990) performing db->open: DB_OLDVERSION: Database requires a 
version upgrade
db3 error(-30990) performing db->open: DB_OLDVERSION: Database requires a 
version upgrade
[root@tornado reuben]# rpm -q rpm

--> An rpm database in db1 format exists in /var/lib/rpm/packages.rpm.
    Please convert to db3 format by running "rpm --rebuilddb" as root.

Segmentation fault (core dumped)
[root@tornado reuben]#

And it got really yukky when I went to downgrade to rpm-3.05.  I had to 
manually copy the binary of /bin/rpm  from another system since the newer 
one just installed could not read the converted database...

A GDB dump appears to be not a lot of use but here it is anyway:

[root@tornado /tmp]# gdb rpm core 
GNU gdb 5.0
Copyright 2000 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you 
are
welcome to change it and/or distribute copies of it under certain 
conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386-redhat-linux"...(no debugging symbols 
found)...

warning: core file may not match specified executable file.
Core was generated by `/usr/lib/rpm/rpmq -q -- rpm'.
Program terminated with signal 11, Segmentation fault.
#0  0x4013c658 in ?? ()
(gdb) bt
#0  0x4013c658 in ?? ()
#1  0x4013c60b in ?? ()
#2  0x4007a4c8 in ?? ()
#3  0x40067314 in ?? ()
#4  0x40068145 in ?? ()
#5  0x400682f8 in ?? ()
#6  0x40064f40 in ?? ()
#7  0x804faa7 in ?? ()
#8  0x400f3c37 in ?? ()

[NB: I have kept the core file if it's any further use to you]

Comment 1 Sammy 2000-06-26 20:36:13 UTC
Get the source from CVS http://www.rpm.org/cvs.html follow the CVS
instructions to dowload the directory (get cvs rpm's if you don't
have cvs installed). Also get the latest libtool (1.3.5) as you need
this. Once you have this all you need to do is to run the autogen.sh
and make and make install. This converts the databases and does everything
else without a glitch. I also used rpm.spec in cvs to build new rpms for
4.0-0.45 and they worked fine. I am not sure what rawhide is doing so
that their rpm's for rpm-4.0 are having lots of problems. This was the
same story with 0.33!

Comment 2 bugzilla 2000-07-01 09:30:25 UTC
Argg, I can't get the source from the CVS tree to compile. Would
someone be so kind as to email me their own good RPM? Any help
would be greatly appreciated!

<sting.com>

Comment 3 SB 2000-07-07 01:04:49 UTC
That gdb of your core dump is useless, look cloesly near the beginning
of the gdb output:
warning: core file may not match specified executable file.
             Core was generated by `/usr/lib/rpm/rpmq -q -- rpm'.

try doing:
gdb /usr/lib/rpm/rpmq core

That will get an accurate core dump to do a bt on.  When you do, post
it here, otherwise not much can be extracted from your gdb output.

-Stan Bubrouski

Comment 4 Jeff Johnson 2000-07-10 19:49:03 UTC
Is this still a problem? If so, send me mail <jbj>  and I'll send you
a conversion
procedure. Otherwise, I'll chalk this problem up to converting from db3-3.0.55
-> db3->3.1.14
between beta1 and beta2.