[ 
https://issues.apache.org/jira/browse/KAFKA-3172?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15425986#comment-15425986
 ] 

Oleg Gorobets commented on KAFKA-3172:
--------------------------------------

Couple more observations:
(1) this happens only when I am running consumer out of topic with single 
partition, if I increase number of partitions per topic the problem goes away.
(2) the number of messages consumed after which consumer blocks is always close 
or equal to 10000 messages, then it blocks, which gives me the idea that there 
might be some limit per partition, queue or buffer size?
(3) I tried the old scala api and it also seem to have the same problem, so 
looks like not connected with api version.

> Consumer threads stay in 'Watiting' status and are blocked at consumer poll 
> method
> ----------------------------------------------------------------------------------
>
>                 Key: KAFKA-3172
>                 URL: https://issues.apache.org/jira/browse/KAFKA-3172
>             Project: Kafka
>          Issue Type: Bug
>          Components: consumer
>    Affects Versions: 0.9.0.0
>         Environment: linux
>            Reporter: Dany Benjamin
>            Assignee: Neha Narkhede
>            Priority: Critical
>             Fix For: 0.9.0.0
>
>         Attachments: jmx_info.png, jstack.png, lagSample.png
>
>
> When running multiple consumers on same group (400 - for a 400 partitioned 
> topic), the application for all threads blocks at consumer.poll() method. The 
> timeout parameter sent in is 1.
> Stack dump:
> "pool-1-thread-198" #424 prio=5 os_prio=0 tid=0x00007f6bb6d53800 nid=0xc349 
> waiting on condition [0x00007f63df8f7000]
>    java.lang.Thread.State: WAITING (parking)
>         at sun.misc.Unsafe.park(Native Method)
>         - parking to wait for  <0x0000000605812710> (a 
> java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
>         at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
>         at 
> java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
>         at 
> java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
>         at 
> java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1067)
>         at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
>         at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
>         at java.lang.Thread.run(Thread.java:745)
> "kafka-producer-network-thread | producer-198" #423 daemon prio=5 os_prio=0 
> tid=0x00007f6bb6d52000 nid=0xc348 runnable [0x00007f63df9f8000]
>    java.lang.Thread.State: RUNNABLE
>         at sun.nio.ch.EPollArrayWrapper.epollWait(Native Method)
>         at sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:269)
>         at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:79)
>         at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86)
>         - locked <0x00000006058283e8> (a sun.nio.ch.Util$2)
>         - locked <0x00000006058283d8> (a 
> java.util.Collections$UnmodifiableSet)
>         - locked <0x0000000605828390> (a sun.nio.ch.EPollSelectorImpl)
>         at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97)
>         at org.apache.kafka.common.network.Selector.select(Selector.java:425)
>         at org.apache.kafka.common.network.Selector.poll(Selector.java:254)
>         at org.apache.kafka.clients.NetworkClient.poll(NetworkClient.java:270)
>         at 
> org.apache.kafka.clients.producer.internals.Sender.run(Sender.java:216)
>         at 
> org.apache.kafka.clients.producer.internals.Sender.run(Sender.java:128)
>         at java.lang.Thread.run(Thread.java:745)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to