Bug 112606
Summary: | yum clean pukes | ||||||
---|---|---|---|---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Chris Ricker <chris.ricker> | ||||
Component: | yum | Assignee: | Jeff Johnson <jbj> | ||||
Status: | CLOSED WORKSFORME | QA Contact: | |||||
Severity: | medium | Docs Contact: | |||||
Priority: | medium | ||||||
Version: | 1 | CC: | lohphat | ||||
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: | 2003-12-24 13:55:25 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: | |||||||
Attachments: |
|
Description
Chris Ricker
2003-12-24 13:35:07 UTC
Is this a general problem or just a single case? If single, not all forms of corruption can be unambiguously detected. I'd say this is a single case of a general problem. I get these sorts of errors regularly when I do my yum update ; yum clean cycle. Manually deleting the header usually fixes, but it'd be nice if yum didn't puke / yum clean would actually work Created attachment 96692 [details]
bad header
i've attached the bad header. I'm using a web proxy on that particular box,
which probably doesn't help matters ;-)
Can you start saving the headers? No way to fix otherwise. FWIW, there are insufficient constraints on rpm header data to unambiguously detect errors, that's why header SHA1 was added. There are still packages around that do not have header SHA1 data. There are also implementations that disable the check for performance. If you get 5-10 headers with errors, I will take a look. Perhaps there's a few more tweaks that can be done. Reopen this bug then, worksforme as in cd /var/cache/yum/*/headers rm -f * Okay. From what I can tell the general corruption I'm seeing is truncated headers. I suspect it's something like 1. someone on proxy runs yum, interrupts it 2. proxy caches incomplete header 3. I run yum, get bad header from proxy 4. yum doesn't detect truncation and Bad Things happen If that's the scenario, the real problem is steps 1-2, but it'd be nice if yum could detect the truncation and give a more user-friendly error than a traceback. Of course, if it can't, it can't.... I just got this running yum-2.0.7-1.1 on kernel 2.6.7-1.494.2.2: # yum clean Gathering header information file(s) from server(s) Server: Fedora Core 2 - i386 - Base Server: Fedora Core 2 - i386 - Released Updates Finding updated packages Cleaning packages and old headers Damaged Header /var/cache/yum/updates-released/headers/kernel-sourcecode-0-2.6.6-1.435.2.1.noarch.hdr Traceback (most recent call last): File "/usr/bin/yum", line 30, in ? yummain.main(sys.argv[1:]) File "/usr/share/yum/yummain.py", line 296, in main HeaderInfo, rpmDBInfo, obsoleted) File "/usr/share/yum/clientStuff.py", line 1156, in take_action clean_up_old_headers(rpmDBInfo, HeaderInfo) File "/usr/share/yum/clientStuff.py", line 772, in clean_up_old_headers (e, n, v, r, a) = getENVRA(hdr) File "/usr/share/yum/clientStuff.py", line 67, in getENVRA if header[rpm.RPMTAG_EPOCH] == None: TypeError: unsubscriptable object |