KIP-588 — Allow producers to recover gracefully from transaction timeouts
Accepted TransactionsProducer
Adds a TRANSACTION_TIMED_OUT error code returned when a producer's transaction times out, allowing the same producer instance to recover by re-initializing with the bumped epoch via InitProducerId rather than requiring the application to create a new producer. Previously, a timed-out transaction surfaced as a fatal ProducerFencedException indistinguishable from being fenced by a competing producer, forcing unnecessary producer reconstruction.
Details
| Author | Boyang Chen |
| Status | Accepted |
| JIRA | KAFKA-9803 |
| Wiki | View on Apache Wiki |
| Created | 2020-04-02 |
| Last Modified | 2022-08-16 |
Explore how this KIP affects the Kafka protocol in the Protocol Explorer, or see the full KIP database.