apache / airflow

Apache Airflow - A platform to programmatically author, schedule, and monitor workflows
https://airflow.apache.org/
Apache License 2.0
37.42k stars 14.36k forks source link

Log URL redirecting to No XCom error #44337

Open sam-gen-cop opened 6 days ago

sam-gen-cop commented 6 days ago

Apache Airflow version

Other Airflow 2 version (please specify below)

If "Other Airflow 2 version" selected, which one?

2.10.1

What happened?

The Log URL (ti.log_url) from the triggered retry email doesn't redirect to the Logs when clicked but instead shows 'No XCom' as the error in the Airflow UI. The Logs are shown when a time in future is selected as the base_date in the UI.

Before changing the base_date in the UI,

image

After adding 1 second to the base_date in UI,

image

What you think should happen instead?

I think the issue might be due to milli seconds getting truncated which causes the difference between the execution datetime (untruncated) and the execution datetime rendered - base_date (truncated) in the ti.log_url

How to reproduce

Here is the DAG to reproduce the issue,

from airflow.decorators import dag, task
from datetime import datetime, timedelta

@dag(
    dag_id='default_email_on_retry_example',
    schedule_interval='@once',
    start_date=datetime(2023, 1, 1),
    catchup=False,
    default_args={
        'email': ['your@email.com'],  
        'email_on_retry': True,  
        'email_on_failure': False,  
    },
)
def default_email_on_retry_dag():

    @task
    def success_task():
        print("This task will always succeed!")

    @task(task_id='retry_task', retries=3, retry_delay=timedelta(seconds=15))
    def retry_task():
        print("This task will retry and fail.")
        raise Exception("Simulated task failure for retry.")

    success = success_task()
    retry = retry_task()

    success >> retry

default_email_on_retry_dag()

image

Click the Log Link from the email triggered by the DAG

Operating System

Linux

Versions of Apache Airflow Providers

No response

Deployment

Amazon (AWS) MWAA

Deployment details

No response

Anything else?

No response

Are you willing to submit PR?

Code of Conduct

boring-cyborg[bot] commented 6 days ago

Thanks for opening your first issue here! Be sure to follow the issue template! If you are willing to raise PR to address this issue please do so, no need to wait for approval.

dada-engineer commented 1 day ago

+1