Task #11114 (new)
Opened 11 years ago
Last modified 8 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 11 years ago by jamoore
comment:2 Changed 11 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 11 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 11 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 11 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 11 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 11 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 11 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 11 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 11 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 11 years ago by jamoore
Stack traces of getConnector on AWT thread from omeroinsight.log (see patch for re-creating)
comment:11 Changed 11 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 8 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.