Any help is appreciated.
Threads are getting hung on the following method.
*class SSLHandlerG0 extends SslHandler:*
* synchronized public void write(NextFilter next, WriteRequest request)
throws SSLException, WriteRejectedException {*
------------------------------------------
M.V.S.Kishore
91-9886412814


---------- Forwarded message ---------
From: Kishore Mokkarala <kishore....@gmail.com>
Date: Fri, 22 Dec 2023 at 12:40
Subject: Deadlock in Apache mina version 2.2.1
To: Emmanuel Lécharny <elecha...@gmail.com>, <j...@apache.org>


Hi Emmanuel,

We are facing deadlock in production with mina 2.2.1 version,earlier it was
on 2.0.21, After upgrade only we are seeing this issue,kindly please
provide an update any similar kind issue is fixed in 2.2.3 or not ?


Thread pool-123-thread-3 is in deadlock with thread NioProcessor-37

pool-123-thread-3

PRIORITY : 5

THREAD ID : 0X00007F5978002870

NATIVE ID : 0X7C15

NATIVE ID (DECIMAL) : 31765

STATE : BLOCKED

stackTrace:
java.lang.Thread.State: BLOCKED (on object monitor)
at org.apache.mina.filter.ssl.SSLHandlerG0.write(SSLHandlerG0.java:312)
- waiting to lock <0x00007f5c9f001168> (a
org.apache.mina.filter.ssl.SSLHandlerG0)
at org.apache.mina.filter.ssl.SslFilter.filterWrite(SslFilter.java:380)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain.callPreviousFilterWrite(
DefaultIoFilterChain.java:753)
at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1500(
DefaultIoFilterChain.java:49)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.filterWrite(
DefaultIoFilterChain.java:1146)
at org.apache.mina.core.filterchain.IoFilterAdapter.filterWrite(
IoFilterAdapter.java:138)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain.callPreviousFilterWrite(
DefaultIoFilterChain.java:753)
at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1500(
DefaultIoFilterChain.java:49)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.filterWrite(
DefaultIoFilterChain.java:1146)
at org.apache.mina.filter.codec.ProtocolCodecFilter.filterWrite(
ProtocolCodecFilter.java:332)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain.callPreviousFilterWrite(
DefaultIoFilterChain.java:753)
at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1500(
DefaultIoFilterChain.java:49)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.filterWrite(
DefaultIoFilterChain.java:1146)
at org.apache.mina.filter.executor.ExecutorFilter.filterWrite(
ExecutorFilter.java:595)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain.callPreviousFilterWrite(
DefaultIoFilterChain.java:753)
at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1500(
DefaultIoFilterChain.java:49)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.filterWrite(
DefaultIoFilterChain.java:1146)
at
com.netscout.nsaapp.geo.minaG10Proto.server.G10GPBMessageIoFilter.filterWrite(
G10GPBMessageIoFilter.java:63)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain.callPreviousFilterWrite(
DefaultIoFilterChain.java:753)
at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1500(
DefaultIoFilterChain.java:49)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.filterWrite(
DefaultIoFilterChain.java:1146)
at org.apache.mina.core.filterchain.IoFilterAdapter.filterWrite(
IoFilterAdapter.java:138)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain.callPreviousFilterWrite(
DefaultIoFilterChain.java:753)
at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1500(
DefaultIoFilterChain.java:49)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.filterWrite(
DefaultIoFilterChain.java:1146)
at org.apache.mina.core.filterchain.IoFilterAdapter.filterWrite(
IoFilterAdapter.java:138)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain.callPreviousFilterWrite(
DefaultIoFilterChain.java:753)
at org.apache.mina.core.filterchain.DefaultIoFilterChain.fireFilterWrite(
DefaultIoFilterChain.java:746)
at org.apache.mina.core.session.AbstractIoSession.write(
AbstractIoSession.java:575)
at org.apache.mina.core.session.AbstractIoSession.write(
AbstractIoSession.java:520)
at
com.netscout.nsaapp.geo.g10Plugin.g10.processor.G10PluginCaptureProcessor.verifyAndSendStartMsgs(
G10PluginCaptureProcessor.java:2627)
at
com.netscout.nsaapp.geo.g10Plugin.g10.processor.G10PluginCaptureProcessor.sessionConnected(
G10PluginCaptureProcessor.java:2552)
at com.netscout.nsaapp.geo.minaG10Proto.server.G10MinaClient.connect(
G10MinaClient.java:220)
at jdk.internal.reflect.GeneratedMethodAccessor144.invoke(Unknown Source)
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(java.base@
17.0.7/DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(java.base@17.0.7/Method.java:568)
at org.apache.mina.statemachine.transition.MethodTransition.invokeMethod(
MethodTransition.java:281)
at org.apache.mina.statemachine.transition.MethodTransition.doExecute(
MethodTransition.java:232)
at org.apache.mina.statemachine.transition.AbstractTransition.execute(
AbstractTransition.java:100)
at org.apache.mina.statemachine.StateMachine.handle(StateMachine.java:183)
at org.apache.mina.statemachine.StateMachine.processEvents(
StateMachine.java:170)
at org.apache.mina.statemachine.StateMachine.handle(StateMachine.java:158)
- locked <0x00007f5c9f001408> (a
com.netscout.nsaapp.geo.minaG10Proto.server.G10StateContext)
at
org.apache.mina.statemachine.StateMachineProxyBuilder$MethodInvocationHandler.invoke(
StateMachineProxyBuilder.java:261)
at jdk.proxy4.$Proxy87.sessionOpened(jdk.proxy4/Unknown Source)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain$TailFilter.sessionOpened(
DefaultIoFilterChain.java:940)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextSessionOpened(
DefaultIoFilterChain.java:574)
at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$800(
DefaultIoFilterChain.java:49)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.sessionOpened(
DefaultIoFilterChain.java:1083)
at org.apache.mina.core.filterchain.IoFilterAdapter.sessionOpened(
IoFilterAdapter.java:90)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextSessionOpened(
DefaultIoFilterChain.java:574)
at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$800(
DefaultIoFilterChain.java:49)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.sessionOpened(
DefaultIoFilterChain.java:1083)
at org.apache.mina.core.filterchain.IoFilterAdapter.sessionOpened(
IoFilterAdapter.java:90)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextSessionOpened(
DefaultIoFilterChain.java:574)
at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$800(
DefaultIoFilterChain.java:49)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.sessionOpened(
DefaultIoFilterChain.java:1083)
at org.apache.mina.core.filterchain.IoFilterEvent.fire(
IoFilterEvent.java:127)
at org.apache.mina.core.session.IoEvent.run(IoEvent.java:89)
at org.apache.mina.filter.executor.OrderedThreadPoolExecutor$Worker.runTask(
OrderedThreadPoolExecutor.java:763)
at
org.apache.mina.filter.executor.OrderedThreadPoolExecutor$Worker.runTasks(
OrderedThreadPoolExecutor.java:755)
at org.apache.mina.filter.executor.OrderedThreadPoolExecutor$Worker.run(
OrderedThreadPoolExecutor.java:695)
at java.lang.Thread.run(java.base@17.0.7/Thread.java:833)

NioProcessor-37

PRIORITY : 5

THREAD ID : 0X00007F5A040B5880

NATIVE ID : 0X6D19

NATIVE ID (DECIMAL) : 27929

STATE : BLOCKED

stackTrace:
java.lang.Thread.State: BLOCKED (on object monitor)
at org.apache.mina.statemachine.StateMachine.handle(StateMachine.java:138)
- waiting to lock <0x00007f5c9f001408> (a
com.netscout.nsaapp.geo.minaG10Proto.server.G10StateContext)
at
org.apache.mina.statemachine.StateMachineProxyBuilder$MethodInvocationHandler.invoke(
StateMachineProxyBuilder.java:261)
at jdk.proxy4.$Proxy87.event(jdk.proxy4/Unknown Source)
at org.apache.mina.core.filterchain.DefaultIoFilterChain$TailFilter.event(
DefaultIoFilterChain.java:1039)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextFilterEvent(
DefaultIoFilterChain.java:789)
at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1700(
DefaultIoFilterChain.java:49)
at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.event(
DefaultIoFilterChain.java:1164)
at org.apache.mina.core.filterchain.IoFilterAdapter.event(
IoFilterAdapter.java:162)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextFilterEvent(
DefaultIoFilterChain.java:789)
at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1700(
DefaultIoFilterChain.java:49)
at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.event(
DefaultIoFilterChain.java:1164)
at org.apache.mina.core.filterchain.IoFilterAdapter.event(
IoFilterAdapter.java:162)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextFilterEvent(
DefaultIoFilterChain.java:789)
at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1700(
DefaultIoFilterChain.java:49)
at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.event(
DefaultIoFilterChain.java:1164)
at org.apache.mina.core.filterchain.IoFilterAdapter.event(
IoFilterAdapter.java:162)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextFilterEvent(
DefaultIoFilterChain.java:789)
at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1700(
DefaultIoFilterChain.java:49)
at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.event(
DefaultIoFilterChain.java:1164)
at org.apache.mina.core.filterchain.IoFilterAdapter.event(
IoFilterAdapter.java:162)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextFilterEvent(
DefaultIoFilterChain.java:789)
at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1700(
DefaultIoFilterChain.java:49)
at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.event(
DefaultIoFilterChain.java:1164)
at org.apache.mina.core.filterchain.IoFilterAdapter.event(
IoFilterAdapter.java:162)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextFilterEvent(
DefaultIoFilterChain.java:789)
at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1700(
DefaultIoFilterChain.java:49)
at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.event(
DefaultIoFilterChain.java:1164)
at org.apache.mina.filter.ssl.SSLHandlerG0.finish_handshake(
SSLHandlerG0.java:589)
- locked <0x00007f5c9f001168> (a org.apache.mina.filter.ssl.SSLHandlerG0)
at org.apache.mina.filter.ssl.SSLHandlerG0.receive_loop(
SSLHandlerG0.java:271)
at org.apache.mina.filter.ssl.SSLHandlerG0.receive_loop(
SSLHandlerG0.java:246)
at org.apache.mina.filter.ssl.SSLHandlerG0.receive_loop(
SSLHandlerG0.java:246)
at org.apache.mina.filter.ssl.SSLHandlerG0.receive(SSLHandlerG0.java:162)
- locked <0x00007f5c9f001168> (a org.apache.mina.filter.ssl.SSLHandlerG0)
at org.apache.mina.filter.ssl.SslFilter.messageReceived(SslFilter.java:342)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(
DefaultIoFilterChain.java:650)
at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1300(
DefaultIoFilterChain.java:49)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(
DefaultIoFilterChain.java:1128)
at org.apache.mina.core.filterchain.IoFilterAdapter.messageReceived(
IoFilterAdapter.java:122)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(
DefaultIoFilterChain.java:650)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain.fireMessageReceived(
DefaultIoFilterChain.java:643)
at org.apache.mina.core.polling.AbstractPollingIoProcessor.read(
AbstractPollingIoProcessor.java:539)
at org.apache.mina.core.polling.AbstractPollingIoProcessor.access$1200(
AbstractPollingIoProcessor.java:68)
at
org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.process(
AbstractPollingIoProcessor.java:1224)
at
org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.process(
AbstractPollingIoProcessor.java:1213)
at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(
AbstractPollingIoProcessor.java:683)
at org.apache.mina.util.NamePreservingRunnable.run(
NamePreservingRunnable.java:64)
at java.util.concurrent.ThreadPoolExecutor.runWorker(java.base@
17.0.7/ThreadPoolExecutor.java:1136)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(java.base@
17.0.7/ThreadPoolExecutor.java:635)
at java.lang.Thread.run(java.base@17.0.7/Thread.java:833)

Regards,
------------------------------------------
M.V.S.Kishore
Lead Dev Engineer
NetScout S/w Pvt. Ltd.
91-9886412814

Reply via email to