Issue2280

classification
Title: Deadlock detected
Type: Severity: normal
Components: Versions: Jython 2.7
Milestone:
process
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: Nosy List: stefan.richthofer, zyasoft
Priority: urgent Keywords:

Created on 2015-03-05.19:40:05 by zyasoft, last changed 2015-03-17.13:50:58 by zyasoft.

Messages
msg9585 (view) Author: Jim Baker (zyasoft) Date: 2015-03-05.19:40:03
Full thread dump Java HotSpot(TM) 64-Bit Server VM (23.21-b01 mixed mode):

"SIGINT handler" daemon prio=5 tid=0x00007fa84fc5b800 nid=0x5303 waiting for monitor entry [0x000000011a791000]
   java.lang.Thread.State: BLOCKED (on object monitor)
	at java.lang.Shutdown.exit(Shutdown.java:212)
	- waiting to lock <0x00000007e041fba8> (a java.lang.Class for java.lang.Shutdown)
	at java.lang.Terminator$1.handle(Terminator.java:52)
	at sun.misc.Signal$1.run(Signal.java:212)
	at java.lang.Thread.run(Thread.java:722)

"SIGINT handler" daemon prio=5 tid=0x00007fa84c847000 nid=0x5207 waiting for monitor entry [0x000000011b06f000]
   java.lang.Thread.State: BLOCKED (on object monitor)
	at java.lang.Shutdown.exit(Shutdown.java:212)
	- waiting to lock <0x00000007e041fba8> (a java.lang.Class for java.lang.Shutdown)
	at java.lang.Terminator$1.handle(Terminator.java:52)
	at sun.misc.Signal$1.run(Signal.java:212)
	at java.lang.Thread.run(Thread.java:722)

"SIGINT handler" daemon prio=5 tid=0x00007fa84d091800 nid=0x4f0b waiting for monitor entry [0x000000011af6c000]
   java.lang.Thread.State: BLOCKED (on object monitor)
	at java.lang.Shutdown.exit(Shutdown.java:212)
	- waiting to lock <0x00000007e041fba8> (a java.lang.Class for java.lang.Shutdown)
	at java.lang.Terminator$1.handle(Terminator.java:52)
	at sun.misc.Signal$1.run(Signal.java:212)
	at java.lang.Thread.run(Thread.java:722)

"Jython Shutdown Closer" prio=5 tid=0x00007fa84fb67000 nid=0x4507 waiting for monitor entry [0x000000011bab6000]
   java.lang.Thread.State: BLOCKED (on object monitor)
	at org.python.modules._io.Closer.call(Closer.java:58)
	- waiting to lock <0x00000007fdd48868> (a org.python.modules._io.Closer)
	at org.python.modules._io.Closer.call(Closer.java:27)
	at org.python.core.PySystemState$PySystemStateCloser.runClosers(PySystemState.java:1619)
	- locked <0x00000007e0793a70> (a org.python.core.PySystemState$PySystemStateCloser)
	at org.python.core.PySystemState$PySystemStateCloser.access$700(PySystemState.java:1549)
	at org.python.core.PySystemState$PySystemStateCloser$ShutdownCloser.run(PySystemState.java:1643)
	- locked <0x00000007e07d5f80> (a org.python.core.PySystemState$PySystemStateCloser$ShutdownCloser)
	at java.lang.Thread.run(Thread.java:722)

