Description of problem: I've attempted to upload the package ocaml-bitstring-2.0.0-10.fc12.x86_64.rpm to Red Hat Satellite via rhnpush. After a couple of seconds, the following error message appears: Internal server error 500 Internal Server Error Error pushing /root/mirror.switch.ch/mirror/fedora/linux/releases/12/Everything/x86_64/os/Packages/ocaml-bitstring-2.0.0-10.fc12.x86_64.rpm: Error 500Error Message: ORA-00001: unique constraint (RHNSAT.RHN_PKG_REQ_PID_CID_S_UQ) violated Error Class Code: 54 Error Class Info: Package Upload Failed due to uniqueness constraint violation. Make sure the package does not have any duplicate dependencies or does not already exists on the server (500) Waiting 5 seconds and trying again... Internal server error 500 Internal Server Error Error pushing /root/mirror.switch.ch/mirror/fedora/linux/releases/12/Everything/x86_64/os/Packages/ocaml-bitstring-2.0.0-10.fc12.x86_64.rpm: Error 500Error Message: ORA-00001: unique constraint (RHNSAT.RHN_PKG_REQ_PID_CID_S_UQ) violated Error Class Code: 54 Error Class Info: Package Upload Failed due to uniqueness constraint violation. Make sure the package does not have any duplicate dependencies or does not already exists on the server (500) Waiting 5 seconds and trying again... Internal server error 500 Internal Server Error Error pushing /root/mirror.switch.ch/mirror/fedora/linux/releases/12/Everything/x86_64/os/Packages/ocaml-bitstring-2.0.0-10.fc12.x86_64.rpm: Error 500Error Message: ORA-00001: unique constraint (RHNSAT.RHN_PKG_REQ_PID_CID_S_UQ) violated Error Class Code: 54 Error Class Info: Package Upload Failed due to uniqueness constraint violation. Make sure the package does not have any duplicate dependencies or does not already exists on the server (500) Waiting 1 seconds and trying again... Giving up after 3 attempts Version-Release number of selected component (if applicable): How reproducible: rhnpush -d Packages/ -c fedora12-stag --server=satellite.example.com --force Steps to Reproduce: 1. rhnpush -d Packages/ -c fedora12-stag --server=satellite.example.com --force 2. 3. Actual results: Can't upload package. Expected results: Upload package. Additional info: There is the suspicion the error occures because of multiple requires for the same "package dependencies": rpm -q --requires -p ocaml-bitstring-2.0.0-10.fc12.x86_64.rpm rpmlib(VersionedDependencies) <= 3.0.3-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(VersionedDependencies) <= 3.0.3-1 libc.so.6()(64bit) libc.so.6(GLIBC_2.2.5)(64bit) ocaml(Arg) = b6513be035dc9c8a458c189cd8841700 ocaml(Array) = 9c9fa5f11e2d6992c427dde4d1168489 ocaml(Buffer) = 23af67395823b652b807c4ae0b581211 ocaml(Camlp4) = bb930f7c2bed5d057c794fe07dc8596a ocaml(Camlp4_config) = 80b5d58834366711574a5ec4dfb123fd ocaml(Camlp4_import) = 4d17b58763ba1f0aac92fd5dbb558b59 ocaml(Char) = 3da72249626c7db769beafc97036cb4f ocaml(Filename) = 7cd172f02b7ee9b8d7bda3bb92144951 ocaml(Format) = b7ba3152a5eec5609d6ab86e6c51eebb ocaml(Hashtbl) = ee2a3220e38a4350c5bc131ce9f3f6ce ocaml(Int32) = b2545c419b6b6a173cac4c0a3e7e0277 ocaml(Int64) = d501d6e89fdce41c79f274fb464995d5 ocaml(Lexing) = 4d17267334f1a6c75730dc3fae21fb9b ocaml(List) = a0e2e49d266ff302f8667651a43f71ba ocaml(Marshal) = 02be0525cda0ca38ef8d49584e7769d6 ocaml(Nativeint) = 7233ce5207a538fea4f0c61ed411ea2c ocaml(Obj) = c827f726ce05da709cf7de58fc15e324 ocaml(Parsing) = 29c3f123280f8e6e639cfb025b3c9a3f ocaml(Pervasives) = 88cb1505c8bdf9a4dcd2cdf3452732b4 ocaml(Printf) = 807ecd3a1538992580464c03462c9964 ocaml(Queue) = 56b5e04dcda600ae0cdf49a37f17fcd9 ocaml(Set) = c4be5d24d30c129dd60d2739e54db7dd ocaml(Stream) = 91a43ea7fb16bf36f3f10c0dc7d08a0e ocaml(String) = ecc403546c1c50056801131811c39017 ocaml(Sys) = 21bf525b2b3f3a46a54b96163adfe387 ocaml(Unix) = 0596a58544f8cd88fed5bf5432a53d43 ocaml(runtime) = 3.11.1 rpmlib(PayloadIsXz) <= 5.2-1
(In reply to comment #0) > Additional info: > There is the suspicion the error occures because of multiple requires for the > same "package dependencies": Which of those package dependencies is causing a problem? TBH I know nothing at all about Red Hat Satellite, so I suggest you raise a ticket with your support person who will escalate this through the usual support channels.
hi Richard, The actual problem is that there are duplicate requires in the RPM. These are not allowed by Satellite/Spacewalk and should be prevented: as far as I know, I think this gives you an answer: # rpm -q --requires -p ocaml-bitstring-2.0.0-10.fc12.x86_64.rpm | sort > ocaml-bitstring-2.0.0-10.fc12.x86_64.rpm.full # rpm -q --requires -p ocaml-bitstring-2.0.0-10.fc12.x86_64.rpm | sort -u > ocaml-bitstring-2.0.0-10.fc12.x86_64.rpm.filtered # diff -u ocaml-bitstring-2.0.0-10.fc12.x86_64.rpm.full ocaml-bitstring-2.0.0-10.fc12.x86_64.rpm.filtered --- ocaml-bitstring-2.0.0-10.fc12.x86_64.rpm.full 2010-02-24 08:47:52.797010246 +0100 +++ ocaml-bitstring-2.0.0-10.fc12.x86_64.rpm.filtered 2010-02-24 08:48:08.045886297 +0100 @@ -32,4 +32,3 @@ rpmlib(PayloadFilesHavePrefix) <= 4.0-1 rpmlib(PayloadIsXz) <= 5.2-1 rpmlib(VersionedDependencies) <= 3.0.3-1 -rpmlib(VersionedDependencies) <= 3.0.3-1 have an eye on: rpmlib(VersionedDependencies) <= 3.0.3-1 Satellite is something like a pretty cool centralized system management server :-) Red Hat made a community version: http://www.redhat.com/spacewalk/ This is a must have for enterprise fedora/redhat IT infrastructure.
*** Bug 567632 has been marked as a duplicate of this bug. ***
Updating summary to accurately reflect the problem. I ran this script over the RPMs installed on a Fedora 12 machine to find out which RPMs are affected by the problem: $ for f in $(rpm -qa); do \ if [ $(rpm -qR $f | fgrep 'rpmlib(VersionedDependencies)' | wc -l) -eq 2 ]; \ then echo $f; fi; \ done ocaml-bitstring-2.0.0-10.fc12.x86_64 ocaml-runtime-3.11.1-0.rc1.2.fc12.1.x86_64 perl-HTML-Parser-3.64-1.fc12.x86_64 And on another F12 machine that was partially upgraded to Rawhide: perl-Net-SSLeay-1.35-7.fc12.x86_64 perl-HTML-Parser-3.64-1.fc12.x86_64 perl-POE-1.269-1.fc12.noarch perl-IO-Tty-1.08-3.fc12.x86_64 perl-Class-MOP-0.94-1.fc12.x86_64 perl-POE-Component-IRC-6.14-1.fc12.noarch perl-SOAP-Lite-0.710.10-1.fc12.noarch perl-Moose-0.92-1.fc12.noarch perl-Try-Tiny-0.02-1.fc12.noarch perl-Class-C3-XS-0.13-1.fc12.x86_64 perl-POE-Component-Pluggable-1.24-1.fc12.noarch perl-Devel-GlobalDestruction-0.02-7.fc12.x86_64 perl-POE-Test-Loops-1.022-1.fc12.noarch perl-Event-1.12-1.fc12.x86_64 perl-Sub-Identify-0.04-6.fc12.x86_64 This problem, for OCaml at least, seems to be fixed in Rawhide, so I suggest the reporter just uses the OCaml packages from Rawhide (they have a more recent version of OCaml too).
This bug doesn't occur in any F13 OCaml packages. It does still occur in many Perl packages from Rawhide, so reassigning to Perl. $ for f in $(rpm -qa); do if [ $(rpm -qR $f | fgrep 'rpmlib(VersionedDependencies)' | wc -l) -ge 2 ]; then echo $f; fi; done perl-Class-MOP-0.98-2.fc13.x86_64 perl-POE-Component-IRC-6.14-1.fc12.noarch perl-SOAP-Lite-0.710.10-1.fc12.noarch perl-Moose-0.92-1.fc12.noarch perl-Try-Tiny-0.02-1.fc12.noarch perl-POE-1.269-2.fc13.noarch perl-IO-Tty-1.08-4.fc13.x86_64 perl-Class-C3-XS-0.13-1.fc12.x86_64 perl-POE-Component-Pluggable-1.24-1.fc12.noarch perl-Devel-GlobalDestruction-0.02-7.fc12.x86_64 perl-POE-Test-Loops-1.022-1.fc12.noarch perl-Net-SSLeay-1.36-1.fc13.x86_64 perl-HTML-Parser-3.64-2.fc13.x86_64 perl-Event-1.12-1.fc12.x86_64 perl-Sub-Identify-0.04-6.fc12.x86_64
Hi Richard, I understand you pointing at the rawhide packages. But since I administrate a Satellite Server, I am familiar with software staging/production systems. I have a lot of packages in the Satellite to support. So if a package has a bug and it gets fixed I have to upload it to the staging software channel. After testing it, it gets a part of the production software channel. Each channel only contains software from one release. For example the satellite server hosts a channel called "Fedora 12 Release Software" (Staging). Another one is called "Fedora 12 Updates" (Staging). Maybe you already get my drift. I don't upload a Rawhide Package into the software channel "Fedora 12 Release Software" neither to "Fedora 12 Updates". It mixes up all the packages.
Looks like most of the perl-* packages mentioned above are mine, so I'm going to go ahead and mark this as NOTABUG for all the reasons described in bug 567633.
(In reply to comment #7) > Looks like most of the perl-* packages mentioned above are mine, so I'm going > to go ahead and mark this as NOTABUG for all the reasons described in bug > 567633. You might reconsider it because of: bug 567633, comment 6