vincbeck commented on code in PR #30463:
URL: https://github.com/apache/airflow/pull/30463#discussion_r1212336666
##########
airflow/providers/amazon/aws/operators/emr.py:
##########
@@ -901,36 +930,63 @@ def execute(self, context: Context) -> str | None:
raise AirflowException(f"Application Creation failed: {response}")
self.log.info("EMR serverless application created: %s", application_id)
-
- # This should be replaced with a boto waiter when available.
- waiter(
- get_state_callable=self.hook.conn.get_application,
- get_state_args={"applicationId": application_id},
- parse_response=["application", "state"],
- desired_state={"CREATED"},
- failure_states=EmrServerlessHook.APPLICATION_FAILURE_STATES,
- object_type="application",
- action="created",
- countdown=self.waiter_countdown,
- check_interval_seconds=self.waiter_check_interval_seconds,
- )
+ attempt = 0
+ waiter = self.hook.get_waiter("serverless_app_created")
+ while attempt < self.waiter_max_attempts:
Review Comment:
I see ... I just feel we are going backwards. We initially decided to start
using boto3 custom waiters to get rid of these while loops and to make the code
cleaner. Now, we want to keep using boto3 customer waiter but wrap them around
the exact same code we tried to remove initially. I now I dont provide any
solution here but should we try to find another solution? If I am the only one
thinking that way, I am fine
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]