"SIGINT handler" daemon prio=5 tid=0x00007fa84b0cb800 nid=0x4e07 in Object.wait() [0x000000011ac73000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x00000007e07d5ed8> (a java.lang.Thread)
	at java.lang.Thread.join(Thread.java:1258)
	- locked <0x00000007e07d5ed8> (a java.lang.Thread)
	at java.lang.Thread.join(Thread.java:1332)
	at java.lang.ApplicationShutdownHooks.runHooks(ApplicationShutdownHooks.java:106)
	at java.lang.ApplicationShutdownHooks$1.run(ApplicationShutdownHooks.java:46)
	at java.lang.Shutdown.runHooks(Shutdown.java:123)
	at java.lang.Shutdown.sequence(Shutdown.java:167)
	at java.lang.Shutdown.exit(Shutdown.java:212)
	- locked <0x00000007e041fba8> (a java.lang.Class for java.lang.Shutdown)
	at java.lang.Terminator$1.handle(Terminator.java:52)
	at sun.misc.Signal$1.run(Signal.java:212)
	at java.lang.Thread.run(Thread.java:722)

"Jython-Netty-Client-9" daemon prio=5 tid=0x00007fa84fb59800 nid=0x4d03 runnable [0x000000011b832000]
   java.lang.Thread.State: RUNNABLE
	at sun.nio.ch.KQueueArrayWrapper.kevent0(Native Method)
	at sun.nio.ch.KQueueArrayWrapper.poll(KQueueArrayWrapper.java:159)
	at sun.nio.ch.KQueueSelectorImpl.doSelect(KQueueSelectorImpl.java:103)
	at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:87)
	- locked <0x00000007e0b71040> (a io.netty.channel.nio.SelectedSelectionKeySet)
	- locked <0x00000007e0b710f8> (a java.util.Collections$UnmodifiableSet)
	- locked <0x00000007e0b70f48> (a sun.nio.ch.KQueueSelectorImpl)
	at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:98)
	at io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:622)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:310)
	at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:111)
	at java.lang.Thread.run(Thread.java:722)

"Jython-Netty-Client-8" daemon prio=5 tid=0x00007fa84c9d8800 nid=0x4c03 runnable [0x000000011b72f000]
   java.lang.Thread.State: RUNNABLE
	at sun.nio.ch.KQueueArrayWrapper.kevent0(Native Method)
	at sun.nio.ch.KQueueArrayWrapper.poll(KQueueArrayWrapper.java:159)
	at sun.nio.ch.KQueueSelectorImpl.doSelect(KQueueSelectorImpl.java:103)
	at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:87)
	- locked <0x00000007e0b77858> (a io.netty.channel.nio.SelectedSelectionKeySet)
	- locked <0x00000007e0b78920> (a java.util.Collections$UnmodifiableSet)
	- locked <0x00000007e0b77760> (a sun.nio.ch.KQueueSelectorImpl)
	at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:98)
	at io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:622)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:310)
	at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:111)
	at java.lang.Thread.run(Thread.java:722)

"Jython-Netty-Client-7" daemon prio=5 tid=0x00007fa84c97e000 nid=0x4b03 runnable [0x000000011b62c000]
   java.lang.Thread.State: RUNNABLE
	at sun.nio.ch.KQueueArrayWrapper.kevent0(Native Method)
	at sun.nio.ch.KQueueArrayWrapper.poll(KQueueArrayWrapper.java:159)
	at sun.nio.ch.KQueueSelectorImpl.doSelect(KQueueSelectorImpl.java:103)
	at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:87)
	- locked <0x00000007e0b78f28> (a io.netty.channel.nio.SelectedSelectionKeySet)
	- locked <0x00000007e0b78fe0> (a java.util.Collections$UnmodifiableSet)
	- locked <0x00000007e0b78e30> (a sun.nio.ch.KQueueSelectorImpl)
	at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:98)
	at io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:622)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:310)
	at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:111)
	at java.lang.Thread.run(Thread.java:722)

"Jython-Netty-Client-6" daemon prio=5 tid=0x00007fa84d031000 nid=0x3307 runnable [0x000000011b41f000]
   java.lang.Thread.State: RUNNABLE
	at sun.nio.ch.KQueueArrayWrapper.kevent0(Native Method)
	at sun.nio.ch.KQueueArrayWrapper.poll(KQueueArrayWrapper.java:159)
	at sun.nio.ch.KQueueSelectorImpl.doSelect(KQueueSelectorImpl.java:103)
	at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:87)
	- locked <0x00000007e0b795e8> (a io.netty.channel.nio.SelectedSelectionKeySet)
	- locked <0x00000007e0b796a0> (a java.util.Collections$UnmodifiableSet)
	- locked <0x00000007e0b794f0> (a sun.nio.ch.KQueueSelectorImpl)
	at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:98)
	at io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:622)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:310)
	at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:111)
	at java.lang.Thread.run(Thread.java:722)

