shepherd44 commented on PR #73906:
URL: https://github.com/apache/airflow/pull/73906#issuecomment-6098365672

   Closing this draft — I'm not going to carry it through review.
   
   Leaving the analysis in case anyone wants to pick it up:
   
   `EksPodOperator.invoke_defer_method` takes a shortcut when the pod already 
reached a terminal state before the operator got to defer. It calls 
`self.trigger_reentry(...)` inline instead of `self.defer(...)`, and discards 
the return value. `trigger_reentry()` produces the task result that Airflow 
pushes to XCom as `return_value` when `do_xcom_push=True`, so the task succeeds 
but `return_value` never reaches XCom.
   
   This mirrors the same bug in the base `KubernetesPodOperator` (#72821, also 
closed), but **a fix there would not cover this one** — `EksPodOperator` 
overrides `invoke_defer_method` entirely, so the base implementation is never 
reached.
   
   The fix is two lines: `return self.trigger_reentry(...)` in the shortcut 
path, and the return annotation `-> None` → `-> Any`. The `else` after the new 
`return` becomes redundant (ruff RET505).


-- 
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]

Reply via email to