vamossagar12 commented on PR #13801:
URL: https://github.com/apache/kafka/pull/13801#issuecomment-2039360963

   Hey Chris, sorry for the long delay on this. I finally got a chance to 
verify the code that you provided and it makes sense. I agree that so far I was 
only thinking about either having 2 separate futures such that one waits for 
the other or trying to chain futures like CompletableFutures. However, the 
version you have provided is pretty straight forward and all the new tests 
passed OOB for me.
   
   Regarding 
   
   > I think the only question left is whether out-of-order writes are possible 
because of how things are chained
   
   I am assuming that for non-exactly-once source tasks, you are referring to 
scenarios when offset flushes are triggered and when flush operations finish 
out of order. I reviewed the code and I can see that this is being checked in 
`handleFinishWrite` which does not complete the flush in case the currently 
completed flush isn't the current one.  For any other erroneous cases, 
`cancelFlush` is being invoked ( as you mentioned).


-- 
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: jira-unsubscr...@kafka.apache.org

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

Reply via email to