Bug 521955 - sealert does not handle transient yum repository problems gracefully, it crashes on login
Summary: sealert does not handle transient yum repository problems gracefully, it cras...
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: setroubleshoot
Version: rawhide
Hardware: All
OS: Linux
low
medium
Target Milestone: ---
Assignee: Daniel Walsh
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: F12Target
TreeView+ depends on / blocked
 
Reported: 2009-09-08 20:36 UTC by Nicolas Mailhot
Modified: 2014-01-21 23:11 UTC (History)
9 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2010-01-19 20:10:48 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Nicolas Mailhot 2009-09-08 20:36:49 UTC
Description of problem:

sealert does not handle transient yum repository problems gracefully, it crashes on login

setroubleshoot-0:2.2.24-1.fc12.x86_64

Opps, sealert hit an error!

Traceback (most recent call last):
  File "/usr/bin/sealert", line 1031, in <module>
    run_as_dbus_service(username)
  File "/usr/bin/sealert", line 159, in run_as_dbus_service
    app = SEAlert(user, dbus_service.presentation_manager, watch_setroubleshootd=True)
  File "/usr/bin/sealert", line 677, in __init__
    self.browser = BrowserApplet(self.username, self.alert_client)
  File "/usr/lib64/python2.6/site-packages/setroubleshoot/browser.py", line 399, in __init__
    self.check_policy()
  File "/usr/lib64/python2.6/site-packages/setroubleshoot/browser.py", line 441, in check_policy
    pl = yb.doPackageLists(patterns=['selinux-policy'])
  File "/usr/lib/python2.6/site-packages/yum/__init__.py", line 1692, in doPackageLists
    avail = self.pkgSack.returnNewestByNameArch(patterns=patterns,
  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 172, in populate
    db_fn = repo._retrieveMD(mydbtype)
  File "/usr/lib/python2.6/site-packages/yum/yumRepo.py", line 1518, in _retrieveMD
    "Caching enabled and local cache: %s does not match checksum" % local
RepoError: Caching enabled and local cache: /var/cache/yum/koji-rawhide-builds/primary.sqlite.bz2 does not match checksum

Comment 1 Daniel Walsh 2009-09-08 23:35:53 UTC
Looks like a yum bug to me.

Comment 2 seth vidal 2009-09-09 03:25:05 UTC
/usr/lib64/python2.6/site-packages/setroubleshoot/browser.py

contains the code and it doesn't catch the RepoError. RepoError is derived from Yum's Base error exception so, at the very least, browser.py should think about catching that.

Comment 3 Juan P. Daza P. 2009-12-05 14:22:29 UTC
Hi nicolas, thank you for taking the time to report this bug. Updates to this package have been released since it was first reported. If you have time to update the package and re-test, please do so and report the results here. You can obtain the updated package by typing 'yum update setroubleshoot' or using the graphical updater, Software Update.

---

Fedora Bugzappers volunteer triage team
https://fedoraproject.org/wiki/BugZappers

Comment 4 Daniel Walsh 2010-01-19 20:10:48 UTC
Fixed in setroubleshoot-2.2.52-1.fc12


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