KIP-1309 — Improve transaction liveness checking
Discussion TransactionsProtocolProducer
Introduces a TxnHeartbeat RPC (requiring WRITE on the Transactional ID) and a new InitProducerId version carrying a heartbeat interval, so the coordinator aborts idle transactions after a multiple of that interval rather than relying solely on transaction.timeout.ms. Transaction timeout currently conflates two goals — detecting dead clients and allowing long transactions to finish — so a low value aborts healthy transactions preemptively while a high value delays recovery from failed Flink, Spark or Streams applications.
Details
| Author | Andrew Schofield |
| Status | Discussion |
| Wiki | View on Apache Wiki |
| Created | 2026-04-01 |
| Last Modified | 2026-04-01 |
Explore how this KIP affects the Kafka protocol in the Protocol Explorer, or see the full KIP database.