KIP-98 — Exactly Once Delivery and Transactional Messaging
Accepted Kafka 1.0 TransactionsProducer
Introduces exactly-once semantics (EOS) to Kafka via idempotent producers (deduplication via producer ID + sequence number) and multi-partition atomic transactions (committed via a two-phase protocol through the transaction coordinator). Kafka previously guaranteed at-least-once delivery, meaning producer retries on broker failures could produce duplicate records—a correctness problem for stream processing pipelines requiring exactly-once processing guarantees.
Protocol Impact
Produce · Fetch · OffsetCommit · FindCoordinator · AddPartitionsToTxn · AddOffsetsToTxn · EndTxn · WriteTxnMarkers · TxnOffsetCommit
Details
| Author | Apurva Mehta |
| Status | Accepted |
| Kafka Version | 1.0 |
| JIRA | KAFKA-1639 |
| Wiki | View on Apache Wiki |
| Created | 2016-11-30 |
| Last Modified | 2026-03-04 |
Explore how this KIP affects the Kafka protocol in the Protocol Explorer, or see the full KIP database.