Description of problem: wget RPM from client to RHN Satellite via RHN Proxy returns 0 byte file Version-Release number of selected component (if applicable): RHN Proxy 530 How reproducible: Always Steps to Reproduce: 1. Setup a RHN Proxy 5.3 connected to RHN Satellite 530 2. From the Satellite WebUI, click Channels -> Packages -> Select any package's download link 3. Replace the RHN Satellite's FQDN with RHN Proxy's FQDN 4. wget http://rhn-proxy-fqdn/download/package/92ae189222b8301fb35a07d1ba393ff67517a713/1276023102650/1/14044/acpid-1.0.4-5.i386.rpm Actual results: -rw-rw-r-- 1 xxxx xxxx 0 2010-06-10 12:46 acpid-1.0.4-5.i386.rpm A zero byte rpm package Expected results: Full/actual size of the RPM package Additional info: A wget of the same package using RHN Satellite's FQDN works fine.
Problem is in: 2010/06/15 08:14:08 -04:00 2840 127.0.0.1: proxy/rhnShared._forwardServer2Client 2010/06/15 08:14:08 -04:00 2840 127.0.0.1: proxy/rhnShared._determineHTTPBodySize('headers: ', [('transfer-encoding', 'chunked'), ('set-cookie', 'JSESSIONID=8A60B7AA0C6FE2019F25949F394F0CEF; Path=/rhn; Secure'), ('keep-alive', 'timeout=15, max=400'), ('connection', 'Keep-Alive'), ('date', 'Tue, 15 Jun 2010 12:13:00 GMT'), ('content-type', 'application/octet-stream;charset=UTF-8')]) 2010/06/15 08:14:08 -04:00 2840 127.0.0.1: proxy/rhnShared._forwardHTTPBody('Response body size: ', 0) 2010/06/15 08:14:08 -04:00 2840 127.0.0.1: proxy/apacheHandler.handler('Leaving with status code 0',) where _forwardHTTPBody forward 0 bytes of body. This is due missing content lenght in response from satellite: $ GET -sSed http://morbo.rdu.redhat.com/download/package/11bad99a0e3360de514e17b3d818b01152999f13/1276639949993/1/38976/kmod-kvm-83-105.el5_4.27.x86_64.rpm GET http://morbo.rdu.redhat.com/download/package/11bad99a0e3360de514e17b3d818b01152999f13/1276639949993/1/38976/kmod-kvm-83-105.el5_4.27.x86_64.rpm --> 200 OK Connection: close Date: Tue, 15 Jun 2010 12:19:02 GMT Content-Type: application/octet-stream;charset=UTF-8 Client-Date: Tue, 15 Jun 2010 12:19:04 GMT Client-Peer: 10.11.242.126:80 Client-Response-Num: 1 Client-Transfer-Encoding: chunked Set-Cookie: JSESSIONID=5E5E363195FB04E8D4BFC058EE8EDAEE; Path=/rhn Note that even with fix from https://bugzilla.redhat.com/show_bug.cgi?id=578854#c2 it did not work. The data however get from rhnRedirect to squid, but squid thinks: 2010/06/15 08:36:01| Oversized chunk header on port 33548, url http://127.0.0.1/download/package/bcdb679c2b84b60f43fb147546dae17fcfb49d71/1276641267091/1/38906/kmod-kvm-83-105.el5.x86_64.rpm and immediately release the data from cache. And rhnBroker will not forward those data anyway (reason is still unknown to me). But correct fix should be to send Content-Length from Satellite server.
Adding "Content-Length" to response header for different download contents spacewalk.git: a66747190151e01e482b30e7d627f7f833947f70
cherrypicked to satellite.git as commit 3a7066013955f958a7668c3d928a47259d3f428e
# VERIFIED Checked against Satellites installed on RHEL4, RHEL5. (with arch-s i386 x86_64). The rpm, Solaris pkg, patch and patch cluster stuff retrieval is successful (with content length not 0) through RHN Proxy now. Packages fixing the issue: --- spacewalk-java-0.5.44-84 spacewalk-java-config-0.5.44-84 spacewalk-java-lib-0.5.44-84 spacewalk-taskomatic-0.5.44-84 ---
An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on therefore solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHBA-2010-0502.html