KIP-912 — Support decreasing send's max block time without worrying about metadata's fetch
Discussion Kafka 4.2 Producer
KIP-912 adds two producer configs—`max.block.ms.include.metadata` (boolean, default true) and `max.block.metadata.ms` (default 60s)—to allow separating the metadata-fetch timeout from the record-accumulator block timeout in `KafkaProducer.send()`. When a producer starts cold, the first `send()` blocks for metadata retrieval, and the shared `max.block.ms` budget cannot be reduced below the metadata-fetch duration (often 4+ seconds), preventing operators from setting a shorter blocking limit for record buffering.
Details
| Author | fu.jian |
| Status | Discussion |
| Kafka Version | 4.2 |
| JIRA | KAFKA-14768 |
| Wiki | View on Apache Wiki |
| Created | 2023-03-06 |
| Last Modified | 2023-03-06 |
Explore how this KIP affects the Kafka protocol in the Protocol Explorer, or see the full KIP database.