Smart proxies content sync fails (sha256)

Hi all, I have foreman setup with katello and all is fine with the master, the OEL and CentOS products / repos we have added and clients connected directly to the master pick these up

Also added 3 smart proxies for 3 different areas. Connected fine and showing in the GUI, but just tried adding a client to the smart proxy. Also connected fine, but repo list /yum shows it’s getting 404 errors on some of the repos.

Checked the smart proxies settings and noticed they hadn’t synced content, ever. So ran this and got below error. Can anyone advise. On Foreman 2.2.3

RPM1008: Checksum type “sha256” is not available for all units in the repository. Make sure those units have been downloaded

Thanks

Sounds similar to this maybe?

Similar, but not the same error. Only seeing a handful of threads for this specific error. I have a suspicion on which repo is causing it, but can’t be sure.

Strange because all repos are working fine on clients connected to foreman master, this only affects clients on the proxies and syncing content on the proxies themselves, so appears to be an issue there

@katello Could someone take a look and see if this is related to any known issues?

@katello Hi - don’t suppose this is a known bug or problem is it? I am still unable to see repo content on a Foreman client that’s connected via smart proxy due to the repos not syncing over from the master. A manual sync fails with the above SHA checkum error, but our weekly sync job seems OK, no errors which is strange. When checking the /var/www/pub/yum/https/repos/ folder where the 404 are reported on the proxy, I am not seeing the expected directory, which lines with the 404

What version of katello are you seeing this on?
I see an issue similar to this on pulp2 Issue #7047: Checksum type "sha256" is not available for all units in the repository. Make sure those units have been downloaded - RPM Support - Pulp but I’m not sure this has been tested with pulp3.

1 Like

Hi @sajha - this is on katello 3.17, both master and 3 smart proxies. Foreman version 2.2

3.17 uses pulp2 so the issue linked above should give you some pointers.

There’s also a workaround mentioned in the issue which I’ll paste below:

The workaround is to manually delete the srpm from the downstream repository and then perform a complete sync.

Steps:
1) Use pulp-admin to remove all srpms in the affected repository.

pass=$(grep ^default_password /etc/pulp/server.conf | cut -d' ' -f2)
pulp-admin --username admin --password $pass rpm repo remove srpm --repo-id "<pulp repo id>" --filters '{}'

2) Then run a complete repo sync
3) Republish and promote the related content views.
4) Capsule might get the same error when syncing the repos with Satellite so you will need to find out the affected repos and run step 1 from each Capsule.

Let me know if that helps.

1 Like