Description of problem: There seem to be a problem with rpm ordering files which have a PreReq: <file> line. For example, when upgrading about 300 RPMs with one command-line option, sendmail got installed before chkconfig even though the new sendmail version has PreReq: /usr/sbin/alternatives which is provided only by the new chkconfig. More fine-grained tests in a similar environment with only sendmail RPMs, chkconfig and ntsysv failed to reproduce this weird reordering event. However, the core problem still remained: the /usr/sbin/alternatives command at sendmail's %post did not work for some reason. The logs releal that it was indeed run (but maybe the command was still missing at that point). Version-Release number of selected component (if applicable): Red Hat Linux 7.2 (and upgrade to 7.3) How reproducible: Get a all-upgraded RHL72 system. Get the latest ntsysv, chkconfig and sendmail binaries from RHL73 (+updates). Try to upgrade them in one go. Notice that /usr/sbin/sendmail ends up missing because sendmail's %post didn't work. The command itself works, whether run interactively or not (e.g., from cron). Steps to Reproduce: 1. see above 2. 3. Actual results: No /usr/sbin/sendmail Expected results: Alternatives creating /usr/sbin/sendmail symlink Additional info:
Created attachment 95193 [details] a slightly tailed down log of RPM run with -vvvv debugging
Hmmm, the provided log shows that yes, indeed, chkconfig is ordered before sendmail. If %post exits with a 0 if /usr/bin/alternatives is not installed, that's a problem with the sendmail packaging. I dunno "seems to be a problem", either there is or there isn't, and I need a reproducer (or sufficient info to attempt) if there is a problem. Please reopen with sufficient info (like rpm -Uvv output for 300 pkg install) to attempt to reproduce if you want me to take a look. Off to sendmail in case there's a packaging problem.
sendmail-8.11.6-27.73 has the following PreReq: Prereq: /usr/sbin/alternatives Prereq: chkconfig >= 1.3 Off to rpm, again.
Thomas, I must agree with Jeff that according to the log chkconfig indeed gets installed before sendmail. Thus this is *not* an rpm bug. If it is not a sendmail bug then the conclusion can only be that there is something wrong with chkconfig. Have a look at bug 67387. I would say that this issue is sort of a duplicate of that one. (Setting severity to normal)
Setting component to chkconfig and reassigning to Bill Nottingham, so he can decide whether or not to close this as a dup of bug 67387.
Maybe, hard to tell. Is it possible to reproduce this on a current release?
The issue in both cases seems to be /usr/sbin/alternatives failing to set a correct symlink. If this is reproducible I wouldn't know, but I do expect this no longer to be the case, as their seem to be no reports for more recent releases (these are both for 7.3 even though this one is tagged 7.2). Probably both CURRENTRELEASEs, but I can't say for sure.
The problem is that the 7.2 /usr/sbin/sendmail binary is in the way when /usr/sbin/alternatives tries to create the symlink. The old binary only gets erased after the new mta is installed.
*** This bug has been marked as a duplicate of 104940 ***
Changed to 'CLOSED' state since 'RESOLVED' has been deprecated.