mina-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Norbert Irmer <N.Ir...@digitec.de>
Subject Re: Deadlock when using SslFilter and ProxyFilter together
Date Wed, 10 Feb 2016 12:11:09 GMT
Hello,

I did a "threaddump" with visualvm in the deadlock situation (not sure if this is what you
wanted, but I don't see
anything else), it shows the same deadlock situation (at the bottom of this mail), as in my
previous mail.


2016-02-10 13:04:58
Full thread dump Java HotSpot(TM) 64-Bit Server VM (25.60-b23 mixed mode):

"Thread-7" #29 daemon prio=5 os_prio=0 tid=0x000000001ed49000 nid=0xfb0 runnable [0x000000001f66e000]
   java.lang.Thread.State: RUNNABLE
	at java.net.SocketInputStream.socketRead0(Native Method)
	at java.net.SocketInputStream.socketRead(SocketInputStream.java:116)
	at java.net.SocketInputStream.read(SocketInputStream.java:170)
	at java.net.SocketInputStream.read(SocketInputStream.java:141)
	at sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:284)
	at sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:326)
	at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:178)
	- locked <0x000000076ee06830> (a java.io.InputStreamReader)
	at java.io.InputStreamReader.read(InputStreamReader.java:184)
	at java.io.BufferedReader.fill(BufferedReader.java:161)
	at java.io.BufferedReader.skip(BufferedReader.java:411)
	- locked <0x000000076ee06830> (a java.io.InputStreamReader)
	at de.digitec.d3.pricing.streaming.impl.StreamingChannelImpl.readMessage(StreamingChannelImpl.java:331)
	at de.digitec.d3.pricing.streaming.impl.Session.run(Session.java:116)
	- locked <0x000000076ee068c8> (a java.lang.Object)

   Locked ownable synchronizers:
	- None

"SiDispatcher_ReadLoop" #28 prio=5 os_prio=0 tid=0x000000001ed48800 nid=0x17fc waiting on
condition [0x00000000221de000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x000000076f04c960> (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 de.digitec.d3.pricing.streaming.impl.SessionManagerAbstractImpl.readMessage(SessionManagerAbstractImpl.java:49)
	at de.digitec.d3.pricing.streaming.impl.SiDispatcher.run(SiDispatcher.java:455)
	at java.lang.Thread.run(Thread.java:745)

   Locked ownable synchronizers:
	- None

"Thread-6" #27 daemon prio=5 os_prio=0 tid=0x000000001ed47800 nid=0x1674 runnable [0x000000002202f000]
   java.lang.Thread.State: RUNNABLE
	at java.net.DualStackPlainSocketImpl.accept0(Native Method)
	at java.net.DualStackPlainSocketImpl.socketAccept(DualStackPlainSocketImpl.java:131)
	at java.net.AbstractPlainSocketImpl.accept(AbstractPlainSocketImpl.java:409)
	at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:199)
	- locked <0x000000076ee102c8> (a java.net.SocksSocketImpl)
	at java.net.ServerSocket.implAccept(ServerSocket.java:545)
	at java.net.ServerSocket.accept(ServerSocket.java:513)
	at de.digitec.d3.pricing.streaming.impl.SocketAcceptor.accept(SocketAcceptor.java:152)
	at de.digitec.d3.pricing.streaming.impl.SocketAcceptor.run(SocketAcceptor.java:128)

   Locked ownable synchronizers:
	- None

"SessionManagerStreamingImpl_Timer" #26 daemon prio=5 os_prio=0 tid=0x000000001ed47000 nid=0x1bbc
in Object.wait() [0x0000000021d9f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at java.util.TimerThread.mainLoop(Timer.java:552)
	- locked <0x000000076ee18180> (a java.util.TaskQueue)
	at java.util.TimerThread.run(Timer.java:505)

   Locked ownable synchronizers:
	- None

"SiDispatcher_Timer" #25 prio=5 os_prio=0 tid=0x000000001ed46000 nid=0x12d8 in Object.wait()
[0x000000002030f000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at java.lang.Object.wait(Object.java:502)
	at java.util.TimerThread.mainLoop(Timer.java:526)
	- locked <0x000000076ee18350> (a java.util.TaskQueue)
	at java.util.TimerThread.run(Timer.java:505)

   Locked ownable synchronizers:
	- None

"RMI TCP Connection(2)-172.16.125.86" #24 daemon prio=5 os_prio=0 tid=0x000000001ed45800 nid=0x1704
runnable [0x00000000218ad000]
   java.lang.Thread.State: RUNNABLE
	at java.net.SocketInputStream.socketRead0(Native Method)
	at java.net.SocketInputStream.socketRead(SocketInputStream.java:116)
	at java.net.SocketInputStream.read(SocketInputStream.java:170)
	at java.net.SocketInputStream.read(SocketInputStream.java:141)
	at java.io.BufferedInputStream.fill(BufferedInputStream.java:246)
	at java.io.BufferedInputStream.read(BufferedInputStream.java:265)
	- locked <0x000000076ee12618> (a java.io.BufferedInputStream)
	at java.io.FilterInputStream.read(FilterInputStream.java:83)
	at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:550)
	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:826)
	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$256(TCPTransport.java:683)
	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler$$Lambda$4/1874923339.run(Unknown
Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:682)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:745)

   Locked ownable synchronizers:
	- <0x000000076ee12998> (a java.util.concurrent.ThreadPoolExecutor$Worker)