"Jython-Netty-Client-5" daemon prio=5 tid=0x00007fa84c868000 nid=0x2f07 runnable [0x000000011b31c000]
   java.lang.Thread.State: RUNNABLE
	at sun.nio.ch.KQueueArrayWrapper.kevent0(Native Method)
	at sun.nio.ch.KQueueArrayWrapper.poll(KQueueArrayWrapper.java:159)
	at sun.nio.ch.KQueueSelectorImpl.doSelect(KQueueSelectorImpl.java:103)
	at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:87)
	- locked <0x00000007e0b82cc0> (a io.netty.channel.nio.SelectedSelectionKeySet)
	- locked <0x00000007e0b83d88> (a java.util.Collections$UnmodifiableSet)
	- locked <0x00000007e0b82bc8> (a sun.nio.ch.KQueueSelectorImpl)
	at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:98)
	at io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:622)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:310)
	at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:111)
	at java.lang.Thread.run(Thread.java:722)

"Jython-Netty-Client-4" daemon prio=5 tid=0x00007fa84d02f000 nid=0x2e07 runnable [0x000000011b219000]
   java.lang.Thread.State: RUNNABLE
	at sun.nio.ch.KQueueArrayWrapper.kevent0(Native Method)
	at sun.nio.ch.KQueueArrayWrapper.poll(KQueueArrayWrapper.java:159)
	at sun.nio.ch.KQueueSelectorImpl.doSelect(KQueueSelectorImpl.java:103)
	at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:87)
	- locked <0x00000007e0b84390> (a io.netty.channel.nio.SelectedSelectionKeySet)
	- locked <0x00000007e0b84448> (a java.util.Collections$UnmodifiableSet)
	- locked <0x00000007e0b84298> (a sun.nio.ch.KQueueSelectorImpl)
	at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:98)
	at io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:622)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:310)
	at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:111)
	at java.lang.Thread.run(Thread.java:722)

"Jython-Netty-Client-3" daemon prio=5 tid=0x00007fa84b1ba800 nid=0x2b07 runnable [0x0000000118260000]
   java.lang.Thread.State: RUNNABLE
	at sun.nio.ch.KQueueArrayWrapper.kevent0(Native Method)
	at sun.nio.ch.KQueueArrayWrapper.poll(KQueueArrayWrapper.java:159)
	at sun.nio.ch.KQueueSelectorImpl.doSelect(KQueueSelectorImpl.java:103)
	at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:87)
	- locked <0x00000007e0b8ba40> (a io.netty.channel.nio.SelectedSelectionKeySet)
	- locked <0x00000007e0b8cb08> (a java.util.Collections$UnmodifiableSet)
	- locked <0x00000007e0b8b948> (a sun.nio.ch.KQueueSelectorImpl)
	at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:98)
	at io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:622)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:310)
	at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:111)
	at java.lang.Thread.run(Thread.java:722)

"Jython-Netty-Client-2" daemon prio=5 tid=0x00007fa84c861800 nid=0x2c0b runnable [0x000000011aaf0000]
   java.lang.Thread.State: RUNNABLE
	at sun.nio.ch.KQueueArrayWrapper.kevent0(Native Method)
	at sun.nio.ch.KQueueArrayWrapper.poll(KQueueArrayWrapper.java:159)
	at sun.nio.ch.KQueueSelectorImpl.doSelect(KQueueSelectorImpl.java:103)
	at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:87)
	- locked <0x00000007e0b8d110> (a io.netty.channel.nio.SelectedSelectionKeySet)
	- locked <0x00000007e0b8d1c8> (a java.util.Collections$UnmodifiableSet)
	- locked <0x00000007e0b8d018> (a sun.nio.ch.KQueueSelectorImpl)
	at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:98)
	at io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:622)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:310)
	at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:111)
	at java.lang.Thread.run(Thread.java:722)

