Description of problem: yum downloads broken package if it tries to continue interrupted download from server which do not support partial downloads. Version-Release number of selected component (if applicable): 3.2.8-7.el5 How reproducible: always Steps to Reproduce: 1. configure system against RHN Proxi 4.2 (was fixed in 4.2.2) 2. yum linstall something Actual results: # yum -y --noplugins --disablerepo=* --enablerepo=myrepo install big-package ... ---> Downloading header for big-package to pack into transaction set. big-package-0.1-1.noarch. 100% |=========================| 66 kB 00:08 http://pok.englab.brq.redhat.com/test-rpmbuild-big-package-0.1-1/RPMS/noarch/ big-package-0.1-1.noarch.rpm: [Errno -1] Header is not complete. Trying other mirror. Error: failure: test-rpmbuild-big-package-0.1-1/RPMS/noarch/big- package-0.1-1.noarch.rpm from myrepo: [Errno 256] No more mirrors to try. Expected results: download and installation passes Additional info: This is related to bug 249710
Created attachment 296028 [details] webserver I have used for testing (slightly modified example from http://fragments.turtlemeat.com/pythonwebserver.php)
Was this supposed to be against RHEL-5.2?
So the crux of this problem is that you do a range request, to a server that doesn't understand them ... so you get back 200 (instead of 206) and the entire file (instead of the range you wanted). This is entirely legal, so we should handle it (Ie. ignore what we have already, and start again) ... and I'm pretty surprised we don't. I think we just need to truncate the file in HTTPRangeHandler() when we get a 200 response.
Changed "Product" to RHEL-5.2 (main concern here are old RHN Proxies which can not do partial download)
I'm sure this is not fixed upstream..
This request was evaluated by Red Hat Product Management for inclusion in the current release of Red Hat Enterprise Linux. Because the affected component is not scheduled to be updated in the current release, Red Hat is unable to address this request at this time. Red Hat invites you to ask your support representative to propose this request, if appropriate, in the next release of Red Hat Enterprise Linux.
According to the code and changelog, reget over broken proxy has been fixed: * Mon Jul 21 2008 James Antill <jantill> - 3.1.0-4 - reget with HTTP servers that don't support Range It seems that the reported problem is quite different, and related to RPM header download. But the above fix does not work with byte ranges. I've made an update that *should* fix this, too.
Created attachment 837636 [details] Adjust the file offset when byte ranges don't work
Created attachment 837663 [details] Skip the lead when byte ranges didn't work on the server Last minute changes (renamed variable) suck..
This bug/component is not included in scope for RHEL-5.11.0 which is the last RHEL5 minor release. This Bugzilla will soon be CLOSED as WONTFIX (at the end of RHEL5.11 development phase (Apr 22, 2014)). Please contact your account manager or support representative in case you need to escalate this bug.
Thank you for submitting this request for inclusion in Red Hat Enterprise Linux 5. We've carefully evaluated the request, but are unable to include it in RHEL5 stream. If the issue is critical for your business, please provide additional business justification through the appropriate support channels (https://access.redhat.com/site/support).