"JMX server connection timeout 23" #23 daemon prio=5 os_prio=0 tid=0x000000001ed44800 nid=0xd78
in Object.wait() [0x0000000021bbf000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at com.sun.jmx.remote.internal.ServerCommunicatorAdmin$Timeout.run(ServerCommunicatorAdmin.java:168)
	- locked <0x000000076ee184e0> (a [I)
	at java.lang.Thread.run(Thread.java:745)

   Locked ownable synchronizers:
	- None

"RMI Scheduler(0)" #22 daemon prio=5 os_prio=0 tid=0x000000001ed44000 nid=0x1aa0 waiting on
condition [0x00000000219ee000]
   java.lang.Thread.State: TIMED_WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x000000076ee18688> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
	at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093)
	at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809)
	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)

   Locked ownable synchronizers:
	- None

"RMI TCP Connection(1)-172.16.125.86" #21 daemon prio=5 os_prio=0 tid=0x000000001ed43000 nid=0x155c
runnable [0x000000001e85e000]
   java.lang.Thread.State: RUNNABLE
	at java.net.SocketInputStream.socketRead0(Native Method)
	at java.net.SocketInputStream.socketRead(SocketInputStream.java:116)
	at java.net.SocketInputStream.read(SocketInputStream.java:170)
	at java.net.SocketInputStream.read(SocketInputStream.java:141)
	at java.io.BufferedInputStream.fill(BufferedInputStream.java:246)
	at java.io.BufferedInputStream.read(BufferedInputStream.java:265)
	- locked <0x000000076ee22010> (a java.io.BufferedInputStream)
	at java.io.FilterInputStream.read(FilterInputStream.java:83)
	at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:550)
	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:826)
	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$256(TCPTransport.java:683)
	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler$$Lambda$4/1874923339.run(Unknown
Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:682)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:745)

   Locked ownable synchronizers:
	- <0x000000076ee12b18> (a java.util.concurrent.ThreadPoolExecutor$Worker)

"RMI TCP Accept-0" #20 daemon prio=5 os_prio=0 tid=0x000000001ed42000 nid=0x314 runnable [0x000000002057e000]
   java.lang.Thread.State: RUNNABLE
	at java.net.DualStackPlainSocketImpl.accept0(Native Method)
	at java.net.DualStackPlainSocketImpl.socketAccept(DualStackPlainSocketImpl.java:131)
	at java.net.AbstractPlainSocketImpl.accept(AbstractPlainSocketImpl.java:409)
	at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:199)
	- locked <0x000000076ee08ae8> (a java.net.SocksSocketImpl)
	at java.net.ServerSocket.implAccept(ServerSocket.java:545)
	at java.net.ServerSocket.accept(ServerSocket.java:513)
	at sun.management.jmxremote.LocalRMIServerSocketFactory$1.accept(LocalRMIServerSocketFactory.java:52)
	at sun.rmi.transport.tcp.TCPTransport$AcceptLoop.executeAcceptLoop(TCPTransport.java:400)
	at sun.rmi.transport.tcp.TCPTransport$AcceptLoop.run(TCPTransport.java:372)
	at java.lang.Thread.run(Thread.java:745)

   Locked ownable synchronizers:
	- None

