maytasm commented on PR #14776:
URL: https://github.com/apache/druid/pull/14776#issuecomment-1668937288

   > > (I am not 100% sure but) this may not work because we are using 
deleteObjects, which returns MultiObjectDeleteException. 
MultiObjectDeleteException error code is null 
(https://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/services/s3/model/MultiObjectDeleteException.html#getErrorCode--)
 which may not cause us to retry.
   > > Basically the "retry-able" error is actually inside the 
MultiObjectDeleteException list of Errors but MultiObjectDeleteException itself 
may not be retry-able. I took a look at 
AWSClientUtil.isClientExceptionRecoverable and it seems like it would depend on 
` public static boolean isRetryableServiceException(AmazonServiceException 
exception) { return RETRYABLE_STATUS_CODES.contains(exception.getStatusCode()) 
|| RETRYABLE_ERROR_CODES.contains(exception.getErrorCode()) || 
reasonPhraseMatchesErrorCode(exception, RETRYABLE_ERROR_CODES); }` Since 
MultiObjectDeleteException getErrorCode always returns null (as indicated by 
the doc), the second and third checks would always be false. I am not about the 
status code but it might be 200.
   > 
   > darn I think you're right. Hmm. In this case, should we just always retry 
up to 3 times regardless of the error?
   
   Maybe you can iterate the errors in multideletefailure object and either
   - (smarter way?) filter out all non retry-able before retrying (only retry 
the paths that has retry-able error)
   - (super simple way) just retry if any of the exception is retry-able (so 
you don’t have the modify the request)  — this is still a little better than 
always retrying blindly


-- 
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]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to