Bug 472756 - troubles with updating postfix
troubles with updating postfix
Status: CLOSED NEXTRELEASE
Product: Fedora
Classification: Fedora
Component: yum (Show other bugs)
9
All Linux
medium Severity medium
: ---
: ---
Assigned To: Seth Vidal
Fedora Extras Quality Assurance
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2008-11-24 07:08 EST by Miroslav Lichvar
Modified: 2014-01-21 18:06 EST (History)
6 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2009-02-04 21:19:27 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
yum debug (17.12 KB, text/plain)
2008-12-15 04:53 EST, Timon
no flags Details
mock config (1.06 KB, text/plain)
2008-12-16 01:50 EST, Timon
no flags Details

  None (edit)
Description Miroslav Lichvar 2008-11-24 07:08:16 EST
Description of problem:
I've prepared a postfix update which creates a new subpackage and moves some files to remove dependency on perl, but I got a report that yum will install exim when updating.

http://admin.fedoraproject.org/updates/F9/FEDORA-2008-9861

It doesn't seem to happen always, probably depends on which packages are requiring postfix, but I was able to reproduce it in a minimal mock buildroot with fetchmail.

The new postfix-perl-scripts subpackage obsoletes the old postfix, is there a workaround to avoid the problem?


Version-Release number of selected component (if applicable):
yum-3.2.19-3.fc9.noarch

How reproducible:
always

Steps to Reproduce:
1. mock -r f9 init
2. mock -r f9 install postfix fetchmail
3. yum --installroot=/var/lib/mock/f9/root --enablerepo=updates-testing update postfix
  
Actual results:
Exim installed.

Expected results:
Exim not installed.

Additional info:

A snip from yum -d 5:

Checking deps for postfix.x86_64 2-2.5.5-1.fc9 - None
fetchmail-6.3.8-7.fc9.x86_64 requires: server(smtp)
--> Processing Dependency: server(smtp) for package: fetchmail
Needed Require is not a package name. Looking up: server(smtp)
Potential Provider: postfix.x86_64 2:2.5.5-1.fc9
Mode is u for provider of server(smtp): postfix.x86_64 2:2.5.5-1.fc9
Mode for pkg providing server(smtp): u
Cannot find an update path for dep for: server(smtp)
Searching pkgSack for dep: server(smtp)
Potential match for server(smtp) from 2:postfix-2.5.5-2.fc9.x86_64
Matched 2:postfix-2.5.5-2.fc9.x86_64 to require for server(smtp)
Potential match for server(smtp) from exim-4.69-4.fc9.x86_64
Matched exim-4.69-4.fc9.x86_64 to require for server(smtp)
Potential match for server(smtp) from 2:postfix-2.5.1-2.fc9.x86_64
Matched 2:postfix-2.5.1-2.fc9.x86_64 to require for server(smtp)
Potential match for server(smtp) from sendmail-8.14.2-4.fc9.x86_64
Matched sendmail-8.14.2-4.fc9.x86_64 to require for server(smtp)
Potential match for server(smtp) from 2:postfix-2.5.5-1.fc9.x86_64
Matched 2:postfix-2.5.5-1.fc9.x86_64 to require for server(smtp)
Potential resolving package 2:postfix-2.5.1-2.fc9.x86_64 has newer instance in ts.
Potential resolving package 2:postfix-2.5.1-2.fc9.x86_64 has newer instance installed.
2:postfix-2.5.5-1.fc9.x86_64 is in providing packages but it is already installed, removing.
TSINFO: Marking exim-4.69-4.fc9.x86_64 as install for fetchmail-6.3.8-7.fc9.x86_64
Comment 1 seth vidal 2008-11-26 10:14:46 EST
What yum plugins do you have installed?
Comment 2 Miroslav Lichvar 2008-11-26 12:10:47 EST
yum-merge-conf and yum-allowdowngrade are installed here.
Comment 3 seth vidal 2008-12-01 11:41:26 EST
I can't make this happen here at all. What yum version is this? Can you try the lastest from updates-testing? 3.2.20-4.fc9
Comment 4 Miroslav Lichvar 2008-12-02 08:13:27 EST
I'm no longer able to reproduce it, so I guess something in the older repodata was triggering it.
Comment 5 Timon 2008-12-15 03:38:47 EST
hmm, I'm still reproducing this bug

[timon@localhost auto.mail.ru]$ sudo yum --installroot=/var/lib/mock/fedora-9-i386/root --enablerepo="updates-testing" update postfix

======================================================================================================================================================
 Package                                   Арх.                      Версия                               Repository                             Size
======================================================================================================================================================
Installing:
 postfix-perl-scripts                      i386                      2:2.5.5-2.fc9                        updates-testing                        60 k
     replacing  postfix.i386 2:2.5.5-1.fc9

Installing for dependencies:
 exim                                      i386                      4.69-4.fc9                           fedora                                1.3 M
 postgresql-libs                           i386                      8.3.5-1.fc9                          updates-released                      213 k
 tcp_wrappers-libs                         i386                      7.6-52.fc9                           fedora                                 64 k
Updating for dependencies:
 postfix                                   i386                      2:2.5.5-2.fc9                        updates-testing                       3.8 M

Transaction Summary
======================================================================================================================================================
Install      4 Package(s)         
Update       1 Package(s)         
Remove       0 Package(s)         

Total download size: 5.4 M
Comment 6 Timon 2008-12-15 04:53:36 EST
Created attachment 326925 [details]
yum debug
Comment 7 James Antill 2008-12-15 12:30:07 EST
 This is where it all starts from:

fetchmail-6.3.8-7.fc9.i386 requires: server(smtp)

