This is an automated email from the ASF dual-hosted git repository.

vincbeck pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airflow.git


The following commit(s) were added to refs/heads/main by this push:
     new b0cfa1e1b1b Stop the EKS executor concurrency test from starving its 
own builders (#75197)
b0cfa1e1b1b is described below

commit b0cfa1e1b1bc2d7e1518b1bb65e41400c0fbfd43
Author: Pankaj Singh <[email protected]>
AuthorDate: Tue Oct 20 17:32:20 2026 +0530

    Stop the EKS executor concurrency test from starving its own builders 
(#75197)
    
    The watcher thread spun on os.environ.get without yielding, holding the GIL
    against the client-building threads. The test took about 95 seconds locally
    and exceeded its 60 second timeout in the lowest-dependencies CI job.
---
 .../amazon/tests/unit/amazon/aws/executors/eks/test__client_factory.py | 3 +++
 1 file changed, 3 insertions(+)

diff --git 
a/providers/amazon/tests/unit/amazon/aws/executors/eks/test__client_factory.py 
b/providers/amazon/tests/unit/amazon/aws/executors/eks/test__client_factory.py
index 29ffa632d0c..45306e27316 100644
--- 
a/providers/amazon/tests/unit/amazon/aws/executors/eks/test__client_factory.py
+++ 
b/providers/amazon/tests/unit/amazon/aws/executors/eks/test__client_factory.py
@@ -21,6 +21,7 @@ import os
 import signal
 import tempfile
 import threading
+import time
 from base64 import b64encode
 from concurrent.futures import ThreadPoolExecutor
 from pathlib import Path
@@ -152,6 +153,8 @@ class TestGetEksKubeClient:
         def watch():
             while building.is_set():
                 seen.add(os.environ.get("AWS_STS_REGIONAL_ENDPOINTS"))
+                # A bare spin loop holds the GIL against the builders and can 
push the test past its timeout.
+                time.sleep(0.001)
 
         building.set()
         watcher = threading.Thread(target=watch)

Reply via email to