Skip to content

Instantly share code, notes, and snippets.

@bdionne
Created October 18, 2016 10:49
Show Gist options
  • Save bdionne/c0bb93df41c51123b7f4e693750865cf to your computer and use it in GitHub Desktop.
Save bdionne/c0bb93df41c51123b7f4e693750865cf to your computer and use it in GitHub Desktop.
Java-level deadlock detected
This means that some threads are blocked waiting to enter a synchronization block or
waiting to reenter a synchronization block after an Object.wait() call, where each thread
owns one monitor while trying to obtain another monitor already held by another thread.
Deadlock:
AWT-EventQueue-0 is waiting to lock java.util.concurrent.locks.ReentrantReadWriteLock$NonfairSync@199666c5 which is held by Thread-4
Thread-4 is waiting to lock java.awt.Component$AWTTreeLock@60803f48 which is held by AWT-EventQueue-0
Thread stacks
AWT-EventQueue-0 [WAITING]
sun.misc.Unsafe.park(native method)
java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:836)
java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireShared(AbstractQueuedSynchronizer.java:967)
java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireShared(AbstractQueuedSynchronizer.java:1283)
java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock.lock(ReentrantReadWriteLock.java:727)
uk.ac.manchester.cs.owl.owlapi.concurrent.ConcurrentOWLOntologyImpl.getOntologyID(ConcurrentOWLOntologyImpl.java:123)
org.protege.editor.owl.ui.renderer.OWLOntologyCellRenderer.getOntologyLabelText(OWLOntologyCellRenderer.java:51)
org.protege.editor.owl.ui.renderer.OWLOntologyCellRenderer.getListCellRendererComponent(OWLOntologyCellRenderer.java:40)
com.apple.laf.AquaComboBoxButton.doRendererPaint(AquaComboBoxButton.java:167)
com.apple.laf.AquaComboBoxButton.paintComponent(AquaComboBoxButton.java:159)
javax.swing.JComponent.paint(JComponent.java:1056)
javax.swing.JComponent.paintChildren(JComponent.java:889)
javax.swing.JComponent.paint(JComponent.java:1065)
javax.swing.JComponent.paintChildren(JComponent.java:889)
javax.swing.JComponent.paint(JComponent.java:1065)
javax.swing.JComponent.paintToOffscreen(JComponent.java:5210)
javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1579)
javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1502)
javax.swing.RepaintManager.paint(RepaintManager.java:1272)
javax.swing.JComponent._paintImmediately(JComponent.java:5158)
javax.swing.JComponent.paintImmediately(JComponent.java:4969)
javax.swing.RepaintManager$4.run(RepaintManager.java:831)
javax.swing.RepaintManager$4.run(RepaintManager.java:814)
java.security.AccessController.doPrivileged(native method)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:814)
javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:789)
javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:738)
javax.swing.RepaintManager.access$1200(RepaintManager.java:64)
javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1732)
java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756)
java.awt.EventQueue.access$500(EventQueue.java:97)
java.awt.EventQueue$3.run(EventQueue.java:709)
java.awt.EventQueue$3.run(EventQueue.java:703)
java.security.AccessController.doPrivileged(native method)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
java.awt.EventQueue.dispatchEvent(EventQueue.java:726)
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:109)
java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:184)
java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:229)
java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:227)
java.security.AccessController.doPrivileged(native method)
java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:227)
java.awt.Dialog.show(Dialog.java:1084)
java.awt.Component.show(Component.java:1671)
java.awt.Component.setVisible(Component.java:1623)
java.awt.Window.setVisible(Window.java:1014)
java.awt.Dialog.setVisible(Dialog.java:1005)
gov.nih.nci.ui.dialog.TaskProgressDialog.run(TaskProgressDialog.java:149)
gov.nih.nci.ui.dialog.BatchProcessingDialog.actionPerformed(BatchProcessingDialog.java:305)
javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
java.awt.Component.processMouseEvent(Component.java:6533)
javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
java.awt.Component.processEvent(Component.java:6298)
java.awt.Container.processEvent(Container.java:2236)
java.awt.Component.dispatchEventImpl(Component.java:4889)
java.awt.Container.dispatchEventImpl(Container.java:2294)
java.awt.Component.dispatchEvent(Component.java:4711)
java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4888)
java.awt.LightweightDispatcher.processMouseEvent(Container.java:4525)
java.awt.LightweightDispatcher.dispatchEvent(Container.java:4466)
java.awt.Container.dispatchEventImpl(Container.java:2280)
java.awt.Window.dispatchEventImpl(Window.java:2746)
java.awt.Component.dispatchEvent(Component.java:4711)
java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
java.awt.EventQueue.access$500(EventQueue.java:97)
java.awt.EventQueue$3.run(EventQueue.java:709)
java.awt.EventQueue$3.run(EventQueue.java:703)
java.security.AccessController.doPrivileged(native method)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
java.awt.EventQueue$4.run(EventQueue.java:731)
java.awt.EventQueue$4.run(EventQueue.java:729)
java.security.AccessController.doPrivileged(native method)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:109)
java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:184)
java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:229)
java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:227)
java.security.AccessController.doPrivileged(native method)
java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:227)
java.awt.Dialog.show(Dialog.java:1084)
java.awt.Component.show(Component.java:1671)
java.awt.Component.setVisible(Component.java:1623)
java.awt.Window.setVisible(Window.java:1014)
java.awt.Dialog.setVisible(Dialog.java:1005)
gov.nih.nci.ui.dialog.BatchProcessingDialog.init(BatchProcessingDialog.java:192)
gov.nih.nci.ui.dialog.BatchProcessingDialog.<init>(BatchProcessingDialog.java:73)
gov.nih.nci.ui.NCIToldOWLClassHierarchyViewComponent$2.actionPerformed(NCIToldOWLClassHierarchyViewComponent.java:81)
org.protege.editor.core.ui.view.ViewActionAdapter.actionPerformed(ViewActionAdapter.java:46)
javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
java.awt.Component.processMouseEvent(Component.java:6533)
javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
java.awt.Component.processEvent(Component.java:6298)
java.awt.Container.processEvent(Container.java:2236)
java.awt.Component.dispatchEventImpl(Component.java:4889)
java.awt.Container.dispatchEventImpl(Container.java:2294)
java.awt.Component.dispatchEvent(Component.java:4711)
java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4888)
java.awt.LightweightDispatcher.processMouseEvent(Container.java:4525)
java.awt.LightweightDispatcher.dispatchEvent(Container.java:4466)
java.awt.Container.dispatchEventImpl(Container.java:2280)
java.awt.Window.dispatchEventImpl(Window.java:2746)
java.awt.Component.dispatchEvent(Component.java:4711)
java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
java.awt.EventQueue.access$500(EventQueue.java:97)
java.awt.EventQueue$3.run(EventQueue.java:709)
java.awt.EventQueue$3.run(EventQueue.java:703)
java.security.AccessController.doPrivileged(native method)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
java.awt.EventQueue$4.run(EventQueue.java:731)
java.awt.EventQueue$4.run(EventQueue.java:729)
java.security.AccessController.doPrivileged(native method)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
Thread-4 [BLOCKED; waiting to lock java.awt.Component$AWTTreeLock@60803f48]
java.awt.Component.setFont(Component.java:1893)
java.awt.Container.setFont(Container.java:1750)
javax.swing.JComponent.setFont(JComponent.java:2754)
org.protege.editor.owl.ui.renderer.OWLCellRenderer.setupFont(OWLCellRenderer.java:291)
org.protege.editor.owl.ui.renderer.OWLCellRenderer.resetStyles(OWLCellRenderer.java:942)
org.protege.editor.owl.ui.renderer.OWLCellRenderer.prepareTextPane(OWLCellRenderer.java:676)
org.protege.editor.owl.ui.renderer.OWLCellRenderer.prepareRenderer(OWLCellRenderer.java:491)
org.protege.editor.owl.ui.renderer.OWLCellRenderer.getTreeCellRendererComponent(OWLCellRenderer.java:377)
org.protege.editor.owl.ui.tree.OWLObjectTreeCellRenderer.getTreeCellRendererComponent(OWLObjectTreeCellRenderer.java:38)
javax.swing.plaf.basic.BasicTreeUI$NodeDimensionsHandler.getNodeDimensions(BasicTreeUI.java:2807)
javax.swing.tree.AbstractLayoutCache.getNodeDimensions(AbstractLayoutCache.java:492)
javax.swing.tree.VariableHeightLayoutCache$TreeStateNode.updatePreferredSize(VariableHeightLayoutCache.java:1360)
javax.swing.tree.VariableHeightLayoutCache.createNodeAt(VariableHeightLayoutCache.java:782)
javax.swing.tree.VariableHeightLayoutCache.treeNodesInserted(VariableHeightLayoutCache.java:491)
javax.swing.plaf.basic.BasicTreeUI$Handler.treeNodesInserted(BasicTreeUI.java:3878)
javax.swing.tree.DefaultTreeModel.fireTreeNodesInserted(DefaultTreeModel.java:517)
javax.swing.tree.DefaultTreeModel.nodesWereInserted(DefaultTreeModel.java:314)
javax.swing.tree.DefaultTreeModel.insertNodeInto(DefaultTreeModel.java:241)
org.protege.editor.owl.ui.tree.OWLObjectTree.updateNode(OWLObjectTree.java:273)
org.protege.editor.owl.ui.tree.OWLObjectTree.access$000(OWLObjectTree.java:54)
org.protege.editor.owl.ui.tree.OWLObjectTree$1.nodeChanged(OWLObjectTree.java:105)
org.protege.editor.owl.model.hierarchy.AbstractOWLObjectHierarchyProvider.fireNodeChanged(AbstractOWLObjectHierarchyProvider.java:239)
org.protege.editor.owl.model.hierarchy.AssertedClassHierarchyProvider.notifyNodeChanges(AssertedClassHierarchyProvider.java:184)
org.protege.editor.owl.model.hierarchy.AssertedClassHierarchyProvider.handleChanges(AssertedClassHierarchyProvider.java:160)
org.protege.editor.owl.model.hierarchy.AssertedClassHierarchyProvider$$Lambda$135/1759670434.ontologiesChanged(unknown source)
org.semanticweb.owlapi.model.DefaultChangeBroadcastStrategy.broadcastChanges(DefaultChangeBroadcastStrategy.java:38)
uk.ac.manchester.cs.owl.owlapi.OWLOntologyManagerImpl.broadcastChanges(OWLOntologyManagerImpl.java:1490)
uk.ac.manchester.cs.owl.owlapi.OWLOntologyManagerImpl.applyChanges(OWLOntologyManagerImpl.java:590)
org.protege.editor.owl.model.OWLModelManagerImpl.applyChanges(OWLModelManagerImpl.java:694)
gov.nih.nci.ui.NCIEditTab.createNewChild(NCIEditTab.java:1002)
gov.nih.nci.utils.batch.BatchLoadTask.processTask(BatchLoadTask.java:57)
gov.nih.nci.ui.dialog.TaskProgressDialog$BatchProc.run(TaskProgressDialog.java:230)
Frozen threads found (potential deadlock)
It seems that the following threads have not changed their stack for more than 10 seconds.
These threads are possibly (but not necessarily!) in a deadlock or hung.
process reaper <--- Frozen for at least 13m 18s
java.lang.UNIXProcess$ProcessPipeInputStream.processExited() UNIXProcess.java:528
java.lang.UNIXProcess.lambda$initStreams$3() UNIXProcess.java:299
java.lang.UNIXProcess$$Lambda$7.run()
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor$Worker) ThreadPoolExecutor.java:1142
java.util.concurrent.ThreadPoolExecutor$Worker.run() ThreadPoolExecutor.java:617
java.lang.Thread.run() Thread.java:745
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment