Project

Profile

Help

Story #8250

closed

As a user, all advisory conflicts are resolved automagically

Added by ttereshc about 3 years ago. Updated about 3 years ago.

Status:
CLOSED - CURRENTRELEASE
Priority:
Normal
Assignee:
Sprint/Milestone:
Start date:
Due date:
% Done:

100%

Estimated time:
Platform Release:
Groomed:
No
Sprint Candidate:
No
Tags:
Katello
Sprint:
Sprint 93
Quarter:

Description

Motivation

There are situations when Pulp raises an AdvisoryConflict exception and fails a sync or copy task.
In such cases, manual resolution is needed.
It's neither easy, nor straightforward in some cases for user to resolve it.

Situation 1
Updated date and version are the same but pkglists differ (and one is not a subset or superset of the other).
E.g. It's likely a mistake in one of the pkglists.

Manual resolution:

  • look at both and decide which one to keep
  • if the "bad" one is in Pulp, remove it from Pulp (remove from every repo version and run orphan cleanup)
  • if the "bad" one is in a remote source, contact remote source and ask them to fix it

Situation 2
Updated dates are different but pkglists have no intersection at all.
E.g. It's either and attempt to combine content from incompatible repos (RHEL6-main and RHEL7 debuginfo), or someone created a completely different advisory with already used id.

Manual resolution:

  • look at both and decide what's wrong
  • maybe pick one if it works for user's case (pick one = either remove from Pulp or do not add a remote one)
  • maybe change what is added to a repo if it was a mistake (e.g. to combine RHEL6-main and RHEL7-debuginfo)

Proposed solution

Since Pulp cannot safely resolve conflicts in the situations described earlier, any automatic resolution would be at user's own risk.

Introduce a global configuration ALLOW_UNSAFE_ADVISORY_CONFLICT_RESOLUTION, which defaults to False.
When it is set to True:

  • for Situation 1, Pulp will produce a new advisory content unit with merged pkglists
  • for Situation 2, Pulp will pick a newer one

This is not on a roadmap, please leave a comment if you need this feature and what is your situation/use case.

Also available in: Atom PDF