"Jython-Netty-Client-1" daemon prio=5 tid=0x00007fa84fb57000 nid=0x4a03 runnable [0x000000011a8d9000]
   java.lang.Thread.State: RUNNABLE
	at sun.nio.ch.KQueueArrayWrapper.kevent0(Native Method)
	at sun.nio.ch.KQueueArrayWrapper.poll(KQueueArrayWrapper.java:159)
	at sun.nio.ch.KQueueSelectorImpl.doSelect(KQueueSelectorImpl.java:103)
	at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:87)
	- locked <0x00000007e0b94b40> (a io.netty.channel.nio.SelectedSelectionKeySet)
	- locked <0x00000007e0bf7328> (a java.util.Collections$UnmodifiableSet)
	- locked <0x00000007e0b94a48> (a sun.nio.ch.KQueueSelectorImpl)
	at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:98)
	at io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:622)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:310)
	at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:111)
	at java.lang.Thread.run(Thread.java:722)

"Jython-Netty-Client-0" daemon prio=5 tid=0x00007fa84f019800 nid=0x4903 runnable [0x000000011b529000]
   java.lang.Thread.State: RUNNABLE
	at sun.nio.ch.KQueueArrayWrapper.kevent0(Native Method)
	at sun.nio.ch.KQueueArrayWrapper.poll(KQueueArrayWrapper.java:159)
	at sun.nio.ch.KQueueSelectorImpl.doSelect(KQueueSelectorImpl.java:103)
	at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:87)
	- locked <0x00000007e0bf7bc8> (a io.netty.channel.nio.SelectedSelectionKeySet)
	- locked <0x00000007e0bf8c90> (a java.util.Collections$UnmodifiableSet)
	- locked <0x00000007e0bf7ad0> (a sun.nio.ch.KQueueSelectorImpl)
	at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:98)
	at io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:622)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:310)
	at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:111)
	at java.lang.Thread.run(Thread.java:722)

"weakref reaper" daemon prio=5 tid=0x00007fa84b96a800 nid=0x4203 in Object.wait() [0x000000011a21c000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x00000007e10a8b78> (a java.lang.ref.ReferenceQueue$Lock)
	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:135)
	- locked <0x00000007e10a8b78> (a java.lang.ref.ReferenceQueue$Lock)
	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:151)
	at org.python.modules._weakref.GlobalRef$RefReaper.collect(GlobalRef.java:353)
	at org.python.modules._weakref.GlobalRef$RefReaper.run(GlobalRef.java:371)
	at java.lang.Thread.run(Thread.java:722)

