Sto usando Kafka 0.8.2.1 e la nuova API Producer. Il server è configurato come nodo singolo nella rete locale.
Il problema è che il produttore lancia un EOFException
dopo aver eseguito per un po '(15 minuti l'ultima volta che ho controllato), ma non sembra importare perché il mio produttore continua a funzionare dopo questo.produttore kafka lancia EOFException durante la corsa
Il mio modo di inizializzare il produttore:
Map<String, Object> configs = new HashMap<>();
configs.put(ProducerConfig.BOOTSTRAP_SERVERS_CONFIG, "192.168.1.101:9092");
configs.put(ProducerConfig.ACKS_CONFIG, "1");
configs.put(ProducerConfig.BLOCK_ON_BUFFER_FULL_CONFIG, "false");
configs.put(ProducerConfig.KEY_SERIALIZER_CLASS_CONFIG, StringSerializer.class.getName());
configs.put(ProducerConfig.VALUE_SERIALIZER_CLASS_CONFIG, StringSerializer.class.getName());
this.producer = new KafkaProducer<>(configs);
e l'eccezione che ho ottenuto:
WARN [2015-06-17 02:07:28,896] org.apache.kafka.common.network.Selector: Error in I/O with /192.168.1.101
! java.io.EOFException: null
! at org.apache.kafka.common.network.NetworkReceive.readFrom(NetworkReceive.java:62) ~[kafka-clients-0.8.2.1.jar:na]
! at org.apache.kafka.common.network.Selector.poll(Selector.java:248) ~[kafka-clients-0.8.2.1.jar:na]
! at org.apache.kafka.clients.NetworkClient.poll(NetworkClient.java:192) [kafka-clients-0.8.2.1.jar:na]
! at org.apache.kafka.clients.producer.internals.Sender.run(Sender.java:191) [kafka-clients-0.8.2.1.jar:na]
! at org.apache.kafka.clients.producer.internals.Sender.run(Sender.java:122) [kafka-clients-0.8.2.1.jar:na]
! at java.lang.Thread.run(Thread.java:745) [na:1.8.0_45]
Anche se il mio codice funziona ancora con questo, mi piacerebbe sapere perché e come impedirlo.
Ho lo stesso problema di oggi, hai capito già? Sembra che ci sia un problema ufficiale https://issues.apache.org/jira/browse/KAFKA-2078 – shobull