jolshan commented on PR #13796:
URL: https://github.com/apache/kafka/pull/13796#issuecomment-1581669973

   > No, we can't - it all depends on the retries and the delivery timeout.
   Do you think that causes a problem?
   
   I guess I just need to clarify what retried batches are here -- is the idea 
that we wait for inflight batches to return a response or time out? What if the 
response triggers another retry? Would we prevent that from sending out?
   
   I'm also wondering the benefit of preserving the previous batches if there 
is an error. How does the system recovery differently if we allow those batches 
to "complete". I think we could run into cases where the error causes the 
inflight batches to be unable to be written. Do we prefer to fail them (what we 
may do now) and start clean or try to write them with new sequences? I can see 
both scenarios causing issues. 
   
   I guess it boils down to availability of writes (rewriting the sequences 
allows us to continue writing) or idempotency correctness (trying to wait for 
them to complete with their old sequences). The sticking point I'm running into 
is why getting those extra inflight requests (potentially) written is better if 
we've hit a non-retriable error. 
   
   Maybe I just need an example :) 


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