anmolanmol1234 commented on PR #4039:
URL: https://github.com/apache/hadoop/pull/4039#issuecomment-1378276653

   @steveloughran, I have addressed all the comments and added tests for the 
different failure scenarios as well.
   
   We need to update the bytes sent for failed as well as passed cases. The 
current change will not swallow any exceptions.
   The handling for various status code with 100 continue enabled is as follows
   Case 1 :- getOutputStream doesn't throw any exception, response is processed 
and it gives status code of 200, no retry is needed and hence the request 
succeeds.
   Case 2:- getOutputSteam throws exception, we return to the caller and in 
processResponse in this.connection.getResponseCode() it gives status code of 
404 (user error), exponential retry is not needed. We retry without 100 
continue enabled.
   Case 3:- getOutputSteam throws exception, we return to the caller and in 
processResponse it gives status code of 503,
   which shows throttling so we backoff accordingly with exponential retry. 
Since each append request waits for 100 continue response, the stress on the 
server gets reduced.
   
   Requesting your review for the same, thanks.


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