That exception indicates that another thread is interrupting the consumer
thread. Is there something else in the process that could be causing that
interruption?

The -1 broker ID actually isn't unusual. Since broker IDs should be
positive, this is just a simple approach to identifying bootstrap servers
where we don't know their ID yet. This just indicates it is connecting to
the first bootstrap broker to get metadata.

-Ewen

On Tue, Jun 21, 2016 at 8:07 AM, Simon Cooper <
simon.coo...@featurespace.co.uk> wrote:

> Hi all,
>
> We've got a problem with high CPU usage on a 0.9 client. We've got a
> monitoring system that polls kafka topics for metadata (to get the last
> message offset) every so often, and this has started using very high CPU
> continuously. We're seeing the following being spammed in the logs every
> 100ms:
>
> 2016-06-21T13:21:10,355 | DEBUG | o.a.k.c.NetworkClient [pool-11-thread-8]
> | Initialize connection to node -1 for sending metadata request
> 2016-06-21T13:21:10,355 | DEBUG | o.a.k.c.NetworkClient [pool-11-thread-8]
> | Initiating connection to node -1 at <hostname>:9092.
> 2016-06-21T13:21:10,355 | DEBUG | o.a.k.c.NetworkClient [pool-11-thread-8]
> | Error connecting to node -1 at <hostname>:9092:
> java.nio.channels.ClosedByInterruptException: null
>         at
> java.nio.channels.spi.AbstractInterruptibleChannel.end(AbstractInterruptibleChannel.java:202)
> ~[na:1.8.0_60-ea]
>         at
> sun.nio.ch.SocketChannelImpl.connect(SocketChannelImpl.java:659)
> ~[na:1.8.0_60-ea]
>         at
> org.apache.kafka.common.network.Selector.connect(Selector.java:153)
> ~[monitoring-collector.jar:na]
>         at
> org.apache.kafka.clients.NetworkClient.initiateConnect(NetworkClient.java:489)
> [monitoring-collector.jar:na]
>         at
> org.apache.kafka.clients.NetworkClient.access$400(NetworkClient.java:47)
> [monitoring-collector.jar:na]
>         at
> org.apache.kafka.clients.NetworkClient$DefaultMetadataUpdater.maybeUpdate(NetworkClient.java:624)
> [monitoring-collector.jar:na]
>         at
> org.apache.kafka.clients.NetworkClient$DefaultMetadataUpdater.maybeUpdate(NetworkClient.java:543)
> [monitoring-collector.jar:na]
>         at
> org.apache.kafka.clients.NetworkClient.poll(NetworkClient.java:254)
> [monitoring-collector.jar:na]
>         at
> org.apache.kafka.clients.consumer.internals.ConsumerNetworkClient.clientPoll(ConsumerNetworkClient.java:320)
> [monitoring-collector.jar:na]
>         at
> org.apache.kafka.clients.consumer.internals.ConsumerNetworkClient.poll(ConsumerNetworkClient.java:213)
> [monitoring-collector.jar:na]
>         at
> org.apache.kafka.clients.consumer.internals.ConsumerNetworkClient.poll(ConsumerNetworkClient.java:193)
> [monitoring-collector.jar:na]
>         at
> org.apache.kafka.clients.consumer.internals.ConsumerNetworkClient.awaitMetadataUpdate(ConsumerNetworkClient.java:134)
> [monitoring-collector.jar:na]
>         at
> org.apache.kafka.clients.consumer.internals.AbstractCoordinator.ensureCoordinatorKnown(AbstractCoordinator.java:184)
> [monitoring-collector.jar:na]
>         at
> org.apache.kafka.clients.consumer.internals.ConsumerCoordinator.fetchCommittedOffsets(ConsumerCoordinator.java:290)
> [monitoring-collector.jar:na]
>         at
> org.apache.kafka.clients.consumer.internals.ConsumerCoordinator.refreshCommittedOffsetsIfNeeded(ConsumerCoordinator.java:272)
> [monitoring-collector.jar:na]
>         at
> org.apache.kafka.clients.consumer.KafkaConsumer.updateFetchPositions(KafkaConsumer.java:1299)
> [monitoring-collector.jar:na]
>         at
> org.apache.kafka.clients.consumer.KafkaConsumer.position(KafkaConsumer.java:1106)
> [monitoring-collector.jar:na]
>         ...
> 2016-06-21T13:21:10,355 | DEBUG | o.a.k.c.NetworkClient [pool-11-thread-8]
> | Give up sending metadata request since no node is available
>
> This is a single-broker cluster (id: 1), all on a single machine. There is
> nothing being logged in the broker logs.
>
> Can anyone help work out what is going wrong, and how we could fix it? In
> particular, the '-1' node id is suspicious, but we can't work out where
> this value is coming from.
>
> Thanks,
> SimonC
>



-- 
Thanks,
Ewen

Reply via email to