You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@kafka.apache.org by tao xiao <xi...@gmail.com> on 2015/04/24 21:38:48 UTC

Getting java.lang.IllegalMonitorStateException in mirror maker when building fetch request

Hi team,

I observed java.lang.IllegalMonitorStateException thrown
from AbstractFetcherThread in mirror maker when it is trying to build the
fetchrequst. Below is the error

[2015-04-23 16:16:02,049] ERROR
[ConsumerFetcherThread-group_id_localhost-1429830778627-4519368f-0-7],
Error due to  (kafka.consumer.ConsumerFetcherThread)

java.lang.IllegalMonitorStateException

        at
java.util.concurrent.locks.ReentrantLock$Sync.tryRelease(ReentrantLock.java:155)

        at
java.util.concurrent.locks.AbstractQueuedSynchronizer.release(AbstractQueuedSynchronizer.java:1260)

        at
java.util.concurrent.locks.AbstractQueuedSynchronizer.fullyRelease(AbstractQueuedSynchronizer.java:1723)

        at
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2166)

        at
kafka.server.AbstractFetcherThread.doWork(AbstractFetcherThread.scala:95)

        at kafka.utils.ShutdownableThread.run(ShutdownableThread.scala:60)

I believe this is due to partitionMapCond.await(fetchBackOffMs,
TimeUnit.MILLISECONDS) being called while not lock is acquired.

below code should fix the issue

inLock(partitionMapLock) {
partitionMapCond.await(fetchBackOffMs, TimeUnit.MILLISECONDS)
}

Should I file a jira ticket and submit the patch?

I use the latest version of mirror maker in trunk.


-- 
Regards,
Tao

Re: Getting java.lang.IllegalMonitorStateException in mirror maker when building fetch request

Posted by Jiangjie Qin <jq...@linkedin.com.INVALID>.
Hi Tao,

KAFKA-2150 has been filed.

Jiangjie

On 4/24/15, 12:38 PM, "tao xiao" <xi...@gmail.com> wrote:

>Hi team,
>
>I observed java.lang.IllegalMonitorStateException thrown
>from AbstractFetcherThread in mirror maker when it is trying to build the
>fetchrequst. Below is the error
>
>[2015-04-23 16:16:02,049] ERROR
>[ConsumerFetcherThread-group_id_localhost-1429830778627-4519368f-0-7],
>Error due to  (kafka.consumer.ConsumerFetcherThread)
>
>java.lang.IllegalMonitorStateException
>
>        at
>java.util.concurrent.locks.ReentrantLock$Sync.tryRelease(ReentrantLock.jav
>a:155)
>
>        at
>java.util.concurrent.locks.AbstractQueuedSynchronizer.release(AbstractQueu
>edSynchronizer.java:1260)
>
>        at
>java.util.concurrent.locks.AbstractQueuedSynchronizer.fullyRelease(Abstrac
>tQueuedSynchronizer.java:1723)
>
>        at
>java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awai
>t(AbstractQueuedSynchronizer.java:2166)
>
>        at
>kafka.server.AbstractFetcherThread.doWork(AbstractFetcherThread.scala:95)
>
>        at kafka.utils.ShutdownableThread.run(ShutdownableThread.scala:60)
>
>I believe this is due to partitionMapCond.await(fetchBackOffMs,
>TimeUnit.MILLISECONDS) being called while not lock is acquired.
>
>below code should fix the issue
>
>inLock(partitionMapLock) {
>partitionMapCond.await(fetchBackOffMs, TimeUnit.MILLISECONDS)
>}
>
>Should I file a jira ticket and submit the patch?
>
>I use the latest version of mirror maker in trunk.
>
>
>-- 
>Regards,
>Tao