Description of problem: Upon a service deletion event the Finalizer is first removed from the lb CRD and then from the Service. In case the Kuryr-Controller restart in between those operations, the deletion of the Service object can get blocked due to waiting for the Finalizer to get removed from the Service's definition and this wouldn't happen anymore as the removal of the Finalizer was supposed to happen on the LB crd handler. Version-Release number of selected component (if applicable): How reproducible: Steps to Reproduce: 1. 2. 3. Actual results: Expected results: Additional info:
Verified on OCP4.6.0-0.nightly-2020-09-03-063148 over RHOS-16.1-RHEL-8-20200831.n.1 (with ovn) oc new project test oc --image kuryr/demo new-app demo oc expose pod/demo --port 80 --target-port 8080 [stack@undercloud-0 ~]$ oc get klb NAME PROJECT-ID AGE demo fe177ef11fb34afba48a9bbf22fc8cb8 37s [stack@undercloud-0 ~]$ oc get svc NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE demo ClusterIP 172.30.11.128 <none> 80/TCP 42s oc edit klb demo # Remove finalizer oc delete klb demo oc delete svc/demo Removal of the svc is handled correctly even though klb crd is not present. Kuryr controller does not show any error and there are no leaks: [stack@undercloud-0 ~]$ oc get klb No resources found in test namespace. [stack@undercloud-0 ~]$ oc get svc No resources found in test namespace.
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory (OpenShift Container Platform 4.6 GA Images), and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2020:4196