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 e565cea65c Resolving EMR deprecated warnings (#39743)
e565cea65c is described below

commit e565cea65cb42e43387aa7fd135ac46e8ac25f65
Author: Gopal Dirisala <[email protected]>
AuthorDate: Thu May 23 19:30:57 2024 +0530

    Resolving EMR deprecated warnings (#39743)
---
 airflow/providers/amazon/aws/operators/emr.py | 24 +++++++++++++-----------
 tests/always/test_example_dags.py             |  1 -
 2 files changed, 13 insertions(+), 12 deletions(-)

diff --git a/airflow/providers/amazon/aws/operators/emr.py 
b/airflow/providers/amazon/aws/operators/emr.py
index 1a4518af70..664d4b6d84 100644
--- a/airflow/providers/amazon/aws/operators/emr.py
+++ b/airflow/providers/amazon/aws/operators/emr.py
@@ -742,10 +742,20 @@ class EmrCreateJobFlowOperator(BaseOperator):
         waiter_max_attempts: int | None = None,
         waiter_delay: int | None = None,
         waiter_countdown: int | None = None,
-        waiter_check_interval_seconds: int = 60,
+        waiter_check_interval_seconds: int | None = None,
         deferrable: bool = conf.getboolean("operators", "default_deferrable", 
fallback=False),
         **kwargs: Any,
     ):
+        if waiter_check_interval_seconds:
+            warnings.warn(
+                "The parameter `waiter_check_interval_seconds` has been 
deprecated to "
+                "standardize naming conventions.  Please `use waiter_delay 
instead`.  In the "
+                "future this will default to None and defer to the waiter's 
default value.",
+                AirflowProviderDeprecationWarning,
+                stacklevel=2,
+            )
+        else:
+            waiter_check_interval_seconds = 60
         if waiter_countdown:
             warnings.warn(
                 "The parameter waiter_countdown has been deprecated to 
standardize "
@@ -757,15 +767,7 @@ class EmrCreateJobFlowOperator(BaseOperator):
             # waiter_countdown defaults to never timing out, which is not 
supported
             # by boto waiters, so we will set it here to "a very long time" 
for now.
             waiter_max_attempts = (waiter_countdown or 999) // 
waiter_check_interval_seconds
-        if waiter_check_interval_seconds:
-            warnings.warn(
-                "The parameter waiter_check_interval_seconds has been 
deprecated to "
-                "standardize naming conventions.  Please use waiter_delay 
instead.  In the "
-                "future this will default to None and defer to the waiter's 
default value.",
-                AirflowProviderDeprecationWarning,
-                stacklevel=2,
-            )
-            waiter_delay = waiter_check_interval_seconds
+
         super().__init__(**kwargs)
         self.aws_conn_id = aws_conn_id
         self.emr_conn_id = emr_conn_id
@@ -773,7 +775,7 @@ class EmrCreateJobFlowOperator(BaseOperator):
         self.region_name = region_name
         self.wait_for_completion = wait_for_completion
         self.waiter_max_attempts = waiter_max_attempts or 60
-        self.waiter_delay = waiter_delay or 30
+        self.waiter_delay = waiter_delay or waiter_check_interval_seconds or 60
         self.deferrable = deferrable
 
     @cached_property
diff --git a/tests/always/test_example_dags.py 
b/tests/always/test_example_dags.py
index 2e75183be0..43104a884c 100644
--- a/tests/always/test_example_dags.py
+++ b/tests/always/test_example_dags.py
@@ -48,7 +48,6 @@ IGNORE_AIRFLOW_PROVIDER_DEPRECATION_WARNING: tuple[str, ...] 
= (
     # If the deprecation is postponed, the item should be added to this tuple,
     # and a corresponding Issue should be created on GitHub.
     "tests/system/providers/amazon/aws/example_ecs_fargate.py",
-    "tests/system/providers/amazon/aws/example_emr.py",
     "tests/system/providers/amazon/aws/example_emr_notebook_execution.py",
     
"tests/system/providers/google/cloud/bigquery/example_bigquery_operations.py",
     "tests/system/providers/google/cloud/bigquery/example_bigquery_sensors.py",

Reply via email to