"NonBlockingInputStreamThread" daemon prio=5 tid=0x00007fa84b920000 nid=0x4103 in Object.wait() [0x000000011a68e000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x00000007e0735b78> (a jline.internal.NonBlockingInputStream)
	at jline.internal.NonBlockingInputStream.run(NonBlockingInputStream.java:278)
	- locked <0x00000007e0735b78> (a jline.internal.NonBlockingInputStream)
	at java.lang.Thread.run(Thread.java:722)

"Service Thread" daemon prio=5 tid=0x00007fa84d032800 nid=0x3e03 runnable [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"C2 CompilerThread1" daemon prio=5 tid=0x00007fa84d02e800 nid=0x3d03 waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"C2 CompilerThread0" daemon prio=5 tid=0x00007fa84b84b000 nid=0x3b1b waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Signal Dispatcher" daemon prio=5 tid=0x00007fa84b82e000 nid=0x3017 waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Finalizer" daemon prio=5 tid=0x00007fa84b828800 nid=0x2a03 waiting for monitor entry [0x0000000118117000]
   java.lang.Thread.State: BLOCKED (on object monitor)
	at org.python.core.PySystemState$PySystemStateCloser.unregisterCloser(PySystemState.java:1578)
	- waiting to lock <0x00000007e0793a70> (a org.python.core.PySystemState$PySystemStateCloser)
	at org.python.core.PySystemState$PySystemStateCloser.access$200(PySystemState.java:1549)
	at org.python.core.PySystemState.unregisterCloser(PySystemState.java:1540)
	at org.python.modules._io.Closer.dismiss(Closer.java:47)
	- locked <0x00000007fdd48868> (a org.python.modules._io.Closer)
	at org.python.modules._io.PyIOBase.__del_builtin__(PyIOBase.java:736)
	at org.python.core.finalization.FinalizeTrigger.runFinalizer(FinalizeTrigger.java:92)
	at org.python.core.finalization.FinalizeTrigger.performFinalization(FinalizeTrigger.java:165)
	at org.python.core.finalization.FinalizeTrigger.finalize(FinalizeTrigger.java:204)
	at java.lang.ref.Finalizer.invokeFinalizeMethod(Native Method)
	at java.lang.ref.Finalizer.runFinalizer(Finalizer.java:101)
	at java.lang.ref.Finalizer.access$100(Finalizer.java:32)
	at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:190)

"Reference Handler" daemon prio=5 tid=0x00007fa84b827800 nid=0x2903 in Object.wait() [0x0000000118014000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x00000007e06cb280> (a java.lang.ref.Reference$Lock)
	at java.lang.Object.wait(Object.java:503)
	at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:133)
	- locked <0x00000007e06cb280> (a java.lang.ref.Reference$Lock)

"MainThread" prio=5 tid=0x00007fa84d000000 nid=0x1007 waiting for monitor entry [0x0000000110d11000]
   java.lang.Thread.State: BLOCKED (on object monitor)
	at org.python.core.PySystemState$PySystemStateCloser.registerCloser(PySystemState.java:1572)
	- waiting to lock <0x00000007e0793a70> (a org.python.core.PySystemState$PySystemStateCloser)
	at org.python.core.PySystemState$PySystemStateCloser.access$100(PySystemState.java:1549)
	at org.python.core.PySystemState.registerCloser(PySystemState.java:1536)
	at org.python.modules._io.Closer.<init>(Closer.java:38)
	at org.python.modules._io.PyIOBase.<init>(PyIOBase.java:59)
	at org.python.modules._io.PyIOBaseDerived.<init>(PyIOBaseDerived.java:51)
	at org.python.modules._io.PyIOBase._IOBase___new__(PyIOBase.java:83)
	at org.python.modules._io.PyIOBase$exposed___new__.new_impl(Unknown Source)
	at org.python.core.PyType.invokeNew(PyType.java:482)
	at org.python.core.PyType.type___call__(PyType.java:1678)
	at org.python.core.PyType$type___call___exposer.__call__(Unknown Source)
	at org.python.core.PyTypeDerived.__call__(PyTypeDerived.java:1003)
	at org.python.core.PyObject._callextra(PyObject.java:601)
	at requests.packages.urllib3.response$py.from_httplib$18(/private/var/folders/kk/yrwpx1_x7ll3mn4mvqym2lv40000gn/T/pip_build_jbaker/requests/requests/packages/urllib3/response.py:304)
	at requests.packages.urllib3.response$py.call_function(/private/var/folders/kk/yrwpx1_x7ll3mn4mvqym2lv40000gn/T/pip_build_jbaker/requests/requests/packages/urllib3/response.py)
	at org.python.core.PyTableCode.call(PyTableCode.java:167)
	at org.python.core.PyBaseCode.call(PyBaseCode.java:307)
	at org.python.core.PyBaseCode.call(PyBaseCode.java:198)
	at org.python.core.PyFunction.__call__(PyFunction.java:482)
	at org.python.core.PyMethod.instancemethod___call__(PyMethod.java:237)
	at org.python.core.PyMethod.__call__(PyMethod.java:228)
	at org.python.core.PyMethod.__call__(PyMethod.java:223)
	at org.python.core.PyObject._callextra(PyObject.java:601)
	at requests.packages.urllib3.connectionpool$py.urlopen$19(/private/var/folders/kk/yrwpx1_x7ll3mn4mvqym2lv40000gn/T/pip_build_jbaker/requests/requests/packages/urllib3/connectionpool.py:650)
	at requests.packages.urllib3.connectionpool$py.call_function(/private/var/folders/kk/yrwpx1_x7ll3mn4mvqym2lv40000gn/T/pip_build_jbaker/requests/requests/packages/urllib3/connectionpool.py)
	at org.python.core.PyTableCode.call(PyTableCode.java:167)
	at org.python.core.PyBaseCode.call(PyBaseCode.java:307)
	at org.python.core.PyBaseCode.call(PyBaseCode.java:198)
	at org.python.core.PyFunction.__call__(PyFunction.java:482)
	at org.python.core.PyMethod.instancemethod___call__(PyMethod.java:237)
	at org.python.core.PyMethod.__call__(PyMethod.java:228)
	at requests.adapters$py.send$19(/private/var/folders/kk/yrwpx1_x7ll3mn4mvqym2lv40000gn/T/pip_build_jbaker/requests/requests/adapters.py:437)
	at requests.adapters$py.call_function(/private/var/folders/kk/yrwpx1_x7ll3mn4mvqym2lv40000gn/T/pip_build_jbaker/requests/requests/adapters.py)
	at org.python.core.PyTableCode.call(PyTableCode.java:167)
	at org.python.core.PyBaseCode.call(PyBaseCode.java:307)
	at org.python.core.PyBaseCode.call(PyBaseCode.java:198)
	at org.python.core.PyFunction.__call__(PyFunction.java:482)
	at org.python.core.PyMethod.instancemethod___call__(PyMethod.java:237)
	at org.python.core.PyMethod.__call__(PyMethod.java:228)
	at org.python.core.PyMethod.__call__(PyMethod.java:223)
	at org.python.core.PyObject._callextra(PyObject.java:601)
	at requests.sessions$py.send$21(/private/var/folders/kk/yrwpx1_x7ll3mn4mvqym2lv40000gn/T/pip_build_jbaker/requests/requests/sessions.py:612)
	at requests.sessions$py.call_function(/private/var/folders/kk/yrwpx1_x7ll3mn4mvqym2lv40000gn/T/pip_build_jbaker/requests/requests/sessions.py)
	at org.python.core.PyTableCode.call(PyTableCode.java:167)
	at org.python.core.PyBaseCode.call(PyBaseCode.java:307)
	at org.python.core.PyBaseCode.call(PyBaseCode.java:198)
	at org.python.core.PyFunction.__call__(PyFunction.java:482)
	at org.python.core.PyMethod.instancemethod___call__(PyMethod.java:237)
	at org.python.core.PyMethod.__call__(PyMethod.java:228)
	at org.python.core.PyMethod.__call__(PyMethod.java:223)
	at org.python.core.PyObject._callextra(PyObject.java:601)
	at requests.sessions$py.request$13(/private/var/folders/kk/yrwpx1_x7ll3mn4mvqym2lv40000gn/T/pip_build_jbaker/requests/requests/sessions.py:463)
	at requests.sessions$py.call_function(/private/var/folders/kk/yrwpx1_x7ll3mn4mvqym2lv40000gn/T/pip_build_jbaker/requests/requests/sessions.py)
	at org.python.core.PyTableCode.call(PyTableCode.java:167)
	at org.python.core.PyBaseCode.call(PyBaseCode.java:307)
	at org.python.core.PyBaseCode.call(PyBaseCode.java:198)
	at org.python.core.PyFunction.__call__(PyFunction.java:482)
	at org.python.core.PyMethod.instancemethod___call__(PyMethod.java:237)
	at org.python.core.PyMethod.__call__(PyMethod.java:228)
	at org.python.core.PyMethod.__call__(PyMethod.java:223)
	at org.python.core.PyObject._callextra(PyObject.java:601)
	at requests.api$py.request$1(/private/var/folders/kk/yrwpx1_x7ll3mn4mvqym2lv40000gn/T/pip_build_jbaker/requests/requests/api.py:54)
	at requests.api$py.call_function(/private/var/folders/kk/yrwpx1_x7ll3mn4mvqym2lv40000gn/T/pip_build_jbaker/requests/requests/api.py)
	at org.python.core.PyTableCode.call(PyTableCode.java:167)
	at org.python.core.PyBaseCode.call(PyBaseCode.java:307)
	at org.python.core.PyFunction.function___call__(PyFunction.java:471)
	at org.python.core.PyFunction.__call__(PyFunction.java:466)
	at org.python.core.PyFunction.__call__(PyFunction.java:461)
	at org.python.core.PyObject._callextra(PyObject.java:601)
	at requests.api$py.get$2(/private/var/folders/kk/yrwpx1_x7ll3mn4mvqym2lv40000gn/T/pip_build_jbaker/requests/requests/api.py:65)
	at requests.api$py.call_function(/private/var/folders/kk/yrwpx1_x7ll3mn4mvqym2lv40000gn/T/pip_build_jbaker/requests/requests/api.py)
	at org.python.core.PyTableCode.call(PyTableCode.java:167)
	at org.python.core.PyBaseCode.call(PyBaseCode.java:307)
	at org.python.core.PyFunction.function___call__(PyFunction.java:471)
	at org.python.core.PyFunction.__call__(PyFunction.java:466)
	at org.python.pycode._pyx2.f$0(testssl.py:52)
	at org.python.pycode._pyx2.call_function(testssl.py)
	at org.python.core.PyTableCode.call(PyTableCode.java:167)
	at org.python.core.PyCode.call(PyCode.java:18)
	at org.python.core.Py.runCode(Py.java:1374)
	at org.python.util.PythonInterpreter.execfile(PythonInterpreter.java:299)
	at org.python.util.jython.run(jython.java:367)
	at org.python.util.jython.main(jython.java:142)

"VM Thread" prio=5 tid=0x00007fa84c807800 nid=0x2803 runnable

"GC task thread#0 (ParallelGC)" prio=5 tid=0x00007fa84d800000 nid=0x10f runnable

"GC task thread#1 (ParallelGC)" prio=5 tid=0x00007fa84d001800 nid=0x1907 runnable

"GC task thread#2 (ParallelGC)" prio=5 tid=0x00007fa84e000000 nid=0x1807 runnable

"GC task thread#3 (ParallelGC)" prio=5 tid=0x00007fa84d002000 nid=0x2407 runnable

"GC task thread#4 (ParallelGC)" prio=5 tid=0x00007fa84d003000 nid=0x2313 runnable

"GC task thread#5 (ParallelGC)" prio=5 tid=0x00007fa84d003800 nid=0x2503 runnable

"GC task thread#6 (ParallelGC)" prio=5 tid=0x00007fa84d004000 nid=0x2603 runnable

"GC task thread#7 (ParallelGC)" prio=5 tid=0x00007fa84d004800 nid=0x2703 runnable

"VM Periodic Task Thread" prio=5 tid=0x00007fa84e80e000 nid=0x3f03 waiting on condition

JNI global references: 251


Found one Java-level deadlock:
=============================
"Jython Shutdown Closer":
  waiting to lock monitor 0x00007fa84d02dec0 (object 0x00000007fdd48868, a org.python.modules._io.Closer),
  which is held by "Finalizer"
"Finalizer":
  waiting to lock monitor 0x00007fa84d02aed8 (object 0x00000007e0793a70, a org.python.core.PySystemState$PySystemStateCloser),
  which is held by "Jython Shutdown Closer"

Java stack information for the threads listed above:
===================================================
"Jython Shutdown Closer":
	at org.python.modules._io.Closer.call(Closer.java:58)
	- waiting to lock <0x00000007fdd48868> (a org.python.modules._io.Closer)
	at org.python.modules._io.Closer.call(Closer.java:27)
	at org.python.core.PySystemState$PySystemStateCloser.runClosers(PySystemState.java:1619)
	- locked <0x00000007e0793a70> (a org.python.core.PySystemState$PySystemStateCloser)
	at org.python.core.PySystemState$PySystemStateCloser.access$700(PySystemState.java:1549)
	at org.python.core.PySystemState$PySystemStateCloser$ShutdownCloser.run(PySystemState.java:1643)
	- locked <0x00000007e07d5f80> (a org.python.core.PySystemState$PySystemStateCloser$ShutdownCloser)
	at java.lang.Thread.run(Thread.java:722)
"Finalizer":
	at org.python.core.PySystemState$PySystemStateCloser.unregisterCloser(PySystemState.java:1578)
	- waiting to lock <0x00000007e0793a70> (a org.python.core.PySystemState$PySystemStateCloser)
	at org.python.core.PySystemState$PySystemStateCloser.access$200(PySystemState.java:1549)
	at org.python.core.PySystemState.unregisterCloser(PySystemState.java:1540)
	at org.python.modules._io.Closer.dismiss(Closer.java:47)
	- locked <0x00000007fdd48868> (a org.python.modules._io.Closer)
	at org.python.modules._io.PyIOBase.__del_builtin__(PyIOBase.java:736)
	at org.python.core.finalization.FinalizeTrigger.runFinalizer(FinalizeTrigger.java:92)
	at org.python.core.finalization.FinalizeTrigger.performFinalization(FinalizeTrigger.java:165)
	at org.python.core.finalization.FinalizeTrigger.finalize(FinalizeTrigger.java:204)
	at java.lang.ref.Finalizer.invokeFinalizeMethod(Native Method)
	at java.lang.ref.Finalizer.runFinalizer(Finalizer.java:101)
	at java.lang.ref.Finalizer.access$100(Finalizer.java:32)
	at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:190)