...what does the rpmdb look like in that chroot? Do you have postfix installed, what does package-cleanup --problems say etc.?
Comment 8 Timon 2008-12-16 01:48:53 EST
how I reproduce it:
[timon@localhost f]$ mock -r fedora-9-i386 init
[timon@localhost f]$ mock -r fedora-9-i386 install postfix fetchmail
[timon@localhost f]$ mock -r fedora-9-i386 shell 
mock-chroot> rpm -q postfix fetchmail
postfix-2.5.5-1.fc9.i386
fetchmail-6.3.8-7.fc9.i386
mock-chroot> exit
[timon@localhost f]$ sudo yum --installroot=/var/lib/mock/fedora-9-i386/root/ --enablerepo=updates-testing update postfix
[timon@localhost f]$ sudo yum --installroot=/var/lib/mock/fedora-9-i386/root/ --enablerepo=updates-testing update postfix
<<<snip>>>                                                                                                                    
[timon@localhost f]$ mock -r fedora-9-i386 shell 
mock-chroot> rpm -q postfix fetchmail exim
postfix-2.5.5-2.fc9.i386
fetchmail-6.3.8-7.fc9.i386
exim-4.69-4.fc9.i386

now check package-cleanup
[timon@localhost f]$ mock -r fedora-9-i386 install yum-utils
[timon@localhost f]$ mock -r fedora-9-i386 shell
mock-chroot> package-cleanup --problems
Setting up yum
Reading local RPM database
Processing all local requires
No problems found
mock-chroot> package-cleanup --orphans
Setting up yum
postfix-2.5.5-2.fc9.i386
postfix-perl-scripts-2.5.5-2.fc9.i386
Comment 9 Timon 2008-12-16 01:50:43 EST
Created attachment 327069 [details]
mock config
Comment 10 James Antill 2008-12-16 12:25:15 EST
Well I'm using 3.2.20-5++ and am on x86_64 (although I thought mock could do that) ... but if I run the above postfix is upgraded and exim isn't installed. All I get is:

--> Running transaction check
Checking deps for postfix.i386 2-2.5.5-1.fc9 - None
---> Package postfix.i386 2:2.5.5-2.fc9 set to be updated
Checking deps for postfix.i386 2-2.5.5-2.fc9 - u
--> Finished Dependency Resolution
Comment 11 James Antill 2008-12-16 12:34:53 EST
Trying again with setarch on the yum command ... I get basically the same thing:

--> Running transaction check
---> Package postfix-perl-scripts.i386 2:2.5.5-2.fc9 set to be updated
Checking deps for postfix-perl-scripts.i386 2-2.5.5-2.fc9 - u
[...]
--> Processing Dependency: postfix = 2:2.5.5-2.fc9 for package: postfix-perl-scripts
[...]
Checking deps for postfix.i386 2-2.5.5-1.fc9 - None
--> Running transaction check
---> Package postfix.i386 2:2.5.5-2.fc9 set to be updated
Checking deps for postfix.i386 2-2.5.5-2.fc9 - u
--> Finished Dependency Resolution
[...]
Installing:
 postfix-perl-scripts     i386     2:2.5.5-2.fc9      updates-testing      60 k
     replacing  postfix.i386 2:2.5.5-1.fc9

Updating for dependencies:
 postfix                  i386     2:2.5.5-2.fc9      updates-testing     3.8 M
Comment 12 Timon 2008-12-23 04:34:09 EST
it seems to be i386 specific problem
I can reproduce this problem on my i386 computer and other i386 computer,
but I can't reproduce this problem on x86_64 machine and x86_64 machine with setarch command.
and yum clean metedata didn't help.
Comment 13 James Antill 2009-01-02 16:24:30 EST
 I've just fixed this, it should be in .21 as it's a simple bug fix.

 In our defense the problem would only show on .i386 because list(set(deps)) gave a different resultant order ... and processing the deps. in a different order took a different code path (and even then you had to have the "right" situation to trigger it).
Comment 14 Timon 2009-01-10 23:16:08 EST
postfix 2:2.5.5-2.fc10 works for me
Comment 15 Fedora Update System 2009-01-12 14:20:38 EST
yum-3.2.21-2.fc10 has been submitted as an update for Fedora 10.
http://admin.fedoraproject.org/updates/yum-3.2.21-2.fc10
Comment 16 Fedora Update System 2009-01-12 14:28:19 EST
yum-3.2.21-2.fc9 has been submitted as an update for Fedora 9.
http://admin.fedoraproject.org/updates/yum-3.2.21-2.fc9
Comment 17 Fedora Update System 2009-01-14 22:00:40 EST
yum-3.2.21-2.fc9 has been pushed to the Fedora 9 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing-newkey update yum'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/F9/FEDORA-2009-0460
Comment 18 Fedora Update System 2009-01-14 22:09:40 EST
yum-3.2.21-2.fc10 has been pushed to the Fedora 10 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update yum'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/F10/FEDORA-2009-0562
Comment 19 Timon 2009-01-29 03:46:26 EST
yum-3.2.21-2.fc9.noarch fixes this problem on my x86_64 system
Comment 20 Fedora Update System 2009-02-04 21:18:51 EST
yum-3.2.21-2.fc10 has been pushed to the Fedora 10 stable repository.  If problems still persist, please make note of it in this bug report.
Comment 21 Fedora Update System 2009-02-04 21:25:56 EST
yum-3.2.21-2.fc9 has been pushed to the Fedora 9 stable repository.  If problems still persist, please make note of it in this bug report.

Note You need to log in before you can comment on or make changes to this bug.