Bug 520232 - yumBackend.py: get_updates TypeError
Summary: yumBackend.py: get_updates TypeError
Keywords:
Status: CLOSED NEXTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: PackageKit
Version: rawhide
Hardware: All
OS: Linux
low
low
Target Milestone: ---
Assignee: Richard Hughes
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
: 516957 520262 520313 521251 522674 522889 (view as bug list)
Depends On:
Blocks: F12Blocker, F12FinalBlocker
TreeView+ depends on / blocked
 
Reported: 2009-08-29 12:22 UTC by Christoph A.
Modified: 2014-01-21 23:11 UTC (History)
15 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2009-09-03 07:52:42 UTC


Attachments (Terms of Use)
fix traceback (2.51 KB, text/plain)
2009-09-03 07:37 UTC, Tim Lauridsen
no flags Details

Description Christoph A. 2009-08-29 12:22:22 UTC
Description of problem:
I'm testing the fc12 alpha image. 
A new window poped up:
"An internal system error has occurred"

Version-Release number of selected component (if applicable):
rpm -qa yum*
yum-metadata-parser-1.1.2-13.fc12.i686
yum-3.2.23-13.fc12.noarch
yum-utils-1.1.22-3.fc12.noarch


How reproducible:
first occurance today I will see if it appears again

Steps to Reproduce:
1. wait for the automatic update check (yum) to occur
2.
3.
  
Actual results:
a new window pops up: "An internal system error has occurred"
containing the traceback of yumBackend.py

Expected results:


Additional info:

Traceback output:
Traceback (most recent call last):
  File "/usr/share/PackageKit/helpers/yum/yumBackend.py", line 2180, in get_updates
    ygl = self.yumbase.doPackageLists(pkgnarrow='updates')
  File "/usr/lib/python2.6/site-packages/yum/__init__.py", line 1714, in doPackageLists
    for (n,a,e,v,r) in self.up.getUpdatesList():
  File "/usr/lib/python2.6/site-packages/yum/__init__.py", line 715, in <lambda>
    up = property(fget=lambda self: self._getUpdates(),
  File "/usr/lib/python2.6/site-packages/yum/__init__.py", line 595, in _getUpdates
    self._up = rpmUtils.updates.Updates(self.rpmdb.simplePkgList(), self.pkgSack.simplePkgList())
  File "/usr/lib/python2.6/site-packages/yum/__init__.py", line 702, in <lambda>
    pkgSack = property(fget=lambda self: self._getSacks(),
  File "/usr/lib/python2.6/site-packages/yum/__init__.py", line 538, in _getSacks
    self.repos.populateSack(which=repos)
  File "/usr/lib/python2.6/site-packages/yum/repos.py", line 277, in populateSack
    sack.populate(repo, mdtype, callback, cacheonly)
  File "/usr/lib/python2.6/site-packages/yum/yumRepo.py", line 164, in populate
    if self._check_db_version(repo, mydbtype):
  File "/usr/lib/python2.6/site-packages/yum/yumRepo.py", line 222, in _check_db_version
    return repo._check_db_version(mdtype)
  File "/usr/lib/python2.6/site-packages/yum/yumRepo.py", line 1220, in _check_db_version
    repoXML = self.repoXML
  File "/usr/lib/python2.6/site-packages/yum/yumRepo.py", line 1384, in <lambda>
    repoXML = property(fget=lambda self: self._getRepoXML(),
  File "/usr/lib/python2.6/site-packages/yum/yumRepo.py", line 1376, in _getRepoXML
    self._loadRepoXML(text=self)
  File "/usr/lib/python2.6/site-packages/yum/yumRepo.py", line 1366, in _loadRepoXML
    return self._groupLoadRepoXML(text, ["primary"])
  File "/usr/lib/python2.6/site-packages/yum/yumRepo.py", line 1349, in _groupLoadRepoXML
    if self._commonLoadRepoXML(text):
  File "/usr/lib/python2.6/site-packages/yum/yumRepo.py", line 1195, in _commonLoadRepoXML
    result = self._getFileRepoXML(local, text)
  File "/usr/lib/python2.6/site-packages/yum/yumRepo.py", line 976, in _getFileRepoXML
    cache=self.http_caching == 'all')
  File "/usr/lib/python2.6/site-packages/yum/yumRepo.py", line 754, in _getFile
    result = self.mediafunc(local = local, checkfunc = checkfunc, relative = relative, text = text, copy_local = copy_local, url = url, mediaid = self.mediaid, name = self.name, discnum = discnum, range = (start, end))
  File "/usr/share/PackageKit/helpers/yum/yumBackend.py", line 2863, in MediaGrabber
    manager = MediaManager()
  File "/usr/share/PackageKit/helpers/yum/yumMediaManager.py", line 101, in __init__
    raise NotImplemented
TypeError: exceptions must be classes or instances, not NotImplementedType

Comment 1 Christoph A. 2009-08-29 12:31:45 UTC
Changed component from "yum" to "PackageKit".

rpm -q -f /usr/share/PackageKit/helpers/yum/yumBackend.py
PackageKit-yum-0.5.1-1.fc12.i686

Comment 2 Christoph A. 2009-08-29 12:39:05 UTC
The error can also be triggered by manually choosing the following menu entry:
System -> Administration -> Software Update

How reproducible:
always

Comment 3 seth vidal 2009-09-02 17:02:41 UTC
class MediaManager (object):
    """Just iterate over an instance of this class to get MediaDevice objects"""
    def __init__(self):
        raise NotImplemented

    def __iter__(self):
        raise NotImplemented


I think NotImplemented in those methods just needs to change to:
NotImplementedError()

Comment 4 seth vidal 2009-09-02 20:41:34 UTC
*** Bug 520262 has been marked as a duplicate of this bug. ***

Comment 5 Tim Lauridsen 2009-09-03 07:37:44 UTC
Created attachment 359635 [details]
fix traceback

This patch should fix it

Comment 6 Richard Hughes 2009-09-03 07:49:35 UTC
*** Bug 516957 has been marked as a duplicate of this bug. ***

Comment 7 Richard Hughes 2009-09-03 07:52:42 UTC
(In reply to comment #5)
> Created an attachment (id=359635) [details]
> fix traceback
> 
> This patch should fix it  

Applied, thanks.

Richard.

Comment 8 seth vidal 2009-09-04 14:29:20 UTC
*** Bug 520313 has been marked as a duplicate of this bug. ***

Comment 9 seth vidal 2009-09-04 14:29:38 UTC
*** Bug 521251 has been marked as a duplicate of this bug. ***

Comment 10 seth vidal 2009-09-11 15:19:01 UTC
*** Bug 522674 has been marked as a duplicate of this bug. ***

Comment 11 seth vidal 2009-09-12 03:44:27 UTC
*** Bug 522889 has been marked as a duplicate of this bug. ***


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