You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@kafka.apache.org by "Shaik Zakir Hussain (Jira)" <ji...@apache.org> on 2022/12/07 15:21:00 UTC

[jira] [Assigned] (KAFKA-13878) Connect deadlock in WorkerConnector on desired state change

     [ https://issues.apache.org/jira/browse/KAFKA-13878?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Shaik Zakir Hussain reassigned KAFKA-13878:
-------------------------------------------

    Assignee: Shaik Zakir Hussain

> Connect deadlock in WorkerConnector on desired state change
> -----------------------------------------------------------
>
>                 Key: KAFKA-13878
>                 URL: https://issues.apache.org/jira/browse/KAFKA-13878
>             Project: Kafka
>          Issue Type: Bug
>          Components: KafkaConnect
>            Reporter: Greg Harris
>            Assignee: Shaik Zakir Hussain
>            Priority: Major
>
> We've experienced multiple instances of deadlocks where the connector thread is blocked indefinitely with the following stacktrace:
> {noformat}
> "connector-thread-myconnector" #2059323 prio=5 os_prio=0 cpu=123.43ms elapsed=147352.41s tid=0x00007f5588160de0 nid=0x18be in Object.wait()  [0x00007f550e3fe000]
>    java.lang.Thread.State: WAITING (on object monitor)
>     at java.lang.Object.wait(java.base@16.0.2/Native Method)
>     - waiting on <no object reference available>
>     at java.lang.Object.wait(java.base@16.0.2/Object.java:320)
>     at org.apache.kafka.connect.runtime.WorkerConnector.doRun(WorkerConnector.java:149)
>     - locked <0x00000005d2253818> (a org.apache.kafka.connect.runtime.WorkerConnector)
>     at org.apache.kafka.connect.runtime.WorkerConnector.run(WorkerConnector.java:118)
>     at java.util.concurrent.Executors$RunnableAdapter.call(java.base@16.0.2/Executors.java:515)
>     at java.util.concurrent.FutureTask.run(java.base@16.0.2/FutureTask.java:264)
>     at java.util.concurrent.ThreadPoolExecutor.runWorker(java.base@16.0.2/ThreadPoolExecutor.java:1130)
>     at java.util.concurrent.ThreadPoolExecutor$Worker.run(java.base@16.0.2/ThreadPoolExecutor.java:630)
>     at java.lang.Thread.run(java.base@16.0.2/Thread.java:831){noformat}
> This appears to be caused by a race condition where a notify() is never delivered to a task, causing the connector thread to wait indefinitely for a notify() call that never comes.
> This causes the connector to be unable to process further state changes, or generate task configurations.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)