RPM Community Forums

Mailing List Message of <rpm-devel>

Strange config file handling on some package upgrades with RPM 5

From: Ralf S. Engelschall <rse+rpm-devel@rpm5.org>
Date: Sun 13 Apr 2008 - 14:16:47 CEST
Message-ID: <20080413121647.GA62087@engelschall.com>
I cannot really provide a generic reproducer, but I'm these days
upgrading lots of servers and I now the third time observed something
strange:

|    warning: /usr/opkg/.bash_login created as /usr/opkg/.bash_login.rpmnew
|    warning: /usr/opkg/.bashrc created as /usr/opkg/.bashrc.rpmnew
|    warning: /usr/opkg/etc/openpkg/managers saved as /usr/opkg/etc/openpkg/managers.rpmorig
|    warning: /usr/opkg/etc/openpkg/platform saved as /usr/opkg/etc/openpkg/platform.rpmorig
|    warning: /usr/opkg/etc/openpkg/release saved as /usr/opkg/etc/openpkg/release.rpmorig
|    warning: /usr/opkg/etc/openpkg/rpmlua saved as /usr/opkg/etc/openpkg/rpmlua.rpmorig
|    warning: /usr/opkg/etc/openpkg/rpmmacros saved as /usr/opkg/etc/openpkg/rpmmacros.rpmorig
|    warning: /usr/opkg/etc/openpkg/rpmpopt saved as /usr/opkg/etc/openpkg/rpmpopt.rpmorig
|    warning: /usr/opkg/etc/rc.conf created as /usr/opkg/etc/rc.conf.rpmnew

This is during e.g. upgrading the RPM 5 package "openpkg-4.0a0-20080412"
to "openpkg-4.0a0-20080413" (the difference is just a small typo fix,
everything else is the same in the package!). And now let's look at the
%config files which produced the warnings:

| # cd /usr/opkg/etc/openpkg/
| # ls -l
| total 401
| -rw-r--r--  1 root  opkg      6 Apr 12 17:01 license
| drwxr-xr-x  2 opkg  opkg      6 Apr 13 13:30 license.d
| -rw-rw-r--  1 opkg  opkg     60 Apr 13 13:30 managers
| -rw-rw-r--  1 opkg  opkg     60 Apr 12 17:46 managers.rpmorig
| -rw-r--r--  1 opkg  opkg   1837 Apr 13 13:30 openpkg.com.pgp
| -rw-r--r--  1 opkg  opkg   1860 Apr 13 13:30 openpkg.net.pgp
| -rw-r--r--  1 opkg  opkg   1807 Apr 13 13:30 openpkg.org.pgp
| -rw-r--r--  1 opkg  opkg     20 Apr 13 13:30 platform
| -rw-r--r--  1 opkg  opkg     20 Apr 12 17:46 platform.rpmorig
| -rw-r--r--  1 opkg  opkg    488 Apr 13 13:31 register.conf
| -rw-r--r--  1 opkg  opkg  22005 Apr 13 13:31 register.prep
| -rw-r--r--  1 opkg  opkg    322 Apr 13 13:31 register.tran
| -rw-r--r--  1 opkg  opkg    128 Apr 13 13:31 register.util
| -rw-r--r--  1 opkg  opkg     61 Apr 13 13:30 release
| -rw-r--r--  1 opkg  opkg     61 Apr 12 17:46 release.rpmorig
| -rw-r--r--  1 opkg  opkg   6428 Apr 13 13:30 rpmlua
| drwxr-xr-x  2 opkg  opkg      2 Apr 13 13:30 rpmlua.d
| -rw-r--r--  1 opkg  opkg   6428 Apr 12 17:46 rpmlua.rpmorig
| -rw-r--r--  1 opkg  opkg  46317 Apr 13 13:30 rpmmacros
| drwxr-xr-x  2 opkg  opkg      2 Apr 13 13:30 rpmmacros.d
| -rw-r--r--  1 opkg  opkg  46317 Apr 12 17:46 rpmmacros.rpmorig
| -rw-r--r--  1 opkg  opkg   7537 Apr 13 13:30 rpmpopt
| drwxr-xr-x  2 opkg  opkg      2 Apr 13 13:30 rpmpopt.d
| -rw-r--r--  1 opkg  opkg   7537 Apr 12 17:46 rpmpopt.rpmorig
| -rw-r--r--  1 opkg  opkg    159 Nov  8 18:52 uuid

As you can see, no content change, no permission changes, nothing (sure,
as I said, only a typo in a completely different edge of the packaging
was fixed, everything else remained the same). Nevertheless RPM 5
thought there was a conflict and produced .rpmorig or .rpmnew files for
all(!) %config files in the package. The first time I observed this, I
still thought: "well, strange, but perhaps there was really a conflict".
But now I'm not than surprised: there is really no difference, but
nevertheless RPM 5 thinks it is.

Does anybody has a clue what happened here?

All this is with RPM 5.1b2, BTW!

For one installation I currently even can reproduce the problem:

| # /usr/opkg/bin/openpkg rpm -V openpkg
| S.5....T  c /usr/opkg/etc/rc.conf
| # /usr/opkg/bin/openpkg rpm -Uvh /usr/opkg/RPM/PKG/openpkg-4.0a0-20080413.amd64-freebsd7.0-opkg.rpm --replacepkgs
| Preparing...                ########################################### [100%]
|    1:openpkg                warning: /usr/opkg/.bash_login created as /usr/opkg/.bash_login.rpmnew
| warning: /usr/opkg/.bashrc created as /usr/opkg/.bashrc.rpmnew
| warning: /usr/opkg/etc/openpkg/managers saved as /usr/opkg/etc/openpkg/managers.rpmorig
| warning: /usr/opkg/etc/openpkg/platform saved as /usr/opkg/etc/openpkg/platform.rpmorig
| warning: /usr/opkg/etc/openpkg/release saved as /usr/opkg/etc/openpkg/release.rpmorig
| warning: /usr/opkg/etc/openpkg/rpmlua saved as /usr/opkg/etc/openpkg/rpmlua.rpmorig
| warning: /usr/opkg/etc/openpkg/rpmmacros saved as /usr/opkg/etc/openpkg/rpmmacros.rpmorig
| warning: /usr/opkg/etc/openpkg/rpmpopt saved as /usr/opkg/etc/openpkg/rpmpopt.rpmorig
| warning: /usr/opkg/etc/rc.conf created as /usr/opkg/etc/rc.conf.rpmnew
| ########################################### [100%]

Isn't this strange? Verify says what I expect: only one file is changed.
But on the next installation (here even of the _same_ package, but
it also happens on real upgrades AFAIK), the %config files are all
considered in conflict...

                                       Ralf S. Engelschall
                                       rse@engelschall.com
                                       www.engelschall.com
Received on Sun Apr 13 14:19:30 2008
Driven by Jeff Johnson and the RPM project team.
Hosted by OpenPKG and Ralf S. Engelschall.
Powered by FreeBSD and OpenPKG.