Task #11114 (new)
Opened 6 years ago
Last modified 3 years ago
Bug: Network/HTTP access in awt thread on linux
| Reported by: | jamoore | Owned by: | jburel |
|---|---|---|---|
| Priority: | major | Milestone: | Unscheduled |
| Component: | Insight | Version: | n.a. |
| Keywords: | n.a. | Cc: | ux@…, bpindelski, mtbcarroll |
| Resources: | n.a. | Referenced By: | n.a. |
| References: | n.a. | Remaining Time: | n.a. |
| Sprint: | n.a. |
Description
"AWT-EventQueue-0" prio=10 tid=0x00007f58b83d0000 nid=0x79bb runnable [0x00007f58a7689000]
java.lang.Thread.State: RUNNABLE
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
- locked <0x00000000ef4f12f8> (a java.net.SocksSocketImpl)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:391)
at java.net.Socket.connect(Socket.java:579)
at java.net.Socket.connect(Socket.java:528)
at sun.net.NetworkClient.doConnect(NetworkClient.java:180)
at sun.net.www.http.HttpClient.openServer(HttpClient.java:378)
at sun.net.www.http.HttpClient.openServer(HttpClient.java:473)
- locked <0x00000000ef4f1270> (a sun.net.www.http.HttpClient)
at sun.net.www.http.HttpClient.<init>(HttpClient.java:203)
at sun.net.www.http.HttpClient.New(HttpClient.java:290)
at sun.net.www.http.HttpClient.New(HttpClient.java:306)
at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:995)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:931)
at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:849)
at sun.net.www.protocol.http.HttpURLConnection.followRedirect(HttpURLConnection.java:2397)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1556)
- locked <0x00000000ef4e01c0> (a sun.net.www.protocol.http.HttpURLConnection)
at java.net.URL.openStream(URL.java:1037)
at org.openmicroscopy.shoola.util.NetworkChecker.isNetworkup(NetworkChecker.java:115)
at org.openmicroscopy.shoola.env.data.OMEROGateway.isNetworkUp(OMEROGateway.java:462)
at org.openmicroscopy.shoola.env.data.OMEROGateway.logout(OMEROGateway.java:2674)
at org.openmicroscopy.shoola.env.data.DataServicesFactory.shutdown(DataServicesFactory.java:698)
at org.openmicroscopy.shoola.env.data.DataServicesFactory.exitApplication(DataServicesFactory.java:762)
at org.openmicroscopy.shoola.env.ui.TaskBarManager.exitApplication(TaskBarManager.java:664)
at org.openmicroscopy.shoola.env.ui.TaskBarManager.doExit(TaskBarManager.java:592)
at org.openmicroscopy.shoola.env.ui.TaskBarManager.eventFired(TaskBarManager.java:1027)
at org.openmicroscopy.shoola.env.event.EventBusImpl.dispatch(EventBusImpl.java:91)
at org.openmicroscopy.shoola.env.event.EventBusImpl.post(EventBusImpl.java:222)
at org.openmicroscopy.shoola.agents.treeviewer.actions.ExitApplicationAction.actionPerformed(ExitApplicationAction.java:112
)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.AbstractButton.doClick(AbstractButton.java:376)
at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:833)
at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:877)
at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
at java.awt.Component.processMouseEvent(Component.java:6505)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3312)
at java.awt.Component.processEvent(Component.java:6270)
at java.awt.Container.processEvent(Container.java:2229)
at java.awt.Component.dispatchEventImpl(Component.java:4861)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
at java.awt.Container.dispatchEventImpl(Container.java:2273)
at java.awt.Window.dispatchEventImpl(Window.java:2719)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:729)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:688)
at java.awt.EventQueue$3.run(EventQueue.java:686)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(EventQueue.java:702)
at java.awt.EventQueue$4.run(EventQueue.java:700)
This is on my isSessionAlive-related branch.
Attachments (1)
Change History (13)
comment:1 Changed 6 years ago by jamoore
comment:2 Changed 6 years ago by jamoore
Found call to rendering on AWT thread:
"AWT-EventQueue-0" prio=10 tid=0x00007f86c03c6000 nid=0x2e05 in Object.wait() [0x00007f86ffefb000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00000000ecaf7590> (a IceInternal.Outgoing)
at java.lang.Object.wait(Object.java:503)
at IceInternal.Outgoing.invoke(Outgoing.java:109)
- locked <0x00000000ecaf7590> (a IceInternal.Outgoing)
at omero.api._RenderingEngineDelM.renderAsPackedInt(_RenderingEngineDelM.java:1629)
at omero.api.RenderingEnginePrxHelper.renderAsPackedInt(RenderingEnginePrxHelper.java:5553)
at omero.api.RenderingEnginePrxHelper.renderAsPackedInt(RenderingEnginePrxHelper.java:5526)
at org.openmicroscopy.shoola.env.rnd.RenderingControlProxy.renderUncompressed(RenderingControlProxy.java:570)
at org.openmicroscopy.shoola.env.rnd.RenderingControlProxy.render(RenderingControlProxy.java:1733)
at org.openmicroscopy.shoola.env.rnd.RenderingControlProxy.render(RenderingControlProxy.java:1708)
at org.openmicroscopy.shoola.agents.metadata.rnd.RendererModel.render(RendererModel.java:1264)
at org.openmicroscopy.shoola.agents.metadata.rnd.RendererComponent.renderPlane(RendererComponent.java:959)
at org.openmicroscopy.shoola.agents.imviewer.view.ImViewerModel.fireImageRetrieval(ImViewerModel.java:947)
at org.openmicroscopy.shoola.agents.imviewer.view.ImViewerComponent.renderXYPlane(ImViewerComponent.java:1142)
at org.openmicroscopy.shoola.agents.imviewer.view.ImViewerComponent.setChannelSelection(ImViewerComponent.java:1089)
at org.openmicroscopy.shoola.agents.imviewer.view.ImViewerControl.propertyChange(ImViewerControl.java:951)
at java.beans.PropertyChangeSupport.fire(PropertyChangeSupport.java:335)
at java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:327)
at java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:263)
at java.awt.Component.firePropertyChange(Component.java:8382)
at org.openmicroscopy.shoola.agents.util.ui.ChannelButton.setChannelSelected(ChannelButton.java:118)
at org.openmicroscopy.shoola.agents.util.ui.ChannelButton.onClick(ChannelButton.java:130)
at org.openmicroscopy.shoola.agents.util.ui.ChannelButton.access$000(ChannelButton.java:61)
at org.openmicroscopy.shoola.agents.util.ui.ChannelButton$1.mousePressed(ChannelButton.java:229)
at java.awt.AWTEventMulticaster.mousePressed(AWTEventMulticaster.java:280)
at java.awt.AWTEventMulticaster.mousePressed(AWTEventMulticaster.java:279)
at java.awt.Component.processMouseEvent(Component.java:6502)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3312)
comment:3 Changed 6 years ago by jburel
The calls to RE are not asynchronous (only for big images) That will have to be reviewed later on. It used to be but we decided not to follow that path.
It should not be too hard to fix
comment:4 Changed 6 years ago by jamoore
setResolutionLevel on the AWT thread:
"AWT-EventQueue-0" prio=10 tid=0x00007fae583f8000 nid=0x1c85 in Object.wait() [0x00007fae9d08b000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00000000eacc6488> (a IceInternal.Outgoing)
at java.lang.Object.wait(Object.java:503)
at IceInternal.Outgoing.invoke(Outgoing.java:109)
- locked <0x00000000eacc6488> (a IceInternal.Outgoing)
at omero.api._RenderingEngineDelM.setResolutionLevel(_RenderingEngineDelM.java:263)
at omero.api.RenderingEnginePrxHelper.setResolutionLevel(RenderingEnginePrxHelper.java:1148)
at omero.api.RenderingEnginePrxHelper.setResolutionLevel(RenderingEnginePrxHelper.java:1115)
at org.openmicroscopy.shoola.env.rnd.RenderingControlProxy.setSelectedResolutionLevel(RenderingControlProxy.java:2119)
at org.openmicroscopy.shoola.env.rnd.RenderingControlProxy.setSelectedResolutionLevel(RenderingControlProxy.java:2123)
at org.openmicroscopy.shoola.env.rnd.RenderingControlProxy.getResolutionDescriptions(RenderingControlProxy.java:2197)
at org.openmicroscopy.shoola.agents.metadata.rnd.RendererModel.getResolutionDescriptions(RendererModel.java:1534)
at org.openmicroscopy.shoola.agents.metadata.rnd.RendererComponent.getResolutionDescriptions(RendererComponent.java:1223)
at org.openmicroscopy.shoola.agents.imviewer.view.ImViewerModel.onRndLoaded(ImViewerModel.java:1000)
at org.openmicroscopy.shoola.agents.imviewer.view.ImViewerComponent.onRndLoaded(ImViewerComponent.java:2904)
at org.openmicroscopy.shoola.agents.imviewer.view.ImViewerControl.propertyChange(ImViewerControl.java:974)
at org.openmicroscopy.shoola.util.ui.component.AbstractComponent.firePropertyChange(AbstractComponent.java:147)
at org.openmicroscopy.shoola.agents.metadata.view.MetadataViewerComponent.onRndLoaded(MetadataViewerComponent.java:849)
at org.openmicroscopy.shoola.agents.metadata.editor.EditorModel.onRndLoaded(EditorModel.java:3406)
at org.openmicroscopy.shoola.agents.metadata.editor.EditorComponent.setRenderingControl(EditorComponent.java:698)
at org.openmicroscopy.shoola.agents.metadata.RenderingControlLoader.handleResult(RenderingControlLoader.java:167)
at org.openmicroscopy.shoola.env.data.events.DSCallAdapter.eventFired(DSCallAdapter.java:90)
at org.openmicroscopy.shoola.env.data.views.BatchCallMonitor$1.run(BatchCallMonitor.java:124)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:727)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:688)
at java.awt.EventQueue$3.run(EventQueue.java:686)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:697)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
comment:5 Changed 6 years ago by jamoore
setQuantizationMap:
"AWT-EventQueue-0" prio=10 tid=0x00007fae583f8000 nid=0x1c85 in Object.wait() [0x00007fae9d08a000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00000000ed264068> (a IceInternal.Outgoing)
at java.lang.Object.wait(Object.java:503)
at IceInternal.Outgoing.invoke(Outgoing.java:109)
- locked <0x00000000ed264068> (a IceInternal.Outgoing)
at omero.api._RenderingEngineDelM.setQuantizationMap(_RenderingEngineDelM.java:2417)
at omero.api.RenderingEnginePrxHelper.setQuantizationMap(RenderingEnginePrxHelper.java:8099)
at omero.api.RenderingEnginePrxHelper.setQuantizationMap(RenderingEnginePrxHelper.java:8072)
at org.openmicroscopy.shoola.env.rnd.RenderingControlProxy.setQuantizationMap(RenderingControlProxy.java:1210)
at org.openmicroscopy.shoola.env.rnd.RenderingControlProxy.resetSettings(RenderingControlProxy.java:1637)
at org.openmicroscopy.shoola.env.rnd.RenderingControlProxy.resetSettings(RenderingControlProxy.java:1644)
at org.openmicroscopy.shoola.agents.metadata.rnd.RendererModel.resetSettings(RendererModel.java:1175)
at org.openmicroscopy.shoola.agents.metadata.rnd.RendererComponent.resetSettings(RendererComponent.java:851)
at org.openmicroscopy.shoola.agents.imviewer.view.ImViewerModel.resetMappingSettings(ImViewerModel.java:1686)
at org.openmicroscopy.shoola.agents.imviewer.view.ImViewerComponent.saveOnClose(ImViewerComponent.java:414)
at org.openmicroscopy.shoola.agents.imviewer.view.ImViewerComponent.close(ImViewerComponent.java:3134)
at org.openmicroscopy.shoola.agents.imviewer.view.ImViewerControl$3.windowClosing(ImViewerControl.java:537)
at java.awt.AWTEventMulticaster.windowClosing(AWTEventMulticaster.java:349)
at java.awt.AWTEventMulticaster.windowClosing(AWTEventMulticaster.java:349)
at java.awt.Window.processWindowEvent(Window.java:2051)
at javax.swing.JFrame.processWindowEvent(JFrame.java:290)
at java.awt.Window.processEvent(Window.java:2009)
at java.awt.Component.dispatchEventImpl(Component.java:4861)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Window.dispatchEventImpl(Window.java:2719)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:729)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:688)
at java.awt.EventQueue$3.run(EventQueue.java:686)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(EventQueue.java:702)
at java.awt.EventQueue$4.run(EventQueue.java:700)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:699)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
comment:6 Changed 6 years ago by jamoore
setSelectedResolutionLevel & isSessionAlive which may also invoke the NetworkChecker?:
"AWT-EventQueue-0" prio=10 tid=0x00007f84843b8000 nid=0x1f98 in Object.wait() [0x00007f847eac5000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00000000ed7676e8> (a IceInternal.Outgoing)
at java.lang.Object.wait(Object.java:503)
at IceInternal.Outgoing.invoke(Outgoing.java:109)
- locked <0x00000000ed7676e8> (a IceInternal.Outgoing)
at Ice._ObjectDelM.ice_ping(_ObjectDelM.java:68)
at Ice.ObjectPrxHelperBase.ice_ping(ObjectPrxHelperBase.java:290)
at Ice.ObjectPrxHelperBase.ice_ping(ObjectPrxHelperBase.java:259)
at org.openmicroscopy.shoola.env.rnd.RenderingControlProxy.isSessionAlive(RenderingControlProxy.java:805)
at org.openmicroscopy.shoola.env.rnd.RenderingControlProxy.setSelectedResolutionLevel(RenderingControlProxy.java:2117)
at org.openmicroscopy.shoola.env.rnd.RenderingControlProxy.setSelectedResolutionLevel(RenderingControlProxy.java:2123)
at org.openmicroscopy.shoola.env.rnd.RenderingControlProxy.getResolutionDescriptions(RenderingControlProxy.java:2197)
at org.openmicroscopy.shoola.agents.metadata.rnd.RendererModel.getResolutionDescriptions(RendererModel.java:1534)
at org.openmicroscopy.shoola.agents.metadata.rnd.RendererComponent.getResolutionDescriptions(RendererComponent.java:1223)
at org.openmicroscopy.shoola.agents.imviewer.view.ImViewerModel.onRndLoaded(ImViewerModel.java:1000)
at org.openmicroscopy.shoola.agents.imviewer.view.ImViewerComponent.onRndLoaded(ImViewerComponent.java:2904)
at org.openmicroscopy.shoola.agents.imviewer.view.ImViewerControl.propertyChange(ImViewerControl.java:974)
at org.openmicroscopy.shoola.util.ui.component.AbstractComponent.firePropertyChange(AbstractComponent.java:147)
at org.openmicroscopy.shoola.agents.metadata.view.MetadataViewerComponent.onRndLoaded(MetadataViewerComponent.java:849)
at org.openmicroscopy.shoola.agents.metadata.editor.EditorModel.onRndLoaded(EditorModel.java:3406)
at org.openmicroscopy.shoola.agents.metadata.editor.EditorComponent.setRenderingControl(EditorComponent.java:698)
at org.openmicroscopy.shoola.agents.metadata.RenderingControlLoader.handleResult(RenderingControlLoader.java:167)
at org.openmicroscopy.shoola.env.data.events.DSCallAdapter.eventFired(DSCallAdapter.java:90)
at org.openmicroscopy.shoola.env.data.views.BatchCallMonitor$1.run(BatchCallMonitor.java:124)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:727)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:688)
at java.awt.EventQueue$3.run(EventQueue.java:686)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:697)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
comment:7 Changed 6 years ago by jburel
before any call to the RE proxy the method isNetwork up is invoked.
We could, for now, always return true and fix the underline issue .
comment:8 Changed 6 years ago by jamoore
Not exactly a remote call on the AWT thread but GUI is hung:
"AWT-EventQueue-0" prio=10 tid=0x00007ff3243ef800 nid=0x4342 waiting on condition [0x00007ff31d8a3000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00000000c238e830> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
at java.awt.EventQueue.getNextEvent(EventQueue.java:537)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:211)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:154)
at java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:182)
at java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:221)
at java.security.AccessController.doPrivileged(Native Method)
at java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:219)
at java.awt.Dialog.show(Dialog.java:1082)
at java.awt.Component.show(Component.java:1651)
at java.awt.Component.setVisible(Component.java:1603)
at java.awt.Window.setVisible(Window.java:1014)
at java.awt.Dialog.setVisible(Dialog.java:1005)
at org.openmicroscopy.shoola.util.ui.UIUtilities.setLocationRelativeTo(UIUtilities.java:612)
at org.openmicroscopy.shoola.util.ui.UIUtilities.setLocationRelativeToAndShow(UIUtilities.java:588)
at org.openmicroscopy.shoola.agents.imviewer.actions.SaveAction.actionPerformed(SaveAction.java:116)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
at java.awt.Component.processMouseEvent(Component.java:6505)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3312)
at java.awt.Component.processEvent(Component.java:6270)
at java.awt.Container.processEvent(Container.java:2229)
at java.awt.Component.dispatchEventImpl(Component.java:4861)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
at java.awt.Container.dispatchEventImpl(Container.java:2273)
at java.awt.Window.dispatchEventImpl(Window.java:2719)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:729)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:688)
at java.awt.EventQueue$3.run(EventQueue.java:686)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(EventQueue.java:702)
at java.awt.EventQueue$4.run(EventQueue.java:700)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:699)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
Other threads aren't doing anything.
comment:9 Changed 6 years ago by jamoore
Previous issue was on Linux (Ubuntu 13.04) caused by clicking crazy. The "Save Image" dialog was hidden in the background which was likey the issue. Perhaps a separate ticket?
comment:10 Changed 6 years ago by jamoore
After recovering from the previous non-Ice hang, found this:
"AWT-EventQueue-0" prio=10 tid=0x00007ff3243ef800 nid=0x4342 in Object.wait() [0x00007ff31d8a3000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00000000ead1f620> (a IceInternal.Outgoing)
at java.lang.Object.wait(Object.java:503)
at IceInternal.Outgoing.invoke(Outgoing.java:109)
- locked <0x00000000ead1f620> (a IceInternal.Outgoing)
at omero.api._RenderingEngineDelM.close(_RenderingEngineDelM.java:2644)
at omero.api.RenderingEnginePrxHelper.close(RenderingEnginePrxHelper.java:8998)
at omero.api.RenderingEnginePrxHelper.close(RenderingEnginePrxHelper.java:8961)
at org.openmicroscopy.shoola.env.data.Connector.close(Connector.java:623)
at org.openmicroscopy.shoola.env.data.Connector.shutDownRenderingEngine(Connector.java:655)
at org.openmicroscopy.shoola.env.data.Connector.shutDownServices(Connector.java:583)
at org.openmicroscopy.shoola.env.data.OMEROGateway.shutDownServices(OMEROGateway.java:3841)
at org.openmicroscopy.shoola.env.data.OMEROGateway.logout(OMEROGateway.java:2251)
at org.openmicroscopy.shoola.env.data.DataServicesFactory.shutdown(DataServicesFactory.java:709)
at org.openmicroscopy.shoola.env.data.DataServicesFactory.exitApplication(DataServicesFactory.java:773)
at org.openmicroscopy.shoola.env.ui.TaskBarManager.exitApplication(TaskBarManager.java:664)
at org.openmicroscopy.shoola.env.ui.TaskBarManager.doExit(TaskBarManager.java:596)
at org.openmicroscopy.shoola.env.ui.TaskBarManager.eventFired(TaskBarManager.java:1027)
at org.openmicroscopy.shoola.env.event.EventBusImpl.dispatch(EventBusImpl.java:91)
at org.openmicroscopy.shoola.env.event.EventBusImpl.post(EventBusImpl.java:222)
at org.openmicroscopy.shoola.agents.treeviewer.view.TreeViewerComponent.closeWindow(TreeViewerComponent.java:1246)
at org.openmicroscopy.shoola.agents.treeviewer.view.TreeViewerControl$2.windowClosing(TreeViewerControl.java:634)
at java.awt.AWTEventMulticaster.windowClosing(AWTEventMulticaster.java:349)
at java.awt.AWTEventMulticaster.windowClosing(AWTEventMulticaster.java:349)
at java.awt.AWTEventMulticaster.windowClosing(AWTEventMulticaster.java:349)
at java.awt.Window.processWindowEvent(Window.java:2051)
at javax.swing.JFrame.processWindowEvent(JFrame.java:290)
at java.awt.Window.processEvent(Window.java:2009)
at java.awt.Component.dispatchEventImpl(Component.java:4861)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Window.dispatchEventImpl(Window.java:2719)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:729)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:688)
at java.awt.EventQueue$3.run(EventQueue.java:686)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(EventQueue.java:702)
at java.awt.EventQueue$4.run(EventQueue.java:700)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:699)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
Changed 6 years ago by jamoore
Stack traces of getConnector on AWT thread from omeroinsight.log (see patch for re-creating)
comment:11 Changed 6 years ago by jamoore
Previous log contains logged stack traces from OMEROGateway.java from one session using the following patch:
(ome1)jamoore@blue:/opt/ome2$ git diff
diff --git a/components/insight/SRC/org/openmicroscopy/shoola/env/data/OMEROGateway.java b/components/insight/SRC/org/openmicroscop
index 674e18e..2c34a7e 100644
--- a/components/insight/SRC/org/openmicroscopy/shoola/env/data/OMEROGateway.java
+++ b/components/insight/SRC/org/openmicroscopy/shoola/env/data/OMEROGateway.java
@@ -66,6 +66,7 @@ import org.openmicroscopy.shoola.env.data.util.PojoMapper;
import org.openmicroscopy.shoola.env.data.util.SearchDataContext;
import org.openmicroscopy.shoola.env.data.util.SecurityContext;
import org.openmicroscopy.shoola.env.data.util.StatusLabel;
+import org.openmicroscopy.shoola.env.log.LogMessage;
import org.openmicroscopy.shoola.env.rnd.PixelsServicesFactory;
import org.openmicroscopy.shoola.env.rnd.RenderingServiceException;
import org.openmicroscopy.shoola.env.rnd.RndProxyDef;
@@ -1466,7 +1467,7 @@ class OMEROGateway
boolean permitNull)
throws DSOutOfServiceException
{
-
+ checkAWTThread();
try {
isNetworkUp(); // Need safe version?
} catch (Exception e1) {
@@ -8380,4 +8381,12 @@ class OMEROGateway
return null;
}
+ void checkAWTThread() {
+ String threadName = Thread.currentThread().getName();
+ if (threadName.contains("AWT")) {
+ LogMessage mg = new LogMessage();
+ new RuntimeException(threadName + " detected!").printStackTrace(mg);
+ dsFactory.getLogger().warn(this, mg);
+ }
+ }
}
Once the synchronization branch has been merged, I can open a PR with this for testing.
comment:12 Changed 3 years ago by jamoore
- Milestone changed from 5.x to Unscheduled
Also saw a client.__del__() in the awt thread. Lost the stack trace unfortunately.