"NioProcessor-2" #18 prio=5 os_prio=0 tid=0x000000001ecf2000 nid=0x5ec waiting on condition
[0x000000002040e000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x000000076ef8fd88> (a java.util.concurrent.locks.ReentrantLock$NonfairSync)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:836)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:870)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1199)
	at java.util.concurrent.locks.ReentrantLock$NonfairSync.lock(ReentrantLock.java:209)
	at java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:285)
	at org.apache.mina.filter.ssl.SslHandler.flushScheduledEvents(SslHandler.java:310)
	at org.apache.mina.filter.ssl.SslFilter.messageReceived(SslFilter.java:534)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:542)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1300(DefaultIoFilterChain.java:48)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:943)
	at org.apache.mina.proxy.filter.ProxyFilter.messageReceived(ProxyFilter.java:153)
	- locked <0x000000076ef8b1d8> (a org.apache.mina.proxy.handlers.socks.Socks4LogicHandler)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:542)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1300(DefaultIoFilterChain.java:48)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:943)
	at org.apache.mina.core.filterchain.IoFilterAdapter.messageReceived(IoFilterAdapter.java:109)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:542)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.fireMessageReceived(DefaultIoFilterChain.java:535)
	at org.apache.mina.core.polling.AbstractPollingIoProcessor.read(AbstractPollingIoProcessor.java:684)
	at org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:638)
	at org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:627)
	at org.apache.mina.core.polling.AbstractPollingIoProcessor.access$600(AbstractPollingIoProcessor.java:68)
	at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:1096)
	at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:745)

   Locked ownable synchronizers:
	- <0x000000076ee18cb8> (a java.util.concurrent.ThreadPoolExecutor$Worker)

"SiStreamServerServiceThread [ABFX]" #17 prio=5 os_prio=0 tid=0x000000001ece6800 nid=0x1b10
waiting on condition [0x00000000201ef000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
	at java.lang.Thread.sleep(Native Method)
	at de.digitec.d3.gateway.SubscriptionManager$SiStreamServerServiceThread.run(SubscriptionManager.java:540)

   Locked ownable synchronizers:
	- None

"pool-2-thread-1" #16 prio=5 os_prio=0 tid=0x000000001ecd8800 nid=0x1a38 waiting on condition
[0x000000002007e000]
   java.lang.Thread.State: TIMED_WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x000000076ee08f18> (a java.util.concurrent.SynchronousQueue$TransferStack)
	at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
	at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
	at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)
	at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:941)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1066)
	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)

   Locked ownable synchronizers:
	- None

