Red Hat Bugzilla – Bug 51235
rpm doesn't create .rpmnew files when upgrading
Last modified: 2007-04-18 12:35:38 EDT
From Bugzilla Helper:
User-Agent: Mozilla/4.77 [en] (X11; U; Linux 2.4.7 i686; Nav)
Description of problem:
I have a chrooted build environment, made with RH 7.1 packages, including
I did a minimal update to the new beta versions of: popt, rpm, glibc and
bash-2.04: rpm -Uvh popt-1.6.3-0.79.i386.rpm rpm-4.0.3-0.79.rpm
Everything went fairly well until it did the actual 'rpm' upgrade. Then,
it warned that it was making Basenames.rpmnew, Conflictname.rpmnew,
Group.rpmnew, Name.rpmnew, Packages.rpmnew Providename.rpmnew,
Requirename.rpmnew and Triggername.rpmnew
Unfortunately, those files weren't actually created. rpm -q rpm shows the
version as 4.0.3-0.79, and rpm -qa shows the correctly installed RPMs.
Steps to Reproduce:
1. Create a chrooted build environment with these packages:
filesystem, basesystem, mktemp, libtermcap, rootfiles, info, gawk, db1,
zlib, db2, diffutils, shadow-utils, gdbm, glibc-common, popt, setup,
termcap, bash, ncurses, fileutils, textutils, bzip2, db3, binutils, mount,
dev, perl, glibc, rpm. [All from original 7.1 distribution, no updates)
with arguments: -ivh --root=CHROOTDIR
2. chroot CHROOTDIR /bin/bash
3. rpm -Uvh popt-1.6.3-0.79.i386.rpm rpm-4.0.3-0.79.rpm
4. /bin/ls -l /var/lib/rpm/*rpmnew
Actual Results: All worked fine, got the warning messages stated in the
summary about creating the .rpmnew files in /var/lib/rpm/.
They aren't there.
Expected Results: I'd expect to have them, since it warned me. Either it
shouldn't warn me, or worse, it didn't create them.
I can send a copy of the build environment .tgz file (pre-upgrade), it's
28mb, so a little larger than i'm comfortable with just attaching.
Yes, there's an error message, but no .rpmnew files, as these files are marked
%ghost. The error message will eventually be conditioned on %ghost correctly,
but, since %ghost semantics are still changing at the moment, there's
gonna be more than just the error message to fix. Deferred until then