| Summary: | anaconda crash in yuminstall.py due to missing package that should have been installed | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | Red Hat Enterprise Linux 6 | Reporter: | Suqin Huang <shuang> | ||||||
| Component: | yum | Assignee: | James Antill <james.antill> | ||||||
| Status: | CLOSED WONTFIX | QA Contact: | BaseOS QE Security Team <qe-baseos-security> | ||||||
| Severity: | high | Docs Contact: | |||||||
| Priority: | high | ||||||||
| Version: | 6.1 | CC: | akozumpl, borgan, ddumas, pknirsch | ||||||
| Target Milestone: | rc | ||||||||
| Target Release: | --- | ||||||||
| Hardware: | Unspecified | ||||||||
| OS: | Unspecified | ||||||||
| Whiteboard: | |||||||||
| Fixed In Version: | Doc Type: | Bug Fix | |||||||
| Doc Text: | Story Points: | --- | |||||||
| Clone Of: | Environment: | ||||||||
| Last Closed: | 2012-06-26 19:39:35 UTC | Type: | --- | ||||||
| Regression: | --- | Mount Type: | --- | ||||||
| Documentation: | --- | CRM: | |||||||
| Verified Versions: | Category: | --- | |||||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||||
| Attachments: |
|
||||||||
Can you please attach all the logfiles and the complete traceback? You can save all this information into a file using the 'save' button in the exception dialog. Created attachment 480724 [details]
trace info
Traceback (most recent call first):
File "/usr/lib/anaconda/yuminstall.py", line 1095, in _run
for (descr, (ty, mount, need)) in probs.value: # FIXME: probs.value???
File "/usr/lib/anaconda/yuminstall.py", line 1062, in run
if self._run(instLog, cb, intf) == DISPATCH_BACK:
File "/usr/lib/anaconda/yuminstall.py", line 1838, in doInstall
rc = self.ayum.run(self.instLog, cb, anaconda.intf, anaconda.id)
File "/usr/lib/anaconda/backend.py", line 242, in doInstall
return anaconda.backend.doInstall(anaconda)
File "/usr/lib/anaconda/dispatch.py", line 208, in moveStep
rc = stepFunc(self.anaconda)
File "/usr/lib/anaconda/dispatch.py", line 126, in gotoNext
self.moveStep()
File "/usr/lib/anaconda/text.py", line 665, in run
anaconda.dispatch.gotoNext()
File "/usr/bin/anaconda", line 1121, in <module>
anaconda.intf.run(anaconda)
ValueError: need more than 1 value to unpack
James, is this another instance of bug 613817? We have always only expected a YumBaseError that has a .value saying what type of exception this is etc. It looks like it, but the fix looks like it's in yum ... so this shouldn't happen anymore. Can we make sure where the raise is coming from? Also this is the latest RHEL-6.1 yum, I assume? The value of the exception that we couldn't take apart (and tracebacked) is "Rpmdb checksum is invalid: dCDPT(pkg checksums)", so it was raised in yum/rpmsack.py. It is reported against anaconda-13.21.97-1 from Feb 10th (so it could be 11th or so 6.1 nightly). Ok, so this is a different exception ... the problem is that anaconda isn't expecting any other kinds of exceptions apart from the ones from rpm.
The specific exception is from this:
for txmbr in precache:
(n, a, e, v, r) = txmbr.pkgtup
pkg = self.searchNevra(n, e, v, r, a)
if not pkg:
# Wibble?
self._deal_with_bad_rpmdbcache("dCDPT(pkg checksums)")
continue
...and means that we had a package that was supposed to be installed, and it didn't get installed (and the transaction didn't fail). Which should never happen.
It would certainly be interesting to see what the difference was there.
Interestingly the exception only gets thrown when yum is running in debug mode, see:
def _deal_with_bad_rpmdbcache(self, caller):
[...]
if __debug__:
raise Errors.PackageSackError, 'Rpmdb checksum is invalid: %s' % caller
...so does anaconda intentional run in __debug__ mode?
Do we have any more of these, are they reproducible?
According to http://docs.python.org/library/constants.html?highlight=__debug__#__debug__ __debug__ is true whenever -O is not specified when anaconda is started, which it is not as far as I know, so it makes sense the exception gets thrown. I haven't heard of somebody else reproducing this (but who knows what's the state of the repo from the bug report). Moving this to 6.2 at this point. Also asking again: Do we have any more of these, are they reproducible? can reproduce in tree RHEL6.1-20110317.1 (In reply to comment #10) > Moving this to 6.2 at this point. Also asking again: > > Do we have any more of these, are they reproducible? No, I don't think we have seen this bug since. But this can be because the RPM db or a package was broken in some specific way and then the error handling failed. Not going to ACK this as I'm still not sure there's a real bug in yum, but leave this open for 6.2 and if we see any more of these we can look to find out how packages are disappearing. Since RHEL 6.3 External Beta has begun, and this bug remains unresolved, it has been rejected as it is not proposed as exception or blocker. Red Hat invites you to ask your support representative to propose this request, if appropriate and relevant, in the next release of Red Hat Enterprise Linux. Going to just close this, given it's basically a dead bug somewhere. |
Created attachment 480313 [details] anaconda crash Description of problem: using the default setting to install RHEL6.1-20110210.1/6/Server/x86_64/ with qemu, anaconda crash in yuminstall.py while packages are 100% installed Version-Release number of selected component (if applicable): anaconda-13.21.97-1.el6.x86_64.rpm kernel-2.6.32-114.0.1.el6.x86_64.rpm RHEL6.1-20110210.1/6/Server/x86_64/ How reproducible: 2/35 Steps to Reproduce: 1. using the default setting to install RHEL6.1-20110210.1/6/Server/x86_64/ with qemu 2. 3. Actual results: Expected results: Additional info: