Skip to content

Execution API JWT expires unexpectedly in Airflow 3.2.2 (ExpiredSignatureError on /execution/...) #70222

Description

@chsa21

Under which category would you file this issue?

Airflow Core

Apache Airflow version

3.2.2

What happened and how to reproduce it?

We are observing intermittent Execution API authentication failures in Apache Airflow 3.2.2.

Multiple tasks fail at approximately the same time because the API Server rejects their JWT with:

Failed to validate JWT
detail=Signature has expired
exception=ExpiredSignatureError
path=/execution/...

The affected tasks are not necessarily running for one hour, although the default configuration is used:

[execution_api]
jwt_expiration_time = 3600

[api_auth]
jwt_expiration_time = 86400
jwt_cli_expiration_time = 3600

All Airflow components (Scheduler, API Server and Worker) run on the same physical host.

We could not identify any infrastructure issues such as VM snapshots, clock jumps, or system time changes.

Unfortunately we currently do not have reliable reproduction steps. The problem occurs intermittently in production.

We found previous issues describing similar Execution API JWT expiration problems. According to the issue history this should have been fixed before Airflow 3.2.2, however we are still observing this behavior.

What you think should happen instead?

Execution API JWTs should remain valid for their configured lifetime or be refreshed automatically.

Running tasks should not fail with ExpiredSignatureError when using the default Airflow configuration.

Operating System

RedHat 9.8

Deployment

No response

Apache Airflow Provider(s)

No response

Versions of Apache Airflow Providers

No response

Official Helm Chart version

Not Applicable

Kubernetes Version

Not Applicable

Helm Chart configuration

Not Applicable

Docker Image customizations

No response

Anything else?

  • Apache Airflow 3.2.2

  • Execution API JWT expiration time: 3600 (default)

  • API auth JWT expiration time: 86400 (default)

  • API Server log:

    Failed to validate JWT
    detail=Signature has expired
    exception=ExpiredSignatureError
    path=/execution/...

  • Multiple tasks fail simultaneously.

  • Other Airflow 3.2.2 environments with the same configuration do not show this behavior.

  • The affected tasks are not necessarily running for one hour before failing.

Are you willing to submit PR?

  • Yes I am willing to submit a PR!

Code of Conduct

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions