Synchronize smart proxy problem

Problem:
By syncing to other smart proxies we get the following message:

Katello::Errors::Pulp3Error: 404, message=‘Not Found’, url=URL(‘https://foreman.com/pulp/deb/com/PRODUCTIVE/Ubuntu_20_04/custom/Ubuntu_20_04/focal-proposed/pool/all/l/linux-restricted-modules-gcp-5.15/linux-modules-nvidia-440-gcp-edge_5.15.0-1005.8~20.04.1_amd64.deb’)

journalctl:

dynflow:

Expected outcome:

Foreman and Proxy versions:

  • foreman-3.2.1-1.el7.noarch
  • katello-4.4.1-1.el7.noarch
    Foreman and Proxy plugin versions:

Distribution and version:
CentOS 7

Other relevant data:

Hi @senetm,

Do you see anything hosted at https://foreman.com/pulp/deb/com/PRODUCTIVE/Ubuntu_20_04/custom/Ubuntu_20_04/focal-proposed/pool/all/ ?

You can browse all hosted repositories at https://foreman.com/pulp/deb/

A potential quick fix might be to republish a new content view version, if possible.

Hi…the problem is still there. I can browse all of it but some files are there with no content?

image

When i try to download that file I get that massage…as the link is empty:

image

image

@senetm which download policy and which mirroring policy are you using for your related repository? It’s possible that the upstream repository no longer has those packages, so if you’re using on-demand, Pulp may be trying to download them but is unable.

I would recommend using the Immediate download policy with the Additive mirroring policy unless you’re certain that the repository does keep all older versions of packages.

Just in case I’m not on the right track, @quba42 do you think the issue might be something else?

Hi thanks for your answer. I am using On Demand and Content Only.
I have different environments one is promoted to new content view and the other to older one. And after some weeks the promotion starts again and so on. In the first test environment are always the newest packages and in the second older packages which were tested before in the test environment. Only productive environment is synced to other smart proxies.
What would be the right policy for that case?

1 Like

Can’t be 100% sure without knowing what upstream repo is being synced with what options, but this sure looks and sounds like the problem is Download Policy: On Demand plus changing packages in the upstream remote repo. If so, then switching to Download Policy: Immediate will fix the issue (at least for all new content view versions created after the download policy was switched and everything re-synced).

As to Mirroring Policy: Content Only vs Additive depends on whether you want to keep old packages in new content view versions indefinitely. Even with Content Only things that make it into some version won’t disappear from that version, so what you see is what you get. @iballou I am unclear on when one really needs Additive

One more side note: Even if you use Download Policy: Immediate on your server, there is then no reason not to use Download Policy: On Demand (or even Streamed) for your smart porxy syncs. Since the smart proxy syncs from the server, and the server will keep everything that should always be safe.

2 Likes

Thanks. I changed it and am waiting for the next content view.

1 Like

After change there are still missing some packages?
I updated to

  • foreman-3.3.1-1.el7.noarch
  • katello-4.5.1-1.el7.noarch

And now i have some other problems to: