// Module included in the following assemblies:
//
// * scalability_and_performance/ztp_far_edge/ztp-talm-updating-managed-policies.adoc

:_mod-docs-content-type: PROCEDURE
[id="cnf-topology-aware-lifecycle-manager-operator-troubleshooting-{policy-gen-cr}_{context}"]
= Troubleshooting missed Operator updates with {policy-gen-cr} CRs

[role="_abstract"]
In some scenarios, {cgu-operator-first} might miss Operator updates due to an out-of-date policy compliance state.

After a catalog source update, it takes time for the Operator Lifecycle Manager (OLM) to update the subscription status. The status of the subscription policy might continue to show as compliant while {cgu-operator} decides whether remediation is needed. As a result, the Operator specified in the subscription policy does not get upgraded.

To avoid this scenario, add another catalog source configuration to the `{policy-gen-cr}` and specify this configuration in the subscription for any Operators that require an update.

.Procedure

. Add a catalog source configuration in the `{policy-gen-cr}` resource:
+
ifeval::["{policy-gen-cr}" == "PolicyGenTemplate"]
include::snippets/pgt-cnf-topology-aware-lifecycle-manager-operator-troubleshooting.adoc[]
endif::[]
ifeval::["{policy-gen-cr}" == "PolicyGenerator"]
include::snippets/pg-cnf-topology-aware-lifecycle-manager-operator-troubleshooting.adoc[]
endif::[]

. Update the `Subscription` resource to point to the new configuration for Operators that require an update:
+
[source,yaml]
----
apiVersion: operators.coreos.com/v1alpha1
kind: Subscription
metadata:
  name: operator-subscription
  namespace: operator-namspace
# ...
spec:
  source: redhat-operators-disconnected-v2
# ...
----
+
--
* `redhat-operators-disconnected-v2` specifies the name of the additional catalog source configuration that you defined in the `{policy-gen-cr}` resource.
--
