Hello, We've been testing recent versions of trunk and are seeing surprising behavior when trying to use the new request timeout functionality. For example, at revision ae5a5d7:
# in separate terminals $ ./bin/zookeeper-server-start.sh config/zookeeper.properties $ ./bin/kafka-server-start.sh config/server.properties # set request timeout $ cat producer.properties request.timeout.ms=1000 # run the verifiable producer, for example $ ./bin/kafka-verifiable-producer.sh --broker-list localhost:9092 --topic testing --throughput 5 --producer.config producer.properties If you then kill the kafka server process, you will see the producer hang indefinitely. This is a very simple case, but the behavior is surprising. We have also found it easy to reproduce this behavior in more realistic environments with multiple brokers, custom producers, etc. The end result is that we're not sure how to safely decommission a broker without potentially leaving a producer with a permanently stuck request. Thanks, Luke Steensen