lakshmi-manasa-g commented on a change in pull request #1511: URL: https://github.com/apache/samza/pull/1511#discussion_r677886094
########## File path: samza-azure/src/main/java/org/apache/samza/system/azureblob/avro/AzureBlobOutputStream.java ########## @@ -335,6 +335,11 @@ public void run() { // StageBlock generates exception on Failure. stageBlock(blockIdEncoded, outputStream, blockSize); break; + } catch (InterruptedException e) { + String msg = "Upload block for blob: " + blobAsyncClient.getBlobUrl().toString() + + " failed for blockid: " + blockId + " due to InterruptedException "; + LOG.error(msg, e); + throw new AzureException("InterruptedException encountered during block upload. Will not retry.", e); Review comment: original idea of retry was to deal with azure blob storage connection issues. Now the user of AzureBlobSystemProducer has a need where they want to interrupt the thread themselves if it doesnt stop within a set period of time (stop on thread invoked by them again). In such a scenario, they expect the thread to be killed immediately and producer bubble up the exception so that they can handle the exception in an appropriate manner. since they are dealing at the thread level and not producer level, it becomes hard for them to identify the producer of the thread and handle producer exceptions. -- 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...@samza.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org