diff --git a/providers/cncf/kubernetes/src/airflow/providers/cncf/kubernetes/operators/pod.py b/providers/cncf/kubernetes/src/airflow/providers/cncf/kubernetes/operators/pod.py index 9f59fcb66d368..c26817cd25e4b 100644 --- a/providers/cncf/kubernetes/src/airflow/providers/cncf/kubernetes/operators/pod.py +++ b/providers/cncf/kubernetes/src/airflow/providers/cncf/kubernetes/operators/pod.py @@ -1337,7 +1337,18 @@ def is_istio_enabled(self, pod: V1Pod) -> bool: if not pod: return False - remote_pod = self.pod_manager.read_pod(pod) + try: + remote_pod = self.pod_manager.read_pod(pod) + except ApiException as e: + if e.status == 404: + # Pod was likely GC'd between the trigger firing and re-entry + log.warning( + "Pod %s/%s not found during istio check.", + pod.metadata.namespace, + pod.metadata.name, + ) + return False + raise e return any(container.name == self.ISTIO_CONTAINER_NAME for container in remote_pod.spec.containers)