<div dir="ltr"><div><div>Ive hit this too and there are a few more<br><br></div>Essentially when RHEL 6.4 was released some packages which were previously in EPEL became officially part of RHEL then back ported to 6.{1,2,3}. the trick to fix this is to delete all the EPEL packages then resync them.<br>

</div><br><br><br>Note: it doesn't matter if EPEL is in a sub channel or not the error will still occur<br><br><div>the trick to prevent this is to delete all the packages in your EPEL channel every time a new version of RHEL is released. I know its not pretty but until a dedup tool is written by some one we will have to live with it. I theoretically know how to write the tool via the APIs I just haven had time.<br>

</div><div><br></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Mon, May 13, 2013 at 12:57 PM, Jon Miller <span dir="ltr"><<a href="mailto:jonebird@gmail.com" target="_blank">jonebird@gmail.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">My problem with seemingly corrupt RPM header data has returned. This time, however, our workout trick of "deleting the libart_lgpl package & re-syncing the channel" is also not working. I did grab some tcpdump captures this time, but I'm not sure how useful yet they will be. Perhaps I was too focused on the repodata last time, so allow me to rephrase the problem:<div>



<br></div><div>1. Client kickstarting a CentOS 6.2 image from our Spacewalk 1.9 server running on RHEL6. </div><div>2. During installation prep, complains about the libart_lgpl header data. Excerpt from the anaconda.log:</div>



<div><div><a href="http://crad-spacewalk.example.com/ks/dist/centos-6.2-x86_64-neo/Packages/libart_lgpl-2.3.20-5.1.el6.x86_64.rpm" target="_blank">http://crad-spacewalk.example.com/ks/dist/centos-6.2-x86_64-neo/Packages/libart_lgpl-2.3.20-5.1.el6.x86_64.rpm</a> failed: [Errno -1] Header is not complete.</div>



<div>09:44:15,291 WARNING : Failed to get <a href="http://crad-spacewalk.example.com/ks/dist/centos-6.2-x86_64-neo/Packages/libart_lgpl-2.3.20-5.1.el6.x86_64.rpm" target="_blank">http://crad-spacewalk.example.com/ks/dist/centos-6.2-x86_64-neo/Packages/libart_lgpl-2.3.20-5.1.el6.x86_64.rpm</a> from mirror 1/1, or downloaded file is corrupt</div>



<div><br></div><div>I have tried the following two trick unsuccessfully this morning:</div><div>1. Delete the RPMs and resync the channel.</div><div>2. Delete the local repodata and trigger a fresh rebuild.</div>

<div><br></div><div>I'm out of ideas at the moment. I'd appreciate any suggestions. </div><div><br></div><div>Thanks,</div><div>Jon Miller</div></div></div><div><div><div class="gmail_extra">
<br>

<br><div class="gmail_quote">On Thu, May 9, 2013 at 4:58 AM, Tomas Lestach <span dir="ltr"><<a href="mailto:tlestach@redhat.com" target="_blank">tlestach@redhat.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">



