Warning: Can't synchronize with repository "(default)" (/home/git/ome.git does not appear to be a Git repository.). Look in the Trac log for more information.
Notice: In order to edit this ticket you need to be either: a Product Owner, The owner or the reporter of the ticket, or, in case of a Task not yet assigned, a team_member"

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)

awt-traces.log (225.1 KB) - added by jamoore 11 years ago.
Stack traces of getConnector on AWT thread from omeroinsight.log (see patch for re-creating)

Download all attachments as: .zip

Change History (13)

comment:1 Changed 11 years ago by jamoore

Also saw a client.__del__() in the awt thread. Lost the stack trace unfortunately.

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
Note: See TracTickets for help on using tickets. You may also have a look at Agilo extensions to the ticket.

1.3.13-PRO © 2008-2011 Agilo Software all rights reserved (this page was served in: 0.66552 sec.)

We're Hiring!