Bug 493248

Summary: repoquery --changelog fragile: various errors, unpredictably
Product: [Fedora] Fedora Reporter: Przemek Klosowski <przemek>
Component: yum-utilsAssignee: Seth Vidal <skvidal>
Status: CLOSED UPSTREAM QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: 10CC: james.antill, pmatilai, tim.lauridsen
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-10-09 20:29:29 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:

Description Przemek Klosowski 2009-04-01 05:02:28 UTC
Description of problem:

repoquery --changelog unpredictably reports errors. When I run as root:

'repoquery --changelog kernel' reports UnicodeDecodeError (like in another bugzilla entry 483157)
'repoquery --changelog tcl' reports yum.Errors.RepoError: database disk image is malformed

'repoquery --changelog tcl' works when issued as regular user.

Version-Release number of selected component (if applicable):
yum-utils-1.1.19-1.fc10.noarch


How reproducible:


Steps to Reproduce:
1.'repoquery --changelog tcl' 
  
Actual results:
Traceback (most recent call last):
  File "/usr/bin/repoquery", line 857, in <module>
    main(sys.argv)
  File "/usr/bin/repoquery", line 853, in main
    repoq.runQuery(regexs)
  File "/usr/bin/repoquery", line 501, in runQuery
    print pkg.doQuery(oper)
  File "/usr/bin/repoquery", line 173, in doQuery
    return getattr(self, "fmt_%s" % method)(*args, **kw)
  File "/usr/bin/repoquery", line 264, in fmt_changelog
    for date, author, message in self.pkg.returnChangelog():
  File "/usr/lib/python2.5/site-packages/yum/sqlitesack.py", line 225, in returnChangelog
    self._loadChangelog()
  File "/usr/lib/python2.5/site-packages/yum/sqlitesack.py", line 209, in _loadChangelog
    "WHERE  pkgId = ?", (self.pkgId,))
  File "/usr/lib/python2.5/site-packages/yum/sqlitesack.py", line 50, in newFunc
    raise Errors.RepoError, str(e)
yum.Errors.RepoError: database disk image is malformed


Expected results: changelog from the Tcl package


Additional info:

Comment 1 seth vidal 2009-10-09 20:29:29 UTC
There are two problems here.

The unicode errors are fixed in current yum/yum-utils in F11. We may or may not back port this to F10.

The database disk image error appears to be separate and will probably be fixed by cleaning out the existing metadata  and recreating it.