Hi All, Just want to double check with you regarding producers using required.acks = -1.
- Producer is guaranteed to receive responses within certain time. Because the satisfied request checking is for in-sync replica. If some replica got stuck, it will be removed from in-sync replica and hence won't block sending response back. - All exceptions in response come from the leader replica, which means appending to the leader failed and producer should resend the message. - Potential data loss case: when broker does unclean-leader election - Potential data duplication case: connection dropped before producer receives response. In which case, producer does not know whether the request succeeded or resend the message. Are those above correct? Thank you for your time.