Description of problem: rhnpush fails to upload large packages to satellite server with traceback.. Exception Handler Information Traceback (most recent call last): File "/usr/share/rhn/server/apacheUploadServer.py", line 97, in _wrapper ret = function(req) File "/usr/share/rhn/upload_server/handlers/package_push/package_push.py", line 103, in handler temp_stream = rhnPackageUpload.write_temp_file(req, 16384) File "/usr/share/rhn/server/rhnPackageUpload.py", line 104, in write_temp_file shutil.copyfileobj(req,t) File "/usr/lib/python2.3/shutil.py", line 21, in copyfileobj buf = fsrc.read(length) SERVER_RETURN: 400 Version-Release number of selected component (if applicable): All satellite versions How reproducible: always Actual results: ISE Expected results: push success
I believe, if you dig around the error_log, you will find line similar to the following: [Mon Mar 31 11:08:32 2008] [error] [client 10.10.76.168] Invalid Content-Length That seems to be the primary cause of the problem, at least as far as I could tell from investigating the 32bit setup Sayli K. did.
I'm adding myself to cc of this bug. We should have to try to push the big rpm to proxy custom channel too. The solution will be likely the same.
Here is a test plan we used for 64bit satellite: The results of investigation with Satellite 5.2.0: Downloading 2+GB file from /pub: [PASS] Creating 2+GB rpm on RHEL 4 and RHEL 5: [FAIL] 433795: When building rpm bigger than 2G, rpmbuild fails with segmentation fault The rpm/rpmbuild maintainer says 2+GB rpms are not supported. Even on Fedora 8 the rpm -qi shows negative size so indeed, the toolchain is not 2+GB ready even on latest RHELs and Fedoras. Creating 2+GB rpm on Fedora 8: [PASS] Pushing 2+GB rpm to Satellite using rhnpush: [PASS] Installing 2+GB rpm on RHEL 4 via up2date: [FAIL] 434168: exceptions.OverflowError when up2date'ing rpm bigger than 2GB The file gets downloaded to the client alright, so Satellite handles the file just fine. It's a client tool problem. Installing 2+GB rpm on RHEL 5 via yum: [PASS] So for this bugzilla we have to check (both server and client running RHEL5.i386): Downloading 2+GB file from /pub Pushing 2+GB rpm to Satellite using rhnpush Installing 2+GB rpm on RHEL 5 via yum
This already works on Spacewalk 1.1 nightly on RHEL5.5 i386 vs. RHEL5.5 i386 client: (huge-rpm-1.0-20100712.135331.noarch.rpm created on Fedora 12 box.) Downloading 2+GB file from /pub [PASS] # wget https://xen96.englab.brq.redhat.com/pub/huge-rpm-1.0-20100712.135331.noarch.rpm --2010-07-13 16:34:47-- https://xen96.englab.brq.redhat.com/pub/huge-rpm-1.0-20100712.135331.noarch.rpm Resolving xen96.englab.brq.redhat.com... 10.34.34.96 Connecting to xen96.englab.brq.redhat.com|10.34.34.96|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 2622241686 (2.4G) [application/x-rpm] Saving to: `huge-rpm-1.0-20100712.135331.noarch.rpm' 100%[============================================>] 2,622,241,686 11.1M/s in 4m 34s 2010-07-13 16:39:21 (9.11 MB/s) - `huge-rpm-1.0-20100712.135331.noarch.rpm' saved [2622241686/2622241686] Pushing 2+GB rpm to Satellite using rhnpush [PASS] # rhnpush -vv --server http://localhost/APP huge-rpm-1.0-20100712.135331.noarch.rpm --nosig Connecting to http://localhost/APP url is http://localhost/PACKAGE-PUSH Result codes: 200 OK Computing checksum and package info. This may take some time ... Package huge-rpm-1.0-20100712.135331.noarch.rpm Not Found on RHN Server -- Uploading Uploading package huge-rpm-1.0-20100712.135331.noarch.rpm Using POST request Installing 2+GB rpm on RHEL 5 via yum [PASS] # yum repolist Loaded plugins: rhnplugin, security repo id repo name status hugerpm hugerpm enabled: 1 repolist: 1 # yum install huge-rpm Loaded plugins: rhnplugin, security Finished Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package huge-rpm.noarch 0:1.0-20100712.135331 set to be updated --> Finished Dependency Resolution Dependencies Resolved ======================================================================================== Package Arch Version Repository Size ======================================================================================== Installing: huge-rpm noarch 1.0-20100712.135331 hugerpm 2.0 G Transaction Summary ======================================================================================== Install 1 Package(s) Upgrade 0 Package(s) Total download size: 2.0 G Downloading Packages: huge-rpm-1.0-20100712.135331.noarch.rpm | 2.4 GB 05:39 Running rpm_check_debug Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Installing : huge-rpm 1/1 Installed: huge-rpm.noarch 0:1.0-20100712.135331 Complete!
Verified w/ spacewalk-backend-1.2.13-10
The 5.4.0 RHN Satellite and RHN Proxy release has occurred. This issue has been resolved with this release. RHEA-2010:0801 - RHN Satellite Server 5.4.0 Upgrade https://rhn.redhat.com/rhn/errata/details/Details.do?eid=10332 RHEA-2010:0803 - RHN Tools enhancement update https://rhn.redhat.com/rhn/errata/details/Details.do?eid=10333 RHEA-2010:0802 - RHN Proxy Server 5.4.0 bug fix update https://rhn.redhat.com/rhn/errata/details/Details.do?eid=10334 RHEA-2010:0800 - RHN Satellite Server 5.4.0 https://rhn.redhat.com/rhn/errata/details/Details.do?eid=10335 Docs are available: http://docs.redhat.com/docs/en-US/Red_Hat_Network_Satellite/index.html Regards, Clifford