Bug 244488 - yum throws PackageSackError trying to upgrade libraw1394
Summary: yum throws PackageSackError trying to upgrade libraw1394
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: yum
Version: 7
Hardware: All
OS: Linux
low
low
Target Milestone: ---
Assignee: James Antill
QA Contact:
URL:
Whiteboard:
: 244648 (view as bug list)
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2007-06-16 01:23 UTC by Jarod Wilson
Modified: 2014-01-21 22:58 UTC (History)
3 users (show)

Fixed In Version: 3.2.1-1.fc7
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2007-06-28 01:49:18 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Jarod Wilson 2007-06-16 01:23:17 UTC
+++ This bug was initially created as a clone of Bug #244474 +++

yum / pup die while trying to upgrade libraw1394-1.2.1-8.fc7 on an i386 system
that has kernel-xen installed. The yum error is:

--> Processing Conflict: libraw1394 conflicts kernel < 2.6.21-1.3194.fc7
Error: No Package Matching kernel.i686

kernel-xen provides kernel = 2.6.20, so this conflicts with libraw1394. I think
probably this needs to be changed to:

Requires: kernel >= 2.6.21-1.3194.fc7

Here's the traceback from pup:

Summary: TB8a9b4f2f packageSack.py:600:returnNewestByNameArch:PackageSackError:
No Package Matching kernel.i686

Traceback (most recent call last):
  File "/usr/sbin/pup", line 409, in _apply
    self.applyChanges(self.mainwin)
  File "/usr/lib/python2.5/site-packages/pirut/__init__.py", line 718, in
applyChanges
    self.checkDeps(mainwin)
  File "/usr/lib/python2.5/site-packages/pirut/__init__.py", line 481, in checkDeps
    (result, msgs) = self.buildTransaction()
  File "/usr/lib/python2.5/site-packages/yum/__init__.py", line 549, in
buildTransaction
    (rescode, restring) = self.resolveDeps()
  File "/usr/lib/python2.5/site-packages/yum/depsolve.py", line 856, in resolveDeps
    (checkdep, missing, conflict, errormsgs) = self._processConflict(dep)
  File "/usr/lib/python2.5/site-packages/yum/depsolve.py", line 662, in
_processConflict
    po = self.pkgSack.returnNewestByNameArch((confpkg.name,confpkg.arch))[0]
  File "/usr/lib/python2.5/site-packages/yum/packageSack.py", line 308, in
returnNewestByNameArch
    return bestofeach.returnNewestByNameArch(naTup)
  File "/usr/lib/python2.5/site-packages/yum/packageSack.py", line 600, in
returnNewestByNameArch
    raise PackageSackError, 'No Package Matching %s.%s' % naTup
PackageSackError: No Package Matching kernel.i686

Local variables in innermost frame:
highdict: {}
self: <yum.packageSack.ListPackageSack object at 0xcf868ec>
naTup: ('kernel', 'i686')
where: None

-- Additional comment from jwilson on 2007-06-15 21:20 EST --
Ah. I was wondering if kernel-xen might be involved, and forgot that it Provides: kernel = 2.6.20-... 
What I got locally was...

[jarod@ares ~]$ sudo yum --enablerepo=updates-testing upgrade libraw1394
Password:
Loading "installonlyn" plugin
Setting up Upgrade Process
livna-development         100% |=========================| 2.1 kB    00:00     
primary.sqlite.bz2        100% |=========================| 100 kB    00:00     
updates-testing           100% |=========================| 1.9 kB    00:00     
primary.sqlite.bz2        100% |=========================| 200 kB    00:00     
rt                        100% |=========================|  951 B    00:00     
fedora                    100% |=========================| 2.1 kB    00:00     
primary.sqlite.bz2        100% |=========================| 3.8 MB    00:04     
updates                   100% |=========================| 1.9 kB    00:00     
primary.sqlite.bz2        100% |=========================| 361 kB    00:09     
Resolving Dependencies
--> Running transaction check
filelists.sqlite.bz2      100% |=========================| 409 kB    00:00     
---> Package libraw1394.i386 0:1.2.1-8.fc7 set to be updated
--> Processing Dependency: libraw1394 = 1.2.1-7.fc7 for package: libraw1394-devel
--> Processing Conflict: libraw1394 conflicts kernel < 2.6.21-1.3194.fc7
Error: No Package Matching kernel.i686
[jarod@ares ~]$ rpm -q kernel
kernel-2.6.21-1.3142.fc7.i686
kernel-2.6.21-1.3194.fc7.i686

...which looks correct enough.

As for the Conflicts instead of Requires on the kernel version... I just changed from Req to Conflict to 
circumvent a kernel getting pulled into buildroots that need libraw1394-devel. This is a bit of a sticky 
situation... I'm pretty sure that kernel-xen doesn't have the needed firewire support, so libraw1394 
really *does* conflict with that kernel-xen. If its flipped back to a Requires: with a sufficiently recent 
enough version, installing libraw1394 is going to pull in kernel > 2.6.21-something, which can't be 
obtained from a kernel-xen Provides:...

So what's the lesser of two evils here:

1) use a Requires:, which is going to mean people who really only wanted kernel-xen are going to have 
kernel also pulled in, but will be unable to use libraw1394 (also leads to buildroot bloat)

2) use a Conflicts:, which will leave people unable to have both kernel-xen and libraw1394 installed at 
the same time, but will eliminate buildroot bloat and prevent people from using a non-functional 
combo.

Of course, I'm just *assuming* the new firewire stack never made it into kernel-xen... (I'll check in a 
sec).

So really, we have two different issues here -- straightening out the Requires/Conflicts bit, and the fact 
that yum died a horrific death in this situation. The latter definitely shouldn't happen, so I'll clone over a 
new bug against yum. The former... Now that I think about it, I say we just drop both Requires and 
Conflicts from the libraw1394 package. The F7 GA kernel has the needed support, so anyone with this 
libraw1394 ought to have a sufficiently new enough kernel anyway. The kernel-xen case... *shrug*

-- Additional comment from jwilson on 2007-06-15 21:21 EST --
(In reply to comment #1)
[...]
> --> Processing Conflict: libraw1394 conflicts kernel < 2.6.21-1.3194.fc7
> Error: No Package Matching kernel.i686
> [jarod@ares ~]$ rpm -q kernel
> kernel-2.6.21-1.3142.fc7.i686
> kernel-2.6.21-1.3194.fc7.i686
> 
> ...which looks correct enough.

Well, actually, the Error: text could be improved a bit, since its actually the Conflict that is the problem, 
not that we don't have a matching kernel.i686.

Comment 1 Jeremy Katz 2007-06-18 21:13:40 UTC
*** Bug 244648 has been marked as a duplicate of this bug. ***

Comment 2 Jeremy Katz 2007-06-18 21:42:34 UTC
Okay, fixed up the handling of this in upstream yum; will be in yum 3.2.1

Comment 3 Fedora Update System 2007-06-21 22:03:29 UTC
yum-3.2.1-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 4 Fedora Update System 2007-06-28 01:48:38 UTC
yum-3.2.1-1.fc7 has been pushed to the Fedora 7 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.