Bug 246078

Summary: Wrong dependency calculations: kdebindings-3.5.6->3.5.7 upgrade
Product: [Fedora] Fedora Reporter: Kostas Georgiou <k.georgiou>
Component: yumAssignee: Jeremy Katz <katzj>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: 7CC: james.antill, jochen, rdieter
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: 3.2.2-1.fc7 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2007-08-15 19:48:08 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
yum update results
none
yum -d 6 update output
none
another yum -d6 log
none
should sort the 'best' providers by distance from requesting arch none

Description Kostas Georgiou 2007-06-28 12:23:32 UTC
With the latest kde update (3.5.7-1.fc7.1) perl(DCOP) is now provided by
kdebindings-dcopperl instead of kdebindings. Unfortunately on multilib systems
yum decides to install kdebindings-3.5.6-1.fc7.i386 (shortest name wins?) even
while at the same time it is about to upgrade the x86_64 version of kdebindings
to the newer version.

Comment 1 Kostas Georgiou 2007-06-28 12:23:32 UTC
Created attachment 158116 [details]
yum update results

Comment 2 Rex Dieter 2007-06-28 12:25:42 UTC
A little background wrt what Kostas is seeing:
perl(DCOP) is provided by both kdebindings-3.5.6 and kdebindings-dcopperl-3.5.7 
(moved to separate subpkg in update).

kdesdk Requires: perl(DCOP)

On existing system with kdebindings-3.5.6, kdesdk-3.5.6, trying to upgrade to
kde-3.5.7 results in transaction trying to install kdebindings-3.5.6.i386 on
x86_64 systems ??  (presumably to satisfy the perl(DCOP) dep using "shortest
named pkg that provides it).

It was suggested that adding to kdebindings-dcopperl:
Obsoletes: kdebindings < 3.5.7
may help.  If so, I'm ok with adding that to kdebindings packaging.

Comment 3 Kostas Georgiou 2007-06-28 12:36:52 UTC
For the record this happens in a machine with no i386 packages installed also.

Comment 4 Seth Vidal 2007-06-28 12:49:41 UTC
can you output a yum -d 6 update, please


Comment 5 Kostas Georgiou 2007-06-28 12:57:25 UTC
Created attachment 158119 [details]
yum -d 6 update output

yum -d 6 update output from a different machine (no i386 packages installed at
all on this machine)

Comment 6 Rex Dieter 2007-06-28 13:12:10 UTC
Created attachment 158121 [details]
another yum -d6 log

Comment 7 Seth Vidal 2007-07-01 14:33:08 UTC
Created attachment 158310 [details]
should sort the 'best' providers by distance from requesting arch

please apply this patch to depsolve.py in yum and see if the problem goes away.

I think it will

Comment 8 Kostas Georgiou 2007-07-01 18:51:15 UTC
No luck with the patch :(, it doesn't do anything in this case since at that
point we have:
best_dist: 1
po_dist:   6
best:      kdebindings-dcopperl - 3.5.7-1.fc7.1.x86_64
po:        kdebindings - 3.5.6-1.fc7.i386
and neither of the if cases are taken so the  lowest name wins replaces
kdebindings-dcopperl with the i386 version of kdebindings right after the code
you added in:
  if len(po.name) < len(best.name):
    best = po



Comment 9 Seth Vidal 2007-07-01 21:46:37 UTC
I didn't add it - I failed to add the 'elif' to it.

Try this for me. on line: 592 - add 'el' to the 'if' that's there.

then rerun

Comment 10 Kostas Georgiou 2007-07-01 22:52:37 UTC
Great, with the elif kdebindings-dcopperl is picked up and everything works
correctly :)



Comment 11 Seth Vidal 2007-07-02 00:01:19 UTC
cool, it's committed and I'm closing this upstream

Comment 12 Rex Dieter 2007-07-02 09:42:29 UTC
*** Bug 246395 has been marked as a duplicate of this bug. ***

Comment 13 Fedora Update System 2007-07-23 15:46:28 UTC
yum-3.2.2-1.fc7 has been pushed to the Fedora 7 testing repository.  If problems still persist, please make note of it in this bug report.

Comment 14 Fedora Update System 2007-08-15 19:47:40 UTC
yum-3.2.2-1.fc7 has been pushed to the Fedora 7 stable repository.  If problems still persist, please make note of it in this bug report.