KIP-1310 — General Transaction Session
Discussion TransactionsClientProtocol
Extracts transaction identity and lifecycle management out of `KafkaProducer` into a first-class `TransactionSession` client abstraction, exposing the coordinator state machine (initTransactions, prepare, complete, heartbeat) independently of record production. KIP-939 put 2PC recovery APIs on the producer even though committing a transaction involves no producing, forcing callers to instantiate a full producer with buffer pools and sender threads and leaving the coordinator logic buried in internal packages where share consumers or external coordinators cannot reach it.
Details
| Author | Shekhar Rajak |
| Status | Discussion |
| JIRA | KAFKA-20381 |
| Wiki | View on Apache Wiki |
| Created | 2026-04-01 |
| Last Modified | 2026-05-17 |
Explore how this KIP affects the Kafka protocol in the Protocol Explorer, or see the full KIP database.