If all brokers are down, the async send will fail. In trunk, we have a new producer written in java, which allows the caller to register a callback during async send.
Thanks, Jun On Wed, Mar 12, 2014 at 6:52 AM, Yury Ruchin <yuri.ruc...@gmail.com> wrote: > Hi, > > Having Kafka 0.8, I send messages using Producer in async mode. I wonder > what will happen if a message cannot be sent (e. g. all brokers get down). > > In sync mode, error handling is straightforward: after > "message.send.max.retries" the send() method will throw > FailedToSendMessageException. However, in async mode send() does not > actually check whether message has been successfully sent. It just enqueues > messages to be processed by ProducerSendThread in background. As I > currently understand, possible errors will not be exposed to the sender > then. Am I missing something? Is there any way to set error handler for > async Producer? >