lvliguo created KAFKA-7592: ------------------------------ Summary: kafka consumer poll不能关闭,3节点关闭2节点broke和zk Key: KAFKA-7592 URL: https://issues.apache.org/jira/browse/KAFKA-7592 Project: Kafka Issue Type: Bug Components: clients Affects Versions: 0.10.2.0 Environment: jdk1.8.73 Linux version 3.12.49-11-default (geeko@buildhost) (gcc version 4.8.5 (SUSE Linux) ) #1 SMP Wed Nov 11 20:52:43 UTC 2015 (8d714a0) SUSE Linux Enterprise Server 12 SP1 release 12.1 Reporter: lvliguo
【问题现象】:KafkaConsume.poll方法无法终止,导致线程无法关闭。 【复现方法】:安装3节点的kafka集群(3个broke和3个zk)。先关闭2个zk导致zk不可用,然后再关闭2个broke。然后向创建kafkaConsumer,发送poll请求。topic是单副本单分区的。 【异常信息】: [2018-11-05 15:42:23,318/CST][consumer thread://mano-test-02/my_json_group][WARN][RHM_Beta_Service01][rest][Connection exception with /10.21.84.172 disconnected][org.apache.kafka.common.network.Selector.pollSelectionKeys(Selector.java:407)] java.net.ConnectException: Connection refused at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method) at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:717) at org.apache.kafka.common.network.SslTransportLayer.finishConnect(SslTransportLayer.java:110) at org.apache.kafka.common.network.KafkaChannel.finishConnect(KafkaChannel.java:81) at org.apache.kafka.common.network.Selector.pollSelectionKeys(Selector.java:365) at org.apache.kafka.common.network.Selector.poll(Selector.java:332) at org.apache.kafka.clients.NetworkClient.poll(NetworkClient.java:375) at org.apache.kafka.clients.consumer.internals.ConsumerNetworkClient.poll(ConsumerNetworkClient.java:234) at org.apache.kafka.clients.consumer.internals.ConsumerNetworkClient.poll(ConsumerNetworkClient.java:180) at org.apache.kafka.clients.consumer.internals.AbstractCoordinator.joinGroupIfNeeded(AbstractCoordinator.java:358) at org.apache.kafka.clients.consumer.internals.AbstractCoordinator.ensureActiveGroup(AbstractCoordinator.java:327) at org.apache.kafka.clients.consumer.internals.ConsumerCoordinator.poll(ConsumerCoordinator.java:329) at org.apache.kafka.clients.consumer.KafkaConsumer.pollOnce(KafkaConsumer.java:1056) at org.apache.kafka.clients.consumer.KafkaConsumer.poll(KafkaConsumer.java:1021) at com.huawei.middleware.dms.store.kafka.DmsKafkaConsumers.pullFromStore(DmsKafkaConsumers.java:239) at com.huawei.middleware.dms.store.kafka.DmsKafkaConsumerThread.doRun(DmsKafkaConsumerThread.java:96) at com.huawei.middleware.dms.store.kafka.DmsKafkaConsumerThread.run(DmsKafkaConsumerThread.java:60) 【堆栈】: "consumer thread://mano-test-01/my_json_group" #182 prio=5 os_prio=0 tid=0x00007f1d14016000 nid=0x19a80 waiting on condition [0x00007f1cac8eb000] java.lang.Thread.State: TIMED_WAITING (sleeping) at java.lang.Thread.sleep(Native Method) at org.apache.kafka.common.utils.SystemTime.sleep(SystemTime.java:45) at org.apache.kafka.clients.consumer.internals.AbstractCoordinator.joinGroupIfNeeded(AbstractCoordinator.java:372) at org.apache.kafka.clients.consumer.internals.AbstractCoordinator.ensureActiveGroup(AbstractCoordinator.java:327) at org.apache.kafka.clients.consumer.internals.ConsumerCoordinator.poll(ConsumerCoordinator.java:329) at org.apache.kafka.clients.consumer.KafkaConsumer.pollOnce(KafkaConsumer.java:1056) at org.apache.kafka.clients.consumer.KafkaConsumer.poll(KafkaConsumer.java:1021) at com.huawei.middleware.dms.store.kafka.DmsKafkaConsumers.pullFromStore(DmsKafkaConsumers.java:239) at com.huawei.middleware.dms.store.kafka.DmsKafkaConsumerThread.doRun(DmsKafkaConsumerThread.java:96) at com.huawei.middleware.dms.store.kafka.DmsKafkaConsumerThread.run(DmsKafkaConsumerThread.java:60) -- This message was sent by Atlassian JIRA (v7.6.3#76005)