yum problems

So, going back and fixing up auth on our few remaining older systems (centos 5, not internet facing) came across the error below. Solution was beautifully non obvious, so it goes here in the external memory pack.

yum --enablerepo=my-repo-x86_64  list updates
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: a.centos.mirror
 * epel: another.centos.mirror
 * extras: and.a.further.centos.mirror
 * updates: centos-updates.co.uk
my-repo-x86_64                                                                                                                                                       | 2.9 kB     00:00     
my-repo-x86_64/primary_db                                                                                                                                            | 7.1 kB     00:00     
http://myreposerver.internal.domain/my-repo/repodata/7d1016c9fcac64ee6c0fe9b5b\
58ed1e791dae601b1b0be13ea8af523761fbabd-primary.sqlite.bz2: [Errno -3] \
Error performing checksum
Trying other mirror.
my-repo-x86_64/primary_db                                                                                                                                            | 7.1 kB     00:00     
Error: failure: repodata/7d1016c9fcac64ee6c0fe9b5b58ed1e791dae601b1b0be13ea8af5\
23761fbabd-primary.sqlite.bz2 from my-repo-x86_64: [Errno 256] \
No more mirrors to try.

Do not pass go. Do not collect your new sssd binaries.

After rummaging through all sorts of posts that pointed the finger at the network, and advising things like putting 

http_caching=none

in your /etc/yum.conf

I eventually tracked it down to this;

 yum -y install python-hashlib

Obvious.

The repos were on a more up to date centos, so we also wasted a bit of time with that. For some reason all the public repos are fine, but anything made on centos 6 and above requires this on the centos 5 clients. This also applies to pulp repositories.

Any opinions, news, research, analyses, prices or other information ("information") contained on this Blog, constitutes marketing communication and it has not been prepared in accordance with legal requirements designed to promote the independence of investment research. Further, the information contained within this Blog does not contain (and should not be construed as containing) investment advice or an investment recommendation, or an offer of, or solicitation for, a transaction in any financial instrument. LMAX Group has not verified the accuracy or basis-in-fact of any claim or statement made by any third parties as comments for every Blog entry.

LMAX Group will not accept liability for any loss or damage, including without limitation to, any loss of profit, which may arise directly or indirectly from use of or reliance on such information. No representation or warranty is given as to the accuracy or completeness of the above information. While the produced information was obtained from sources deemed to be reliable, LMAX Group does not provide any guarantees about the reliability of such sources. Consequently any person acting on it does so entirely at his or her own risk. It is not a place to slander, use unacceptable language or to promote LMAX Group or any other FX and CFD provider and any such postings, excessive or unjust comments and attacks will not be allowed and will be removed from the site immediately.