"FixMessageProcessor(0)::ABFX" #15 daemon prio=5 os_prio=0 tid=0x000000001ecdb800 nid=0xf70
waiting for monitor entry [0x000000001fd5e000]
   java.lang.Thread.State: BLOCKED (on object monitor)
	at org.apache.mina.proxy.filter.ProxyFilter.writeData(ProxyFilter.java:208)
	- waiting to lock <0x000000076ef8b1d8> (a org.apache.mina.proxy.handlers.socks.Socks4LogicHandler)
	at org.apache.mina.proxy.filter.ProxyFilter.filterWrite(ProxyFilter.java:192)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.callPreviousFilterWrite(DefaultIoFilterChain.java:625)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1500(DefaultIoFilterChain.java:48)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.filterWrite(DefaultIoFilterChain.java:953)
	at org.apache.mina.filter.ssl.SslHandler.flushScheduledEvents(SslHandler.java:316)
	at org.apache.mina.filter.ssl.SslFilter.filterWrite(SslFilter.java:653)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.callPreviousFilterWrite(DefaultIoFilterChain.java:625)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1500(DefaultIoFilterChain.java:48)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.filterWrite(DefaultIoFilterChain.java:953)
	at org.apache.mina.filter.codec.ProtocolCodecFilter.filterWrite(ProtocolCodecFilter.java:321)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.callPreviousFilterWrite(DefaultIoFilterChain.java:625)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1500(DefaultIoFilterChain.java:48)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.filterWrite(DefaultIoFilterChain.java:953)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain$TailFilter.filterWrite(DefaultIoFilterChain.java:877)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.callPreviousFilterWrite(DefaultIoFilterChain.java:625)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.fireFilterWrite(DefaultIoFilterChain.java:618)
	at org.apache.mina.core.session.AbstractIoSession.write(AbstractIoSession.java:530)
	at org.apache.mina.core.session.AbstractIoSession.write(AbstractIoSession.java:474)
	at quickfix.mina.IoSessionResponder.send(IoSessionResponder.java:51)
	at quickfix.Session.send(Session.java:2534)
	at quickfix.Session.sendRaw(Session.java:2466)
	at quickfix.Session.send(Session.java:2519)
	at quickfix.Session.sendToTarget(Session.java:635)
	at de.digitec.d3.gateway.fix.FixApplication.sendMessageToTarget(FixApplication.java:529)
	at de.digitec.d3.gateway.fix.FixProducerHandle.subscribe(FixProducerHandle.java:52)
	- locked <0x000000076ef20a68> (a de.digitec.d3.gateway.fix.FixProducerHandle)
	at de.digitec.d3.gateway.fix.FixApplication.subscribe(FixApplication.java:134)
	at de.digitec.d3.gateway.fix.FixMessageProcessor.processMessage(FixMessageProcessor.java:288)
	at de.digitec.d3.gateway.fix.FixMessageProcessor.run(FixMessageProcessor.java:245)
	at de.digitec.d3.gateway.fix.FixApplication$MessageProcessorThread.run(FixApplication.java:878)

   Locked ownable synchronizers:
	- <0x000000076ef8fd88> (a java.util.concurrent.locks.ReentrantLock$NonfairSync)

"FixMessageProcessorHeartbeat::ABFX" #14 daemon prio=5 os_prio=0 tid=0x000000001ecd5800 nid=0xda8
waiting on condition [0x000000001f46f000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
	at java.lang.Thread.sleep(Native Method)
	at de.digitec.d3.gateway.fix.FixMessageProcessor$FixMessageProcessorHeartbeat.run(FixMessageProcessor.java:342)

   Locked ownable synchronizers:
	- None

"QFJ Message Processor" #13 daemon prio=5 os_prio=0 tid=0x000000001ecc0800 nid=0x1280 waiting
on condition [0x000000001f95f000]
   java.lang.Thread.State: TIMED_WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x000000076ee6f4d0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
	at java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467)
	at quickfix.mina.SingleThreadedEventHandlingStrategy.getMessage(SingleThreadedEventHandlingStrategy.java:99)
	at quickfix.mina.SingleThreadedEventHandlingStrategy.block(SingleThreadedEventHandlingStrategy.java:88)
	at quickfix.mina.SingleThreadedEventHandlingStrategy$1.run(SingleThreadedEventHandlingStrategy.java:129)
	at java.lang.Thread.run(Thread.java:745)

   Locked ownable synchronizers:
	- None

"QFJ Timer" #12 daemon prio=5 os_prio=0 tid=0x000000001ecc0000 nid=0x1718 waiting on condition
[0x000000001f7fe000]
   java.lang.Thread.State: TIMED_WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x000000076ef8c0c0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
	at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093)
	at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809)
	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)

   Locked ownable synchronizers:
	- None

"Monitor Ctrl-Break" #10 daemon prio=5 os_prio=0 tid=0x000000001da39800 nid=0x1414 runnable
[0x000000001e74f000]
   java.lang.Thread.State: RUNNABLE
	at java.net.DualStackPlainSocketImpl.accept0(Native Method)
	at java.net.DualStackPlainSocketImpl.socketAccept(DualStackPlainSocketImpl.java:131)
	at java.net.AbstractPlainSocketImpl.accept(AbstractPlainSocketImpl.java:409)
	at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:199)
	- locked <0x000000076ef35030> (a java.net.SocksSocketImpl)
	at java.net.ServerSocket.implAccept(ServerSocket.java:545)
	at java.net.ServerSocket.accept(ServerSocket.java:513)
	at com.intellij.rt.execution.application.AppMain$1.run(AppMain.java:90)
	at java.lang.Thread.run(Thread.java:745)

   Locked ownable synchronizers:
	- None