Found 1 deadlock.

Heap
 PSYoungGen      total 145216K, used 21279K [0x00000007f5560000, 0x00000007ffb00000, 0x0000000800000000)
  eden space 132864K, 6% used [0x00000007f5560000,0x00000007f5e23c30,0x00000007fd720000)
  from space 12352K, 99% used [0x00000007fdd40000,0x00000007fe944230,0x00000007fe950000)
  to   space 18112K, 0% used [0x00000007fe950000,0x00000007fe950000,0x00000007ffb00000)
 ParOldGen       total 54528K, used 31702K [0x00000007e0000000, 0x00000007e3540000, 0x00000007f5560000)
  object space 54528K, 58% used [0x00000007e0000000,0x00000007e1ef58d8,0x00000007e3540000)
 PSPermGen       total 77312K, used 38705K [0x00000007dae00000, 0x00000007df980000, 0x00000007e0000000)
  object space 77312K, 50% used [0x00000007dae00000,0x00000007dd3cc608,0x00000007df980000)
msg9586 (view) Author: Jim Baker (zyasoft) Date: 2015-03-05.19:41:55
Note that this was seen in an attempt to upgrade to Netty 4.0.26, but I believe it is still valid for Jython.
msg9588 (view) Author: Stefan Richthofer (stefan.richthofer) Date: 2015-03-07.13:09:11
This looks like a classical deadlock, so I would suggest a classical solution:
Assure that locks are always acquired in the same order by all participants.
However, letting runFinalizer() in FinalizeTrigger acquire the monitor of
PySystemStateCloser.class should fix it and assure that Finalizers cannot
deadlock with PySystemStateCloser in general.
msg9589 (view) Author: Jim Baker (zyasoft) Date: 2015-03-07.14:52:08
The solution of having runFinalizer() acquire the monitor of
PySystemStateCloser.class makes the most sense. Note that PySystemStateCloser runs closers in a specific order at shutdown, so we cannot simply use the finalizer mechanism to replace it.
msg9600 (view) Author: Jim Baker (zyasoft) Date: 2015-03-09.22:44:08
Block RC1
msg9602 (view) Author: Jim Baker (zyasoft) Date: 2015-03-10.01:22:31
Fixed as of https://hg.python.org/jython/rev/f79dc13778f9
History
Date User Action Args
2015-03-17 13:50:58zyasoftsetstatus: pending -> closed
2015-03-10 01:22:32zyasoftsetstatus: open -> pending
resolution: fixed
messages: + msg9602
2015-03-09 22:44:08zyasoftsetpriority: urgent
messages: + msg9600
2015-03-07 14:52:08zyasoftsetmessages: + msg9589
2015-03-07 13:09:12stefan.richthofersetnosy: + stefan.richthofer
messages: + msg9588
2015-03-05 19:41:56zyasoftsetmessages: + msg9586
2015-03-05 19:40:05zyasoftcreate