From Bugzilla Helper: User-Agent: Mozilla/5.0 Galeon/1.2.5 (X11; Linux i686; U;) Gecko/20020809 Description of problem: Since few days, rpm dont work anymore Version-Release number of selected component (if applicable): How reproducible: Always Steps to Reproduce: 1. rpm --rebuilddb (or rpm -Uvh something.rpm..) 2. Wait a little. Actual Results: Nothing. Expected Results: should install a package or rebuild the db.. whatever.. Additional info: [root@enclume ~]# strace rpm --rebuilddb [snip a lot of stuff..] open("/var/lib/rpm/Packages", O_RDONLY|O_LARGEFILE) = 3 fcntl64(3, F_SETFD, FD_CLOEXEC) = 0 fstat64(3, {st_mode=S_IFREG|0644, st_size=18980864, ...}) = 0 brk(0x805a000) = 0x805a000 select(0, NULL, NULL, NULL, {0, 1000}) = 0 (Timeout) select(0, NULL, NULL, NULL, {0, 2000}) = 0 (Timeout) select(0, NULL, NULL, NULL, {0, 4000}) = 0 (Timeout) select(0, NULL, NULL, NULL, {0, 8000}) = 0 (Timeout) select(0, NULL, NULL, NULL, {0, 16000}) = 0 (Timeout) select(0, NULL, NULL, NULL, {0, 32000}) = 0 (Timeout) select(0, NULL, NULL, NULL, {0, 64000}) = 0 (Timeout) select(0, NULL, NULL, NULL, {0, 128000}) = 0 (Timeout) select(0, NULL, NULL, NULL, {0, 256000}) = 0 (Timeout) select(0, NULL, NULL, NULL, {0, 512000}) = 0 (Timeout) select(0, NULL, NULL, NULL, {1, 0}) = 0 (Timeout) select(0, NULL, NULL, NULL, {1, 0}) = 0 (Timeout) select(0, NULL, NULL, NULL, {1, 0}) = 0 (Timeout) select(0, NULL, NULL, NULL, {1, 0}) = 0 (Timeout) [etc...]
Forgot to say : - The (null) box is up2date. - rpm is rpm-4.1-1.0 - rpm -qa works but not rpm -q <something>
FIx is rm /var/lib/rpm/__db* You ought to upgrade to rpm-4.1 final from ftp.rpm.org as well.
I'm also seeing this problem when installing RPM packages and I have an 8.0 release (formerly 7.3) on which obviously has 4.1 version of RPM. The workaround works - sure, but I don't think having to run the workaround every 3 or 4 times I run RPM is real good.. What's worse is that when it does occur the whole process locks up and can't even be ctrl-c'd, I have to killall -KILL it to get my shell back. This is an strace of an rpm -Uvh operation: stat64("/var/", {st_mode=S_IFDIR|0755, st_size=672, ...}) = 0 stat64("/var/lib/", {st_mode=S_IFDIR|0755, st_size=416, ...}) = 0 stat64("/var/lib/rpm", {st_mode=S_IFDIR|0755, st_size=576, ...}) = 0 access("/var/lib/rpm", W_OK) = 0 access("/var/lib/rpm/__db.001", F_OK) = 0 access("/var/lib/rpm/Packages", F_OK) = 0 brk(0x8279000) = 0x8279000 open("/var/lib/rpm/DB_CONFIG", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) open("/var/lib/rpm/__db.001", O_RDWR|O_LARGEFILE) = 3 fcntl64(3, F_SETFD, FD_CLOEXEC) = 0 fstat64(3, {st_mode=S_IFREG|0644, st_size=8192, ...}) = 0 close(3) = 0 open("/var/lib/rpm/__db.001", O_RDWR|O_LARGEFILE) = 3 fcntl64(3, F_SETFD, FD_CLOEXEC) = 0 mmap2(NULL, 8192, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0) = 0x40233000 close(3) = 0 open("/var/lib/rpm/__db.002", O_RDWR|O_LARGEFILE) = 3 fcntl64(3, F_SETFD, FD_CLOEXEC) = 0 mmap2(NULL, 1310720, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0) = 0x40235000 close(3) = 0 open("/var/lib/rpm/__db.003", O_RDWR|O_LARGEFILE) = 3 fcntl64(3, F_SETFD, FD_CLOEXEC) = 0 mmap2(NULL, 360448, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0) = 0x40375000 close(3) = 0 open("/var/lib/rpm/Packages", O_RDONLY|O_LARGEFILE) = 3 fcntl64(3, F_SETFD, FD_CLOEXEC) = 0 fstat64(3, {st_mode=S_IFREG|0644, st_size=9949184, ...}) = 0 _llseek(3, 0, [0], SEEK_SET) = 0 read(3, "\0\0\0\0\1\0\0\0\0\0\0\0a\25\6\0\7\0\0\0\0\20\0\0\0\10"..., 256) = 256 close(3) = 0 open("/var/lib/rpm/Packages", O_RDONLY|O_LARGEFILE) = 3 fcntl64(3, F_SETFD, FD_CLOEXEC) = 0 fstat64(3, {st_mode=S_IFREG|0644, st_size=9949184, ...}) = 0 brk(0x827a000) = 0x827a000 select(0, NULL, NULL, NULL, {0, 1000}) = 0 (Timeout) select(0, NULL, NULL, NULL, {0, 2000}) = 0 (Timeout) select(0, NULL, NULL, NULL, {0, 4000}) = 0 (Timeout) select(0, NULL, NULL, NULL, {0, 8000}) = 0 (Timeout) select(0, NULL, NULL, NULL, {0, 16000}) = 0 (Timeout) select(0, NULL, NULL, NULL, {0, 32000}) = 0 (Timeout) select(0, NULL, NULL, NULL, {0, 64000}) = 0 (Timeout) select(0, NULL, NULL, NULL, {0, 128000}) = 0 (Timeout) select(0, NULL, NULL, NULL, {0, 256000}) = 0 (Timeout) select(0, NULL, NULL, NULL, {0, 512000}) = 0 (Timeout) select(0, NULL, NULL, NULL, {1, 0}) = 0 (Timeout) select(0, NULL, NULL, NULL, {1, 0}) = 0 (Timeout) select(0, NULL, NULL, NULL, {1, 0}) = 0 (Timeout) select(0, NULL, NULL, NULL, {1, 0}) = 0 (Timeout) select(0, NULL, NULL, NULL, {1, 0} <unfinished ...>