"Service Thread" #9 daemon prio=9 os_prio=0 tid=0x000000001d7a2000 nid=0x1910 runnable [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

   Locked ownable synchronizers:
	- None

"C1 CompilerThread2" #8 daemon prio=9 os_prio=2 tid=0x000000001d72b800 nid=0x1ab0 waiting
on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

   Locked ownable synchronizers:
	- None

"C2 CompilerThread1" #7 daemon prio=9 os_prio=2 tid=0x000000001d729800 nid=0x15bc waiting
on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

   Locked ownable synchronizers:
	- None

"C2 CompilerThread0" #6 daemon prio=9 os_prio=2 tid=0x000000001d724000 nid=0x18d4 waiting
on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

   Locked ownable synchronizers:
	- None

"Attach Listener" #5 daemon prio=5 os_prio=2 tid=0x000000001d721000 nid=0xae8 waiting on condition
[0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

   Locked ownable synchronizers:
	- None

"Signal Dispatcher" #4 daemon prio=9 os_prio=2 tid=0x000000001c0e8800 nid=0x15fc runnable
[0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

   Locked ownable synchronizers:
	- None

"Finalizer" #3 daemon prio=8 os_prio=1 tid=0x000000001c08a800 nid=0x1ab4 in Object.wait()
[0x000000001d71e000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143)
	- locked <0x000000076ef362f0> (a java.lang.ref.ReferenceQueue$Lock)
	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:164)
	at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:209)

   Locked ownable synchronizers:
	- None

"Reference Handler" #2 daemon prio=10 os_prio=2 tid=0x000000001c083800 nid=0x13e4 in Object.wait()
[0x000000001d53e000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at java.lang.Object.wait(Object.java:502)
	at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:157)
	- locked <0x000000076efa0798> (a java.lang.ref.Reference$Lock)

   Locked ownable synchronizers:
	- None

"SubscriptionManagerThread" #1 prio=5 os_prio=0 tid=0x000000000213a000 nid=0xacc waiting on
condition [0x00000000023fe000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
	at java.lang.Thread.sleep(Native Method)
	at de.digitec.d3.gateway.SubscriptionManager.run(SubscriptionManager.java:475)
	at de.digitec.d3.gateway.fix.abfx.AbfxApplication.main(AbfxApplication.java:137)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:497)
	at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144)

   Locked ownable synchronizers:
	- None

"VM Thread" os_prio=2 tid=0x000000001c07e000 nid=0x988 runnable 

"GC task thread#0 (ParallelGC)" os_prio=0 tid=0x000000000214f000 nid=0x880 runnable 

"GC task thread#1 (ParallelGC)" os_prio=0 tid=0x0000000002150800 nid=0x15a4 runnable 

"GC task thread#2 (ParallelGC)" os_prio=0 tid=0x0000000002152000 nid=0x1ac8 runnable 

"GC task thread#3 (ParallelGC)" os_prio=0 tid=0x0000000002153800 nid=0xa60 runnable 

"VM Periodic Task Thread" os_prio=2 tid=0x000000001d7b8000 nid=0x19f0 waiting on condition


JNI global references: 284


Found one Java-level deadlock:
=============================
"NioProcessor-2":
  waiting for ownable synchronizer 0x000000076ef8fd88, (a java.util.concurrent.locks.ReentrantLock$NonfairSync),
  which is held by "FixMessageProcessor(0)::ABFX"
"FixMessageProcessor(0)::ABFX":
  waiting to lock monitor 0x000000001ececdc8 (object 0x000000076ef8b1d8, a org.apache.mina.proxy.handlers.socks.Socks4LogicHandler),
  which is held by "NioProcessor-2"

