johnhoran commented on code in PR #61778:
URL: https://github.com/apache/airflow/pull/61778#discussion_r2799143251
##########
providers/cncf/kubernetes/src/airflow/providers/cncf/kubernetes/operators/pod.py:
##########
@@ -958,6 +959,12 @@ def trigger_reentry(self, context: Context, event:
dict[str, Any]) -> Any:
follow = self.logging_interval is None
last_log_time = event.get("last_log_time")
+ if event["status"] == "timeout":
+ pod_phase = self.pod.status.phase if self.pod.status and
self.pod.status.phase else None
+ if pod_phase in {PodPhase.RUNNING, *PodPhase.terminal_states}:
+ self.log.info("Pod has transitioned from pending state
after timeout, deferring again")
+ self.invoke_defer_method(last_log_time=last_log_time,
context=context)
Review Comment:
Ah good point, I don't want the callbacks to run and if the pod was in a
terminal state they would have been called twice. I added a return statement
to avoid it.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]