Bug 472756 - troubles with updating postfix
Summary: troubles with updating postfix
Keywords:
Status: CLOSED NEXTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: yum
Version: 9
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Seth Vidal
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2008-11-24 12:08 UTC by Miroslav Lichvar
Modified: 2014-01-21 23:06 UTC (History)
6 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2009-02-05 02:19:27 UTC


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

Description Miroslav Lichvar 2008-11-24 12:08:16 UTC
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 15:14:46 UTC
What yum plugins do you have installed?

Comment 2 Miroslav Lichvar 2008-11-26 17:10:47 UTC
yum-merge-conf and yum-allowdowngrade are installed here.

Comment 3 seth vidal 2008-12-01 16:41:26 UTC
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 13:13:27 UTC
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 08:38:47 UTC
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 09:53:36 UTC
Created attachment 326925 [details]
yum debug

Comment 7 James Antill 2008-12-15 17:30:07 UTC
 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 06:48:53 UTC
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 06:50:43 UTC
Created attachment 327069 [details]
mock config

Comment 10 James Antill 2008-12-16 17:25:15 UTC
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 17:34:53 UTC
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 09:34:09 UTC
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 21:24:30 UTC
 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-11 04:16:08 UTC
postfix 2:2.5.5-2.fc10 works for me

Comment 15 Fedora Update System 2009-01-12 19:20:38 UTC
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 19:28:19 UTC
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-15 03:00:40 UTC
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-15 03:09:40 UTC
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 08:46:26 UTC
yum-3.2.21-2.fc9.noarch fixes this problem on my x86_64 system

Comment 20 Fedora Update System 2009-02-05 02:18:51 UTC
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-05 02:25:56 UTC
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.