Repository navigation
airflow.sdk.api.client.ServerResponseError: Invalid auth token: Signature has expired #59637
Copy link
Copy link
Closed as duplicate
Closed as duplicate
Copy link
Labels
area:APIAirflow's REST/HTTP APIAirflow's REST/HTTP APIarea:autharea:corekind:bugThis is a clearly a bugThis is a clearly a bugneeds-triagelabel for new issues that we didn't triage yetlabel for new issues that we didn't triage yet
Description
Activity
- addedkind:bugThis is a clearly a bugThis is a clearly a bugneeds-triagelabel for new issues that we didn't triage yetlabel for new issues that we didn't triage yet
on Dec 19, 2025 It seems #58782 already fixed the issue, it will be included in
3.2.0but it didn't backport to3.1.5version yet.@jason810496 #53713 has the same error.
My execution_api.jwt_expiration_time is default (600) and scheduler.task_queued_timeout is 300. So scheduler.task_queued_timeout is already lower than execution_api.jwt_expiration_time.
Hi @devgonvarun & @jason810496 is this issue solved by upgrading Airflow to 3.2.0? I am also facing the above issue.
I have 2 Airflow environments, i.e., staging and production. Staging Airflow is working fine, but in production I am getting the above error when running multiple DAGs with multiple tasks. Both have the same configurations.
config: api: base_url: "${var.environment == "production" ? "https://airflow.${var.region}a.com" : "https://airflow.${var.region}a.${var.environment}.com"}" worker_timeout: 600 api_auth: jwt_secret: "airflow-jwt-secret" webserver: page_size: 25 base_url: "${var.environment == "production" ? "https://airflow.${var.region}a.com" : "https://airflow.${var.region}a.${var.environment}.com"}" core: dags_folder: /opt/airflow/dags/repo/dags_us max_active_tasks_per_dag: 50 max_active_runs_per_dag: 16 dagbag_import_timeout: 600 non_pooled_task_slot_count: 1000 dag_concurrency: 10000 parallelism: 500 default_pool_task_slot_count: 1000 default_timezone: "utc" dag_processor: min_file_process_interval: 120 logging: fab_logging_level: "ERROR" logging_level: "INFO" database: sql_alchemy_max_overflow: 50 sql_alchemy_pool_enabled: true sql_alchemy_pool_pre_ping: true sql_alchemy_pool_recycle: 600 sql_alchemy_pool_size: 300 scheduler: dag_file_processor_timeout : 1000 enable_health_check: true job_heartbeat_sec: 300 max_dagruns_per_loop_to_schedule: 175 max_dagruns_to_create_per_loop: 175 max_tis_per_query: 300 scheduler_health_check_threshold: 120 scheduler_zombie_task_threshold: 300 kubernetes_executor: worker_pods_creation_batch_size : 1000 delete_worker_pods: true delete_worker_pods_on_failure: false
Metadata
Metadata
Assignees
Labels
area:APIAirflow's REST/HTTP APIAirflow's REST/HTTP APIarea:autharea:corekind:bugThis is a clearly a bugThis is a clearly a bugneeds-triagelabel for new issues that we didn't triage yetlabel for new issues that we didn't triage yet
Apache Airflow version
Other Airflow 3 version (please specify below)
If "Other Airflow 3 version" selected, which one?
3.1.3
What happened?
Sometimes sporadically some kubernetes executor task pods fail with the following error:
What you think should happen instead?
The signature should not expire for when the task is still running.
How to reproduce
I have set my AIRFLOW__API_AUTH__JWT_EXPIRATION_TIME along with session_lifetime_minutes to "43200" or 12 hours to control the sign out of logged in users after this time. Also i am explicitly setting a apiSecretKeySecretName and jwtSecretName with appropriate k8 secrets.
This does not happen for all dag runs but when scheduling multiple dag runs with multiple tasks. Also the dag fails long before 12 hours set for the jwt expiration time.
Operating System
Debian GNU/Linux 12 (bookworm)
Versions of Apache Airflow Providers
No response
Deployment
Official Apache Airflow Helm Chart
Deployment details
No response
Anything else?
No response
Are you willing to submit PR?
Code of Conduct