With acks=all, it is guaranteed that a message is replicated to all ISRs on successful produce response.
lag.time.max is used to determine which replica is in sync, not to determine a message is replicated. On Sun, Apr 27, 2025, 18:37 XiJun Ye <yexi...@itiger.com> wrote: > I have a question about data consistency. Kafka ISR only determines the > time of lag, not the number of messages. Does ack=all require the replicas > in the ISR to completely catch up with the number of messages or to meet > the time requirement? For example, if there are 3 replicas in the ISR, > min.insync.replicas=3 and acks=all, can the data of the 3 replicas be > guaranteed to be completely consistent when the message is written? Instead > of meeting the replica.lag.time.max.ms time requirement. >