smiroslav commented on code in PR #2663:
URL: https://github.com/apache/jackrabbit-oak/pull/2663#discussion_r2626312739


##########
oak-segment-azure/src/main/java/org/apache/jackrabbit/oak/segment/azure/AzureRepositoryLock.java:
##########
@@ -211,6 +213,26 @@ private boolean isInError() {
         return inError;
     }
 
+    /**
+     * Checks if the exception is a transient client-side exception that 
should be retried.
+     * This includes timeouts and IO/network errors that can occur when 
communicating with Azure.
+     * <p>
+     * Per Azure SDK documentation, the timeout parameter causes a 
RuntimeException to be raised.
+     * @param e the exception to check
+     * @return true if this is a transient exception that should be retried
+     */
+    private boolean isTransientClientSideException(Exception e) {
+        Throwable current = e;
+        while (current != null) {
+            if (current instanceof java.util.concurrent.TimeoutException ||
+                current instanceof java.io.IOException) {
+                return true;
+            }
+            current = current.getCause();
+        }
+        return false;
+    }

Review Comment:
   @jsedding thanks for chiming in. 
   
   I have updated the issue description to include the code where the timeout 
exception is thrown and a discussion thread. 



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

Reply via email to