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]