-
Bug
-
Resolution: Not a Bug
-
Major
-
None
-
4.11.z
-
None
-
Rejected
-
False
-
-
-
4/26: telco reviewed
Description of problem:
In some cases, OLM fails to resolve a replacement chain in seemingly valid catalogs. Operator subscriptions get ResolutionFailed condition with empty channel name listing recent versions of the operator. Example: a unique replacement chain within a channel is required to determine the relative order between channel entries, but 2 replacement chains were found in channel "" of package "devworkspace-operator": devworkspace-operator.v0.15.3, devworkspace-operator.v0.16.0 Once this occurs, subscription is stuck in this state, despite continuing to update the subscription; versions listed alternate order every few seconds. Issue is quickly resolved by restarting catalog-operator pod. It's unclear what triggers this, but some details about the cluster: * The referenced operator is installed from a custom catalog source; the same operator and channel is present in redhat-operators but has different versions available and a different replaces chain. However, neither of the versions listed above are available in the redhat-operators catalog. * The catalog is valid, and installing in a different cluster allows clean updates through all versions. * Catalog is using file-based catalogs; bundle files available here: https://github.com/devfile/devworkspace-operator/tree/main/olm-catalog/release
Version-Release number of selected component (if applicable):
reproduced last on OSD 4.11.5
How reproducible:
No reproducer, unclear trigger. However, encountered at least twice in the last few months for this specific operator install.
Steps to Reproduce:
1. Install catalog source using image quay.io/devfile/devworkspace-operator-index:release 2. Install devworkspace-operator from this catalog via subscription 3. (potentially, over time) operator updates will stop
Actual results:
Subscription gets ResolutionFailed condition a unique replacement chain within a channel is required to determine the relative order between channel entries, but 2 replacement chains were found in channel "" of package "devworkspace-operator": devworkspace-operator.v0.15.3, devworkspace-operator.v0.16.0 Similar error is logged by catalog-operator pod. Note channel name is blank and versions shown alternate order every few seconds. Versions reflect current releases as of writing but has occurred with previous versions.
Expected results:
No error is expected. There is only one channel, named "fast", and output of opm render shows a clear replacement chain. Fresh installs allow upgrades as normal.
Additional info:
Workarounds: * Restart catalog-operator pod in openshift-operator-lifecycle-manager namespace (delete running pod and let it be recreated) * Re-install operator