passionworkeer commented on issue #63374: URL: https://github.com/apache/airflow/issues/63374#issuecomment-4052724798
The fastest way to localize this is to compare where task callbacks are materialized vs where DagRun callbacks are reconstructed from the serialized DAG. Since has_on_failure_callback is present but _send_dag_callbacks_to_processor still sees callback_to_run=None, I’d inspect the DagRun.update_state() path for Airflow 3 and verify the serialized callback reference survives deserialization in the processor process. A good regression test would fail a one-task DAG with a DAG-level callback that mutates external state (e.g. writes a temp file / row), because that distinguishes callback not invoked from callback invoked but logs not visible. -- 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]
