Hi, I am newbie in kafka. I am studying kafka properties to build robust applications. When I look at Kafka producer properties, I was curious if it is possible that a client receives timeout exception (by delivery.timeout.ms) but succeed message delivery.
KIP-91 describes that situation. https://cwiki.apache.org/confluence/display/KAFKA/KIP-91+Provide+Intuitive+User+Timeouts+in+The+Producer The "timer" for each batch starts "ticking" at the creation of the batch. Batches expire in order when max.in.flight.request.per.connection==1. An in-flight batch expire when delivery.timeout.ms has passed since the batch creation irrespective of whether the batch is in flight or not. However, the producer waits the full request.timeout.ms for the in-flight request. *This implies **that user might be notified of batch expiry while a batch is still in-flight.* Could anyone explain about this? Thank you in advance.