<div>> When I mentioned the contents of the repodata, after our initial<br>
> removal and triggering Spacewalk to rebuild it, looked identical<br>
> along with modification times, I am referring to the modification<br>
> time as seen on the filesystem via an "ls" command as well as what<br>
> the Channel information showed. Our incident was on May 2nd whereas<br>
> the repodata for our centos6.2-x86-64 channel was showing a modtime<br>
> of April 22nd both before and after the rebuild of the repodata. It<br>
> was only after we removed a package and then re-sync'ed the contents<br>
> of the channel did we see an updated modtime on the repodata and our<br>
> issue disappeared.<br>
<br>
</div>As Michael correctly stated, we set the last modified date of the repodata<br>
files to the 'channel last modified' right after the files are generated.<br>
(We use the same date for timestamp values in the xml files.)<br>
<br>
If you have removed and pushed the same package back (/re-synced), you shall<br>
get the same repodata generated as before just with different modification<br>
dates + different timestamp values (similar to [2]).<br>
If you just remove the repodata files and let them newly regenerate, you<br>
shall get the same content + timestamps as before.<br>
<br>
I hope, that's what you observe.<br>
<div><br>
--<br>
Tomas Lestach<br>
RHN Satellite Engineering, Red Hat<br>
<br>
<br>
><br>
><br>
</div><div><div>> Thanks,<br>
> Jon Miller<br>
><br>
><br>
> [1]: Commands used to compare old repodata vs. current:<br>
><br>
> mkdir tmp && cd tmp<br>
> tar -xzvf /tmp/repodata_20130502.tgz<br>
> var/cache/rhn/repodata/centos6.2-x86_64<br>
> mv var/cache/rhn/repodata/centos6.2-x86_64 centos6.2-x86_64.bad<br>
> rm -rf var<br>
> cp -pr /var/cache/rhn/repodata/centos6.2-x86_64 centos6.2-x86_64.good<br>
> gunzip */*gz<br>
> sed -i -e 's/><package/>\n<package/g' -e 's/><file/>\n <file/g'<br>
> */*.xml<br>
> git diff --no-index --color-words *.bad/primary.xml<br>
> *.good/primary.xml<br>
> git diff --no-index --color-words *.bad/other.xml *.good/other.xml<br>
> git diff --no-index --color-words *.bad/filelists.xml<br>
> *.good/filelists.xml<br>
> git diff --no-index --color-words *.bad/repomd.xml *.good/repomd.xml<br>
> # only diff that produced output<br>
><br>
><br>
> [2]: Actual diff from the repomd.xml file<br>
><br>
><br>
> $ diff -u *.bad/repomd.xml *.good/repomd.xml<br>
> --- centos6.2-x86_64.bad/repomd.xml 2013-05-07 08:07:13.000000000<br>
> -0700<br>
> +++ centos6.2-x86_64.good/repomd.xml 2013-05-07 08:07:16.000000000<br>
> -0700<br>
> @@ -1,2 +1,2 @@<br>
> <?xml version="1.0" encoding="UTF-8"?><br>
> -<repomd xmlns=" <a href="http://linux.duke.edu/metadata/repo" target="_blank">http://linux.duke.edu/metadata/repo</a> "><data<br>
> type="primary"><location href="repodata/primary.xml.gz"/><checksum<br>
> type="sha">63cc0cb94e9c0fbc958cafd73952ba02e612f239</checksum><open-checksum<br>
> type="sha">bba7811915fee90f9c6ae257ed10954731d70ac7</open-checksum><timestamp>1366682902</timestamp></data><data<br>
> type="filelists"><location<br>
> href="repodata/filelists.xml.gz"/><checksum<br>
> type="sha">9fdb004ad90e60e5e34722e553faadac68fa28bd</checksum><open-checksum<br>
> type="sha">eef5c815e9978738055d25d5cb9bc272e0b3e146</open-checksum><timestamp>1366682902</timestamp></data><data<br>
> type="other"><location href="repodata/other.xml.gz"/><checksum<br>
> type="sha">6b928d9937c117b8d0d90171cdb7087b0a841556</checksum><open-checksum<br>
> type="sha">67d55b493f3d89bb62645aff637d98e6df3ac704</open-checksum><timestamp>1366682902</timestamp></data><data<br>
> type="group"><location href="repodata/comps.xml"/><checksum<br>
> type="sha">01beeafb865b9e6bcefc9b3272ebcb1a93e16da0</checksum><timestamp>1366682902</timestamp></data></repomd><br>
> \ No newline at end of file<br>
> +<repomd xmlns=" <a href="http://linux.duke.edu/metadata/repo" target="_blank">http://linux.duke.edu/metadata/repo</a> "><data<br>
> type="primary"><location href="repodata/primary.xml.gz"/><checksum<br>
> type="sha">63cc0cb94e9c0fbc958cafd73952ba02e612f239</checksum><open-checksum<br>
> type="sha">bba7811915fee90f9c6ae257ed10954731d70ac7</open-checksum><timestamp>1367522246</timestamp></data><data<br>
> type="filelists"><location<br>
> href="repodata/filelists.xml.gz"/><checksum<br>
> type="sha">9fdb004ad90e60e5e34722e553faadac68fa28bd</checksum><open-checksum<br>
> type="sha">eef5c815e9978738055d25d5cb9bc272e0b3e146</open-checksum><timestamp>1367522246</timestamp></data><data<br>
> type="other"><location href="repodata/other.xml.gz"/><checksum<br>
> type="sha">6b928d9937c117b8d0d90171cdb7087b0a841556</checksum><open-checksum<br>
> type="sha">67d55b493f3d89bb62645aff637d98e6df3ac704</open-checksum><timestamp>1367522246</timestamp></data><data<br>
> type="group"><location href="repodata/comps.xml"/><checksum<br>
> type="sha">01beeafb865b9e6bcefc9b3272ebcb1a93e16da0</checksum><timestamp>1367522246</timestamp></data></repomd><br>
> \ No newline at end of file<br>
><br>
><br>
</div></div><div><div>> _______________________________________________<br>
> Spacewalk-list mailing list<br>
> <a href="mailto:Spacewalk-list@redhat.com" target="_blank">Spacewalk-list@redhat.com</a><br>
> <a href="https://www.redhat.com/mailman/listinfo/spacewalk-list" target="_blank">https://www.redhat.com/mailman/listinfo/spacewalk-list</a><br>
<br>
_______________________________________________<br>
Spacewalk-list mailing list<br>
<a href="mailto:Spacewalk-list@redhat.com" target="_blank">Spacewalk-list@redhat.com</a><br>
<a href="https://www.redhat.com/mailman/listinfo/spacewalk-list" target="_blank">https://www.redhat.com/mailman/listinfo/spacewalk-list</a><br>
</div></div></blockquote></div><br></div>
</div></div><br>_______________________________________________<br>
Spacewalk-list mailing list<br>
<a href="mailto:Spacewalk-list@redhat.com" target="_blank">Spacewalk-list@redhat.com</a><br>
<a href="https://www.redhat.com/mailman/listinfo/spacewalk-list" target="_blank">https://www.redhat.com/mailman/listinfo/spacewalk-list</a><br></blockquote></div><br></div></div>