Home | About | Sematext search-lucene.com search-hadoop.com
 Search Hadoop and all its subprojects:

Switch to Threaded View
Kafka, mail # user - kafka.common.FailedToSendMessageException - 0.8


Copy link to this message
-
Re: kafka.common.FailedToSendMessageException: Failed to send messages after 3 tries.
Florin Trofin 2013-06-25, 07:12
I got the same error but I think I had a different issue than you: My code
was written for kafka 0.7 and when I switched to 0.8 I changed the
"zk.connect" property to "metadata.broker.list" but left it with the same
value (which was of course the zookeeper's host and port). In other words
a "pilot error" :-) The snippet you provided doesn't seem to have this
problem, but it is interesting that we got the same error (which would be
nice if it can be customized depending on the actual problem: host
unreachable, not responding, etc)

F.

On 6/24/13 10:55 PM, "Markus Roder" <[EMAIL PROTECTED]> wrote:

>We had this issue as well but never the less the message was enqueued
>four times into the cluster. It would be great to get any hint on this
>issue.
>
>regards
>
>--
>Markus Roder
>
>Am 25.06.2013 um 07:18 schrieb Yogesh Sangvikar
><[EMAIL PROTECTED]>:
>
>> Hi Jun,
>>
>> The stack trace we found is as follow,
>>
>> log4j:WARN No appenders could be found for logger
>> (kafka.utils.VerifiableProperties).
>> log4j:WARN Please initialize the log4j system properly.
>> kafka.common.FailedToSendMessageException: Failed to send messages
>>after 3
>> tries.
>>        at
>>
>>kafka.producer.async.DefaultEventHandler.handle(DefaultEventHandler.scala
>>:90)
>>        at kafka.producer.Producer.send(Producer.scala:74)
>>        at kafka.javaapi.producer.Producer.send(Producer.scala:32)
>>        at
>>
>>com.pearson.firehose.KafkaProducer.publishTinCanMessage(KafkaProducer.jav
>>a:27)
>>        at com.pearson.firehose.KafkaProducer.main(KafkaProducer.java:44)
>>
>> Please let me know if you need the complete producer code.
>>
>> Thanks,
>> Yogesh Sangvikar
>>
>>
>> On Tue, Jun 25, 2013 at 10:05 AM, Jun Rao <[EMAIL PROTECTED]> wrote:
>>
>>> Could you attach the log before FailedToSendMessageException in the
>>> producer? It should tell you the reason why the message can't be sent.
>>>
>>> Thanks,
>>>
>>> Jun
>>>
>>>
>>> On Mon, Jun 24, 2013 at 9:20 PM, Yogesh Sangvikar <
>>> [EMAIL PROTECTED]> wrote:
>>>
>>>> Hi Team,
>>>>
>>>> We are using  kafka-0.8.0-beta1-candidate1 release. (
>>>> https://github.com/apache/kafka/tree/0.8.0-beta1-candidate1).
>>>> While running producer with following configuration, we found an issue
>>>> "kafka.common.
>>>> FailedToSendMessageException: Failed to send messages after 3 tries",
>>>>
>>>> We are using default broker configurations.
>>>>
>>>> Code snippet:
>>>>
>>>> private Producer<byte[], byte[]> producer = null;
>>>>
>>>>  public KafkaProducer() {
>>>>    Properties props = new Properties();
>>>>    props.put("metadata.broker.list", "broker1:9092<
>>>> http://10.252.8.168:9092>
>>>> ,broker2:9092 <http://10.252.8.48:9092>,broker3:9092<
>>>> http://10.252.8.234:9092>
>>>> ,broker4:9092 <http://10.252.8.121:9092>,broker5:9092<
>>>> http://10.252.8.236:9092>
>>>> ");
>>>>    *props.put("producer.type", "sync");*
>>>>    ProducerConfig config = new ProducerConfig(props);
>>>>    producer = new Producer<byte[], byte[]>(config);
>>>>  }
>>>>
>>>>  public void publishTinCanMessage(String message, int event) throws
>>>> Exception {
>>>>    KeyedMessage<byte[], byte[]> data = new KeyedMessage<byte[],
>>>> byte[]>("tin_can_topic",
>>>> (String.valueOf(event%3)).getBytes(),message.getBytes());
>>>>    producer.send(data);
>>>>
>>>>  }
>>>> ......
>>>>
>>>> Found issue:
>>>> kafka.common.
>>>> *FailedToSendMessageException: Failed to send messages after 3 tries.*
>>>>        at
>>>
>>>kafka.producer.async.DefaultEventHandler.handle(DefaultEventHandler.scal
>>>a:90)
>>>>        at kafka.producer.Producer.send(Producer.scala:74)
>>>>        at kafka.javaapi.producer.Producer.send(Producer.scala:32)
>>>>        at
>>>
>>>com.pearson.firehose.KafkaProducer.publishTinCanMessage(KafkaProducer.ja
>>>va:27)
>>>>        at
>>>>com.pearson.firehose.KafkaProducer.main(KafkaProducer.java:44)
>>>>
>>>>
>>>>
>>>> But. with *props.put("producer.type", "async"); *the producer was
>>>>working