incubator-kafka-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Chris Curtin <curtin.ch...@gmail.com>
Subject 0.8.0 producer can't connect to cluster?
Date Tue, 27 Nov 2012 15:17:34 GMT
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

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message