Java stack information for the threads listed above:
===================================================
"NioProcessor-2":
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x000000076ef8fd88> (a java.util.concurrent.locks.ReentrantLock$NonfairSync)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:836)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:870)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1199)
	at java.util.concurrent.locks.ReentrantLock$NonfairSync.lock(ReentrantLock.java:209)
	at java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:285)
	at org.apache.mina.filter.ssl.SslHandler.flushScheduledEvents(SslHandler.java:310)
	at org.apache.mina.filter.ssl.SslFilter.messageReceived(SslFilter.java:534)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:542)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1300(DefaultIoFilterChain.java:48)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:943)
	at org.apache.mina.proxy.filter.ProxyFilter.messageReceived(ProxyFilter.java:153)
	- locked <0x000000076ef8b1d8> (a org.apache.mina.proxy.handlers.socks.Socks4LogicHandler)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:542)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1300(DefaultIoFilterChain.java:48)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:943)
	at org.apache.mina.core.filterchain.IoFilterAdapter.messageReceived(IoFilterAdapter.java:109)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:542)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.fireMessageReceived(DefaultIoFilterChain.java:535)
	at org.apache.mina.core.polling.AbstractPollingIoProcessor.read(AbstractPollingIoProcessor.java:684)
	at org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:638)
	at org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:627)
	at org.apache.mina.core.polling.AbstractPollingIoProcessor.access$600(AbstractPollingIoProcessor.java:68)
	at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:1096)
	at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:745)
"FixMessageProcessor(0)::ABFX":
	at org.apache.mina.proxy.filter.ProxyFilter.writeData(ProxyFilter.java:208)
	- waiting to lock <0x000000076ef8b1d8> (a org.apache.mina.proxy.handlers.socks.Socks4LogicHandler)
	at org.apache.mina.proxy.filter.ProxyFilter.filterWrite(ProxyFilter.java:192)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.callPreviousFilterWrite(DefaultIoFilterChain.java:625)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1500(DefaultIoFilterChain.java:48)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.filterWrite(DefaultIoFilterChain.java:953)
	at org.apache.mina.filter.ssl.SslHandler.flushScheduledEvents(SslHandler.java:316)
	at org.apache.mina.filter.ssl.SslFilter.filterWrite(SslFilter.java:653)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.callPreviousFilterWrite(DefaultIoFilterChain.java:625)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1500(DefaultIoFilterChain.java:48)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.filterWrite(DefaultIoFilterChain.java:953)
	at org.apache.mina.filter.codec.ProtocolCodecFilter.filterWrite(ProtocolCodecFilter.java:321)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.callPreviousFilterWrite(DefaultIoFilterChain.java:625)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1500(DefaultIoFilterChain.java:48)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.filterWrite(DefaultIoFilterChain.java:953)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain$TailFilter.filterWrite(DefaultIoFilterChain.java:877)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.callPreviousFilterWrite(DefaultIoFilterChain.java:625)
	at org.apache.mina.core.filterchain.DefaultIoFilterChain.fireFilterWrite(DefaultIoFilterChain.java:618)
	at org.apache.mina.core.session.AbstractIoSession.write(AbstractIoSession.java:530)
	at org.apache.mina.core.session.AbstractIoSession.write(AbstractIoSession.java:474)
	at quickfix.mina.IoSessionResponder.send(IoSessionResponder.java:51)
	at quickfix.Session.send(Session.java:2534)
	at quickfix.Session.sendRaw(Session.java:2466)
	at quickfix.Session.send(Session.java:2519)
	at quickfix.Session.sendToTarget(Session.java:635)
	at de.digitec.d3.gateway.fix.FixApplication.sendMessageToTarget(FixApplication.java:529)
	at de.digitec.d3.gateway.fix.FixProducerHandle.subscribe(FixProducerHandle.java:52)
	- locked <0x000000076ef20a68> (a de.digitec.d3.gateway.fix.FixProducerHandle)
	at de.digitec.d3.gateway.fix.FixApplication.subscribe(FixApplication.java:134)
	at de.digitec.d3.gateway.fix.FixMessageProcessor.processMessage(FixMessageProcessor.java:288)
	at de.digitec.d3.gateway.fix.FixMessageProcessor.run(FixMessageProcessor.java:245)
	at de.digitec.d3.gateway.fix.FixApplication$MessageProcessorThread.run(FixApplication.java:878)

Found 1 deadlock.


Mime
View raw message