GitHub user samkelemen created a discussion: DAGs with external python task are 
not killed when marked as Failed.

It seems that any dag using an external python task are not killed when they 
are marked as Failed in the UI. Does anyone know what is happening here?

For example, this dag (... is just a placeholder in this example. The actual 
dag would need the necessary params defined):
```
def dummy_dag():
    @task.external_python(
         ...
    )
    def external_python_task():
        import os
        import signal
        import time

        while True:
            print("alive", flush=True)
            print(signal.getsignal(signal.SIGTERM))
            time.sleep(1) 

    external_python_task()

dummy_dag()
```

When I click the "Failed" button in the UI to mark the dag as failed, I get the 
following log:
```
[2026-10-05 14:06:01] INFO - Executing cmd: 
/opt/airflow/venvs/pipeline-test/bin/python /tmp/venv-callhakxr1ad/script.py 
/tmp/venv-callhakxr1ad/script.in /tmp/venv-callhakxr1ad/script.out 
/tmp/venv-callhakxr1ad/string_args.txt /tmp/venv-callhakxr1ad/termination.log 
/tmp/venv-callhakxr1ad/airflow_context.json 
source=airflow.providers.standard.utils.python_virtualenv 
pathname=/home/airflow/.local/lib/python3.13/site-packages/airflow/providers/standard/utils/python_virtualenv.py
 loc=python_virtualenv.py:147
[2026-10-05 14:06:01] INFO - Output: 
source=airflow.providers.standard.utils.python_virtualenv 
pathname=/home/airflow/.local/lib/python3.13/site-packages/airflow/providers/standard/utils/python_virtualenv.py
 loc=python_virtualenv.py:157
[2026-10-05 14:06:02] INFO - alive 
source=airflow.providers.standard.utils.python_virtualenv 
pathname=/home/airflow/.local/lib/python3.13/site-packages/airflow/providers/standard/utils/python_virtualenv.py
 loc=python_virtualenv.py:161
[2026-10-05 14:06:03] INFO - 0 
source=airflow.providers.standard.utils.python_virtualenv 
pathname=/home/airflow/.local/lib/python3.13/site-packages/airflow/providers/standard/utils/python_virtualenv.py
 loc=python_virtualenv.py:161
[2026-10-05 14:06:03] INFO - alive 
source=airflow.providers.standard.utils.python_virtualenv 
pathname=/home/airflow/.local/lib/python3.13/site-packages/airflow/providers/standard/utils/python_virtualenv.py
 loc=python_virtualenv.py:161
...
[2026-10-05 14:06:11] ERROR - Server indicated the task shouldn't be running 
anymore. Terminating process detail={"reason":"not_running","message":"TI is no 
longer in the running state and task should 
terminate","current_state":"failed"} source=task
[2026-10-05 14:06:12] INFO - 0 
source=airflow.providers.standard.utils.python_virtualenv 
pathname=/home/airflow/.local/lib/python3.13/site-packages/airflow/providers/standard/utils/python_virtualenv.py
 loc=python_virtualenv.py:161
[2026-10-05 14:06:12] INFO - alive 
source=airflow.providers.standard.utils.python_virtualenv 
pathname=/home/airflow/.local/lib/python3.13/site-packages/airflow/providers/standard/utils/python_virtualenv.py
 loc=python_virtualenv.py:161
[2026-10-05 14:06:13] INFO - 0 
source=airflow.providers.standard.utils.python_virtualenv 
pathname=/home/airflow/.local/lib/python3.13/site-packages/airflow/providers/standard/utils/python_virtualenv.py
 loc=python_virtualenv.py:161
[2026-10-05 14:06:13] INFO - alive 
source=airflow.providers.standard.utils.python_virtualenv 
pathname=/home/airflow/.local/lib/python3.13/site-packages/airflow/providers/standard/utils/python_virtualenv.py
 loc=python_virtualenv.py:161
[2026-10-05 14:06:14] INFO - 0 
source=airflow.providers.standard.utils.python_virtualenv 
pathname=/home/airflow/.local/lib/python3.13/site-packages/airflow/providers/standard/utils/python_virtualenv.py
 loc=python_virtualenv.py:161
...
```

I am using Airflow 3.2.2.

GitHub link: https://github.com/apache/airflow/discussions/74298

----
This is an automatically sent email for [email protected].
To unsubscribe, please send an email to: [email protected]

Reply via email to