0x26res commented on code in PR #39608:
URL: https://github.com/apache/airflow/pull/39608#discussion_r1600028210


##########
airflow/providers/amazon/aws/operators/batch.py:
##########
@@ -206,8 +206,8 @@ def __init__(
         self.scheduling_priority_override = scheduling_priority_override
         self.array_properties = array_properties
         self.parameters = parameters or {}
-        self.retry_strategy = retry_strategy or {}
-        if not self.retry_strategy.get("attempts", None):
+        self.retry_strategy = retry_strategy
+        if self.retry_strategy is not None and not 
self.retry_strategy.get("attempts", None):

Review Comment:
   Thanks for the suggestion. 
   
   I think in the case where `self.retry_strategy = {}`, the intention of the 
existing code is to update it to `{"attempts": 1}`. But `bool({})` evaluate to 
False. So unless I'm mistaken, I don't think your suggestion would 
work/preserve the existing behavior.
   
   Having that said, that bit of code was introduced because retry_strategy was 
defaulting to `{}`, causing issue in aws batch. Given now it default to None, 
we don't have that issue any more (AWS batch can handle None, but can't handle 
`{}` for retry strategy). So I could just get rid of this. If the user wants to 
specify a retry_strategy, it's their responsibility to set the `attempts` 
correctly. We shouldn't be mutating the user input in place anyway.
   
   



-- 
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: commits-unsubscr...@airflow.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to