Home | About | Sematext search-lucene.com search-hadoop.com
NEW: Monitor These Apps!
elasticsearch, apache solr, apache hbase, hadoop, redis, casssandra, amazon cloudwatch, mysql, memcached, apache kafka, apache zookeeper, apache storm, ubuntu, centOS, red hat, debian, puppet labs, java, senseiDB
 Search Hadoop and all its subprojects:

Switch to Threaded View
Kafka >> mail # user >> 0.8.0 producer can't connect to cluster?


Copy link to this message
-
Re: 0.8.0 producer can't connect to cluster?
Do you have the exception that caused each retry to fail?

Thanks,

Jun

On Tue, Nov 27, 2012 at 7:17 AM, Chris Curtin <[EMAIL PROTECTED]>wrote:

> Hi,
>
> Installed 0.8.0 yesterday, 3 physical machines, 9 brokers running (3 per
> machine). 2 topics, with 3 replicas each
>
> the console producer/consumer examples work fine.
>
> When I run my producer logic I get the following error whether on the
> cluster or in my dev environment:
>
> Exception in thread "main" kafka.common.FailedToSendMessageException:
> Failed to send messages after 3 tries.
> at
>
> kafka.producer.async.DefaultEventHandler.handle(DefaultEventHandler.scala:70)
> at kafka.producer.Producer.send(Producer.scala:75)
> at kafka.javaapi.producer.Producer.send(Producer.scala:32)
> at com.silverpop.kafka.playproducer.TestProducer.main(TestProducer.java:40)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
>
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at
>
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120)
>
> Code is pretty basic:
>
> public class TestProducer {
>     public static void main(String[] args) {
>
>         String zookeeper = args[0];
>         long events = Long.parseLong(args[1]);
>         long blocks = Long.parseLong(args[2]);
>
>         Random rnd = new Random();
>
>         Properties props = new Properties();
>         props.put("broker.list", "mongodb03.atlnp1:9092");
>
>
>         props.put("serializer.class", "kafka.serializer.StringEncoder");
>         ProducerConfig config = new ProducerConfig(props);
>         Producer<Integer, String> producer = new Producer<Integer,
> String>(config);
>
>
>         for (long nBlocks = 0; nBlocks < blocks; nBlocks++) {
>             for (long nEvents = 0; nEvents < events; nEvents++) {
>                 long runtime = new Date().getTime();
>                 String msg = runtime + "," + (50 + nBlocks) + "," +
> nEvents+ "," + rnd.nextInt(1000);
>                 KeyedMessage<Integer, String> data = new
> KeyedMessage<Integer, String>("test1", msg);
>                 producer.send(data);
>             }
>         }
>
>
>     }
>
> using Zookeeper doesn't matter. Changing broker.list to include all 9
> brokers doesn't matter. Changing Producer and KeyedMessage to be <String,
> String> doesn't matter.
>
> Thoughts on what I'm doing wrong?
>
> Thanks,
>
> Chris
>
NEW: Monitor These Apps!
elasticsearch, apache solr, apache hbase, hadoop, redis, casssandra, amazon cloudwatch, mysql, memcached, apache kafka, apache zookeeper, apache storm, ubuntu, centOS, red hat, debian, puppet labs, java, senseiDB