I am seeing a different behavior with acks all. From the documentation,
acks=all This means the leader will wait for the full set of in-sync replicas to acknowledge the record. This guarantees that the record will not be lost as long as at least one in-sync replica remains alive. This is the strongest available guarantee. This is equivalent to the acks=-1 setting.
I had a 3 broker setup and a topic with replication factor 3 .My understaning about the above statement is , the leader will wait if any of the brokers is down( as it *will wait for ISR to acknowledge * the record. But, to my surprise, it is the not the case, the message is produced and consumed by the consumer.
Is it that, it is not honored in this case ?