Ok, I'm still beating my head against this...
Running RPM 4.1, on ARM, I can do this:
rpm --install --nodeps --ignorearch ftp-*.rpm
which seems to work, and then do
rpm -qa
which gives no output.
In /var/lib/rpm, I tried this:
bash-2.05b# db_verify Packages
db_verify: region error detected; run recovery.
db_verify: Unreferenced page 3
db_verify: DB->verify: Packages: DB_VERIFY_BAD: Database verification failed
bash-2.05b# db_verify -N Packages
db_verify: region error detected; run recovery.
db_verify: Unreferenced page 3
db_verify: DB->verify: Packages: DB_VERIFY_BAD: Database verification failed
bash-2.05b# db_dump Packages
db_dump: region error detected; run recovery.
VERSION=3
format=bytevalue
type=hash
HEADER=END
DATA=END
bash-2.05b#
bash-2.05b# db_dump -r Packages
db_dump: region error detected; run recovery.
VERSION=3
format=bytevalue
type=hash
HEADER=END
00000039000007740000003f000000070000070f000000100000006400000008000000000000000
[snip] 554e4b4e4f574e00 DATA=END
rpm --rebuilddb fixes the errors, but also drops the data. 'db_dump -r Packages' then shows the same thing as 'db_dump Packages'.
So it appears to me that rpm is not writing to the database correctly. Any clues as to what I should be looking for?
Well, the db interface with python appears to be working... so I may be able to do some low-level testing that way. (I have to preload libelf for some reason. I'll have to track that down.)
bash-2.05b# cat rpmtesting.py #!/usr/bin/python
import rpm import rpmdb
dbhandle = rpmdb._db.DB()
print dbhandle.open( 'mytestdatabase', rpmdb._db.DB_BTREE, rpmdb._db.DB_CREATE, 0664 )
print dbhandle.put( 'mykey', 'mydata' )
print dbhandle.get( 'mykey' )
print dbhandle.close()
print "Done with create... checking for data:" dbhandle = rpmdb._db.DB() print dbhandle.open( 'mytestdatabase' ) print dbhandle.get( 'mykey' ) print dbhandle.close()
bash-2.05b# ./rpmtesting None None mydata None Done with create... checking for data: None None None bash-2.05b#
When the db is re-opened, there isn't any data there. Not good.
bash-2.05b# db_verify mytestdatabase bash-2.05b# db_dump mytestdatabase VERSION=3 format=bytevalue type=btree HEADER=END DATA=END bash-2.05b# db_dump -r mytestdatabase VERSION=3 format=bytevalue type=btree HEADER=END DATA=END bash-2.05b# strings mytestdatabase bash-2.05b#
This looks like the data isn't making it to disk... Perhaps I have something wrong in configure? Or....?
Any ideas?
Eli --------------------. "If it ain't broke now, Eli Carter \ it will be soon." -- crypto-gram eli.carter(a)inet.com `-------------------------------------------------
------------------------------------------------------------------------ Confidentiality Notice: This e-mail transmission may contain confidential and/or privileged information that is intended only for the individual or entity named in the e-mail address. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution or reliance upon the contents of this e-mail message is strictly prohibited. If you have received this e-mail transmission in error, please reply to the sender, so that proper delivery can be arranged, and please delete the message from your computer. Thank you. Inet Technologies, Inc. ------------------------------------------------------------------------