KIP-185 — Make exactly once in order delivery the default producer setting
Discussion Kafka 1.0 ProducerTransactions
KIP-185 proposes changing the default producer configuration to enable idempotent delivery (`enable.idempotence=true`) and set `acks=all`, `max.in.flight.requests.per.connection=5`, and `retries=MAX_INT`, making exactly-once in-order delivery per partition the default behavior. The historical default (at-most-once, no ordering guarantee) was the weakest delivery semantic Kafka offers and was chosen for throughput, but Kafka 0.11 introduced idempotence at near-zero overhead, making the weak default no longer justified.
Protocol Impact
Details
| Author | Apurva Mehta |
| Status | Discussion |
| Kafka Version | 1.0 |
| JIRA | KAFKA-5494 |
| Wiki | View on Apache Wiki |
| Created | 2017-08-08 |
| Last Modified | 2023-09-06 |
Explore how this KIP affects the Kafka protocol in the Protocol Explorer, or see the full KIP database.