+++ This bug was initially created as a clone of Bug #1777509 +++ Description of problem: When deleting ports from a pool an update of a dict that is being iterated is wrongly performed causing the following exception: 2019-11-19 18:15:13.259 1 ERROR kuryr_kubernetes.handlers.logging File "/usr/lib/python3.6/site-packages/kuryr_kubernetes/handlers/logging.py", line 37, in __call__ 2019-11-19 18:15:13.259 1 ERROR kuryr_kubernetes.handlers.logging self._handler(event) 2019-11-19 18:15:13.259 1 ERROR kuryr_kubernetes.handlers.logging File "/usr/lib/python3.6/site-packages/kuryr_kubernetes/handlers/retry.py", line 78, in __call__ 2019-11-19 18:15:13.259 1 ERROR kuryr_kubernetes.handlers.logging self._handler(event) 2019-11-19 18:15:13.259 1 ERROR kuryr_kubernetes.handlers.logging File "/usr/lib/python3.6/site-packages/kuryr_kubernetes/handlers/k8s_base.py", line 77, in __call__ 2019-11-19 18:15:13.259 1 ERROR kuryr_kubernetes.handlers.logging self.on_deleted(obj) 2019-11-19 18:15:13.259 1 ERROR kuryr_kubernetes.handlers.logging File "/usr/lib/python3.6/site-packages/kuryr_kubernetes/controller/handlers/namespace.py", line 159, in on_deleted 2019-11-19 18:15:13.259 1 ERROR kuryr_kubernetes.handlers.logging self._drv_vif_pool.delete_network_pools(net_crd['spec']['netId']) 2019-11-19 18:15:13.259 1 ERROR kuryr_kubernetes.handlers.logging File "/usr/lib/python3.6/site-packages/kuryr_kubernetes/controller/drivers/vif_pool.py", line 1108, in delete_network_pools 2019-11-19 18:15:13.259 1 ERROR kuryr_kubernetes.handlers.logging vif_drv.delete_network_pools(net_id) 2019-11-19 18:15:13.259 1 ERROR kuryr_kubernetes.handlers.logging File "/usr/lib/python3.6/site-packages/kuryr_kubernetes/controller/drivers/vif_pool.py", line 1017, in delete_network_pools 2019-11-19 18:15:13.259 1 ERROR kuryr_kubernetes.handlers.logging for pool_key, ports in self._available_ports_pools.items(): 2019-11-19 18:15:13.259 1 ERROR kuryr_kubernetes.handlers.logging RuntimeError: dictionary changed size during iteration Version-Release number of selected component (if applicable): How reproducible: Steps to Reproduce: 1. Run OCP conformance tests 2. 3. Actual results: Expected results: Additional info:
Ran conformance tests. The following failed: [k8s.io] Kubelet when scheduling a busybox command that always fails in a pod should have an terminated reason [NodeConformance] [Conformance] [Suite:openshift/conformance/parallel/minimal] [Suite:k8s] [sig-cli] Kubectl client [k8s.io] Kubectl logs should be able to retrieve and filter logs [Conformance] [Suite:openshift/conformance/parallel/minimal] [Suite:k8s] [sig-network] DNS should provide /etc/hosts entries for the cluster [LinuxOnly] [Conformance] [Suite:openshift/conformance/parallel/minimal] [Suite:k8s] [sig-network] DNS should provide DNS for services [Conformance] [Suite:openshift/conformance/parallel/minimal] [Suite:k8s] [sig-network] DNS should provide DNS for the cluster [Conformance] [Suite:openshift/conformance/parallel/minimal] [Suite:k8s] [sig-storage] ConfigMap should be consumable from pods in volume [NodeConformance] [Conformance] [Suite:openshift/conformance/parallel/minimal] [Suite:k8s] [sig-storage] Projected downwardAPI should provide container's memory limit [NodeConformance] [Conformance] [Suite:openshift/conformance/parallel/minimal] [Suite:k8s] No restart of the kuryr-controller Using 4.3.0-0.nightly-2019-12-11-073659
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, 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:0062