[Spacewalk-list] Slight weirdness post spacewalk 0.2->0.4 upgrade

David Nutter davidn at bioss.sari.ac.uk
Fri Jan 23 17:32:04 UTC 2009


Hello,

After (very smoothly :)) upgrading, package installs on clients
failed, claiming that (from up2date log):

[Fri Jan 23 17:12:55 2009] up2date 
Traceback (most recent call last):
  File "/usr/sbin/rhn_check", line 273, in __run_action
    (status, message, data) = CheckCli.__do_call(method, params)
  File "/usr/sbin/rhn_check", line 266, in __do_call
    retval = method(*params)
  File "/usr/share/rhn/actions/packages.py", line 246, in update
    return runTransaction(transaction_data)
  File "/usr/share/rhn/actions/packages.py", line 279, in
  runTransaction
    return _run_yum_action(command)
  File "/usr/share/rhn/actions/packages.py", line 301, in
  _run_yum_action
    yum_base = YumAction()
  File "/usr/share/rhn/actions/packages.py", line 53, in __init__
    self.doTsSetup()
  File "/usr/lib/python2.4/site-packages/yum/depsolve.py", line 72, in
  doTsSetup
    return self._getTs()
  File "/usr/lib/python2.4/site-packages/yum/depsolve.py", line 85, in
  _getTs
    self._getTsInfo()
  File "/usr/lib/python2.4/site-packages/yum/depsolve.py", line 91, in
  _getTsInfo
    self._tsInfo.setDatabases(self.rpmdb, self.pkgSack)
  File "/usr/lib/python2.4/site-packages/yum/__init__.py", line 537,
  in <lambda>
    pkgSack = property(fget=lambda self: self._getSacks(),
  File "/usr/lib/python2.4/site-packages/yum/__init__.py", line 392,
  in _getSacks
    self.repos.populateSack(which=repos)
  File "/usr/lib/python2.4/site-packages/yum/repos.py", line 242, in
  populateSack
    sack.populate(repo, mdtype, callback, cacheonly)
  File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 165, in
  populate
    xml = repo_get_function()
  File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 880, in
  getPrimaryXML
    return self.retrieveMD('primary')
  File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 867, in
  retrieveMD
    cache=self.http_caching == 'all')
  File "/usr/lib/yum-plugins/rhnplugin.py", line 299, in _getFile
    raise yum.Errors.RepoError, \
yum.Errors.RepoError: failed to retrieve repodata/primary.xml.gz from
centos-x86_64-base-5
error was [Errno -1] Metadata file does not match checksum



Similarly, yum when run on the client reported:

  Error: failed to retrieve repodata/primary.xml.gz from centos-x86_64-base-5
  error was [Errno -1] Metadata file does not match checksum

I assumed that spacewalk's yum metadata update process had gone wrong
somehow, so I forced it to re-run by deleting an obscure package from
the affected channel and accessed the metadata again with yum.

Remarkably, this hideous hack worked. Is there a way to force
spacewalk to regenerate the metadata for a particular channel? Reading
the (tangentially related) page

https://fedorahosted.org/spacewalk/wiki/DeltaRpmSupport

suggests not but I'd welcome confirmation.

Regards,

-- 
David Nutter  				Tel: +44 (0)131 650 4888
BioSS, JCMB, King's Buildings, Mayfield Rd, EH9 3JZ. Scotland, UK 

Biomathematics and Statistics Scotland (BioSS) is formally part of The
Scottish Crop Research Institute (SCRI), a registered Scottish charity
No. SC006662




More information about the Spacewalk-list mailing list