Task #9196 (closed)
IsSessionAlive
Reported by: | jburel | Owned by: | jburel |
---|---|---|---|
Priority: | critical | Milestone: | OMERO-4.4 |
Component: | Insight | Version: | n.a. |
Keywords: | n.a. | Cc: | jamoore, cblackburn |
Resources: | n.a. | Referenced By: | n.a. |
References: | n.a. | Remaining Time: | 0.0d |
Sprint: | 2012-07-03 (18) |
Description
Review how to check how the session is alive.
The usage of getAdminService.getEventContext can "block" the application.
Attachments (3)
Change History (16)
comment:1 Changed 12 years ago by jburel
- Status changed from new to accepted
comment:2 Changed 12 years ago by jburel
- Remaining Time changed from 0.3 to 0
- Resolution set to fixed
- Status changed from accepted to closed
comment:3 Changed 12 years ago by jburel
- Cc cblackburn added
To test:
- start insight and log the server
- stop the server, perform an action in insight
- start insight and log the server
- restart the server, perform an action in insight
comment:4 Changed 12 years ago by cblackburn
Testing with 4.4.0-RC1-50-b78e1b3-ice33-b100 server locally on Mac OS 10.6.8.
First:
- stop the server, perform an action in insight
This caused the connection to be lost and a tidy shutdown.
Second:
- restart the server, perform an action in insight
Double-clicking to view an image after the restart caused the offer to reconnect twice, each followed by a success dialog. The image was then reported as invalid. Refreshing the datset caused the groups to get screwed up and the P/D/I displayed in the second group were those from the first group! See attached images.
I tried to reproduce this but this time I got three reconnection dialogs after clicking yes for the third time I got an exception.
java.lang.Exception: org.openmicroscopy.shoola.env.data.DSAccessException: Cannot access data. Cannot find annotations for class pojos.DatasetData. at org.openmicroscopy.shoola.env.data.OMEROGateway.handleException(OMEROGateway.java:878) at org.openmicroscopy.shoola.env.data.OMEROGateway.loadAnnotations(OMEROGateway.java:2687) at org.openmicroscopy.shoola.env.data.OmeroMetadataServiceImpl.loadStructuredAnnotations(OmeroMetadataServiceImpl.java:1014) at org.openmicroscopy.shoola.env.data.OmeroMetadataServiceImpl.loadStructuredData(OmeroMetadataServiceImpl.java:707) at org.openmicroscopy.shoola.env.data.views.calls.StructuredAnnotationLoader$5.doCall(StructuredAnnotationLoader.java:188) at org.openmicroscopy.shoola.env.data.views.BatchCall.doStep(BatchCall.java:144) at org.openmicroscopy.shoola.util.concur.tasks.CompositeTask.doStep(CompositeTask.java:226) at org.openmicroscopy.shoola.env.data.views.CompositeBatchCall.doStep(CompositeBatchCall.java:126) at org.openmicroscopy.shoola.util.concur.tasks.ExecCommand.exec(ExecCommand.java:165) at org.openmicroscopy.shoola.util.concur.tasks.ExecCommand.run(ExecCommand.java:276) at org.openmicroscopy.shoola.util.concur.tasks.AsyncProcessor$Runner.run(AsyncProcessor.java:91) at java.lang.Thread.run(Thread.java:680) Caused by: Ice.ConnectionLostException error = 0 at IceInternal.Outgoing.invoke(Outgoing.java:147) at omero.api._IMetadataDelM.loadAnnotations(_IMetadataDelM.java:260) at omero.api.IMetadataPrxHelper.loadAnnotations(IMetadataPrxHelper.java:320) at omero.api.IMetadataPrxHelper.loadAnnotations(IMetadataPrxHelper.java:292) at org.openmicroscopy.shoola.env.data.OMEROGateway.loadAnnotations(OMEROGateway.java:2683) ... 10 more at org.openmicroscopy.shoola.env.ui.UserNotifierImpl.showErrorDialog(UserNotifierImpl.java:189) at org.openmicroscopy.shoola.env.ui.UserNotifierImpl.notifyError(UserNotifierImpl.java:287) at org.openmicroscopy.shoola.env.ui.UserNotifierImpl.notifyError(UserNotifierImpl.java:257) at org.openmicroscopy.shoola.agents.metadata.MetadataLoader.handleException(MetadataLoader.java:164) at org.openmicroscopy.shoola.env.data.events.DSCallAdapter.eventFired(DSCallAdapter.java:84) at org.openmicroscopy.shoola.env.data.views.BatchCallMonitor$1.run(BatchCallMonitor.java:124) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:682) at java.awt.EventQueue.access$000(EventQueue.java:85) at java.awt.EventQueue$1.run(EventQueue.java:643) at java.awt.EventQueue$1.run(EventQueue.java:641) at java.security.AccessController.doPrivileged(Native Method) at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87) at java.awt.EventQueue.dispatchEvent(EventQueue.java:652) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188) at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
Changed 12 years ago by cblackburn
Changed 12 years ago by cblackburn
comment:5 Changed 12 years ago by jburel
- Resolution fixed deleted
- Status changed from closed to reopened
comment:6 Changed 12 years ago by jburel
- Priority changed from major to critical
comment:7 Changed 12 years ago by jburel
- Resolution set to fixed
- Status changed from reopened to closed
comment:8 Changed 12 years ago by cblackburn
Sorry, on further testing there is a problem with the restart scenario. If only the main window is open everything is okay. If an IMage Viewer window is also open then any activity in there generates multiple reconnection dialogs. Clicking on a Channel will cause two pairs of reconnection dialogs - but the channel is not toggled. Clicking on the Split view tab will cause one reconnection pair - the view does change. Clicking on the Image tab will result in five pairs of dialogs! - the view does change.
comment:9 Changed 12 years ago by cblackburn
- Resolution fixed deleted
- Status changed from closed to reopened
comment:10 Changed 12 years ago by cblackburn
The attachment DoubleDialog.jpg seems to have lost its full comment. This happens when the server is stopped. There are two identical dialogs superimposed. Clicking Okay works fine and I wouldn't have noticed but for moving the dialog to look at the screen below.
comment:11 Changed 12 years ago by jburel
- Status changed from reopened to closed
comment:12 Changed 12 years ago by jburel <j.burel@…>
(In [f05cbccd1de189269fb01f385efb977e51f5ba75/ome.git] on branch develop) Do no check if the server running before each call. (see #9196)
- No longer call the getAdminService.getEventContext
before every call
- Modify exception handling.
comment:13 Changed 12 years ago by jburel <j.burel@…>
(In [fd683b9735f754bf049cecee430306205a2ca504/ome.git] on branch develop) Review error handling when connection is lost (see #9196)
see f05cbccd1de189269fb01f385efb977e51f5ba75