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 #9023 (closed)

Opened 7 years ago

Closed 7 years ago

Last modified 7 years ago

Bug: Double prompt for save

Reported by: saloynton Owned by: jburel
Priority: major Milestone: OMERO-4.4
Component: Insight Version: n.a.
Keywords: n.a. Cc: bpindelski, ux@…
Resources: n.a. Referenced By: n.a.
References: n.a. Remaining Time: 0.0d
Sprint: 2012-07-03 (18)

Description

Logged in as user-6, group private-1.Changed the description of an image in my own dataset. Clicked on a different image in the same dataset. Prompt pops up asking me to save. Click Yes. Click on a different image. Prompt pops up again.

  • what was tested user-6/private-1 (saving image details)
  • OMERO.insight-4.3.3-2742-2682694-ice33-b73-win
  • Windows 7 (32 bit version)

See movie attached.

Attachments (2)

image-details.mov (1.0 MB) - added by saloynton 7 years ago.
insight-crash.mov (4.7 MB) - added by bpindelski 7 years ago.

Change History (8)

Changed 7 years ago by saloynton

comment:1 Changed 7 years ago by bpindelski

Seems to be happening only with user-6. I've tried user-1 and user-2 in private-1 and the double prompt doesn't appear.

Last edited 7 years ago by bpindelski (previous) (diff)

comment:2 Changed 7 years ago by jburel

  • Remaining Time set to 0.2
  • Sprint set to 2012-07-03 (18)
  • Status changed from new to accepted

comment:3 Changed 7 years ago by jburel

  • Remaining Time changed from 0.2 to 0
  • Resolution set to fixed
  • Status changed from accepted to closed

Fix a display problem when no description. I cannot reproduce the reported problem, this might have been fixed by another commit. Re-open if required.

comment:4 Changed 7 years ago by bpindelski

  • Resolution fixed deleted
  • Status changed from closed to reopened

Still fails, if you follow a specific workflow (see attached insight-crash.mov). In general: log in as user-1, view some images (ProjectB_1), switch to user-6:private-1, edit image metadata, save and switch to user-1 again. Insight crashes with

java.lang.Exception: org.openmicroscopy.shoola.env.data.DSAccessException: Cannot access data. 
Cannot update the object.
	at org.openmicroscopy.shoola.env.data.OMEROGateway.handleException(OMEROGateway.java:878)
	at org.openmicroscopy.shoola.env.data.OMEROGateway.updateObject(OMEROGateway.java:3031)
	at org.openmicroscopy.shoola.env.data.OmeroDataServiceImpl.updateDataObject(OmeroDataServiceImpl.java:367)
	at org.openmicroscopy.shoola.env.data.OmeroMetadataServiceImpl.saveData(OmeroMetadataServiceImpl.java:1072)
	at org.openmicroscopy.shoola.env.data.views.calls.StructuredAnnotationSaver$1.doCall(StructuredAnnotationSaver.java:95)
	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(Unknown Source)
Caused by: omero.GroupSecurityViolation
    serverStackTrace = "ome.conditions.GroupSecurityViolation: ome.model.core.Image:Id_1548-modification violates group-security.
                        	at ome.security.basic.BasicACLVoter.throwUpdateViolation(BasicACLVoter.java:180)
                        	at ome.security.CompositeACLVoter.throwUpdateViolation(CompositeACLVoter.java:92)
                        	at ome.security.ACLEventListener.onPreUpdate(ACLEventListener.java:129)
                        	at org.hibernate.action.EntityUpdateAction.preUpdate(EntityUpdateAction.java:236)
                        	at org.hibernate.action.EntityUpdateAction.execute(EntityUpdateAction.java:87)
                        	at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:267)
                        	at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:259)
                        	at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:179)
                        	at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:321)
                        	at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:51)
                        	at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1208)
                        	at ome.logic.UpdateImpl.afterUpdate(UpdateImpl.java:294)
                        	at ome.logic.UpdateImpl.doAction(UpdateImpl.java:312)
                        	at ome.logic.UpdateImpl.doAction(UpdateImpl.java:302)
                        	at ome.logic.UpdateImpl.saveAndReturnObject(UpdateImpl.java:118)
                        	at ome.logic.PojosImpl.updateDataObject(PojosImpl.java:494)
                        	at sun.reflect.GeneratedMethodAccessor1019.invoke(Unknown Source)
                        	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                        	at java.lang.reflect.Method.invoke(Method.java:597)
                        	at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
                        	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
                        	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
                        	at ome.security.basic.EventHandler.invoke(EventHandler.java:154)
                        	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
                        	at org.springframework.orm.hibernate3.HibernateInterceptor.invoke(HibernateInterceptor.java:111)
                        	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
                        	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:108)
                        	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
                        	at ome.tools.hibernate.ProxyCleanupFilter$Interceptor.invoke(ProxyCleanupFilter.java:241)
                        	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
                        	at ome.services.util.ServiceHandler.invoke(ServiceHandler.java:116)
                        	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
                        	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
                        	at $Proxy85.updateDataObject(Unknown Source)
                        	at sun.reflect.GeneratedMethodAccessor1019.invoke(Unknown Source)
                        	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                        	at java.lang.reflect.Method.invoke(Method.java:597)
                        	at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
                        	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
                        	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
                        	at ome.security.basic.BasicSecurityWiring.invoke(BasicSecurityWiring.java:98)
                        	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
                        	at ome.services.blitz.fire.AopContextInitializer.invoke(AopContextInitializer.java:43)
                        	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
                        	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
                        	at $Proxy85.updateDataObject(Unknown Source)
                        	at sun.reflect.GeneratedMethodAccessor1121.invoke(Unknown Source)
                        	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                        	at java.lang.reflect.Method.invoke(Method.java:597)
                        	at ome.services.blitz.util.IceMethodInvoker.invoke(IceMethodInvoker.java:179)
                        	at ome.services.throttling.Callback.run(Callback.java:56)
                        	at ome.services.throttling.InThreadThrottlingStrategy.callInvokerOnRawArgs(InThreadThrottlingStrategy.java:56)
                        	at ome.services.blitz.impl.AbstractAmdServant.callInvokerOnRawArgs(AbstractAmdServant.java:137)
                        	at ome.services.blitz.impl.ContainerI.updateDataObject_async(ContainerI.java:214)
                        	at sun.reflect.GeneratedMethodAccessor1120.invoke(Unknown Source)
                        	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                        	at java.lang.reflect.Method.invoke(Method.java:597)
                        	at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
                        	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
                        	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
                        	at omero.cmd.CallContext.invoke(CallContext.java:59)
                        	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
                        	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
                        	at $Proxy86.updateDataObject_async(Unknown Source)
                        	at omero.api._IContainerTie.updateDataObject_async(_IContainerTie.java:155)
                        	at omero.api._IContainerDisp.___updateDataObject(_IContainerDisp.java:464)
                        	at omero.api._IContainerDisp.__dispatch(_IContainerDisp.java:649)
                        	at IceInternal.Incoming.invoke(Incoming.java:159)
                        	at Ice.ConnectionI.invokeAll(ConnectionI.java:2037)
                        	at Ice.ConnectionI.message(ConnectionI.java:972)
                        	at IceInternal.ThreadPool.run(ThreadPool.java:577)
                        	at IceInternal.ThreadPool.access$100(ThreadPool.java:12)
                        	at IceInternal.ThreadPool$EventHandlerThread.run(ThreadPool.java:971)
                        "
    serverExceptionClass = "ome.conditions.GroupSecurityViolation"
    message = "ome.model.core.Image:Id_1548-modification violates group-security."
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
	at java.lang.reflect.Constructor.newInstance(Unknown Source)
	at java.lang.Class.newInstance0(Unknown Source)
	at java.lang.Class.newInstance(Unknown Source)
	at IceInternal.BasicStream$DynamicUserExceptionFactory.createAndThrow(BasicStream.java:2243)
	at IceInternal.BasicStream.throwException(BasicStream.java:1632)
	at IceInternal.Outgoing.throwUserException(Outgoing.java:442)
	at omero.api._IContainerDelM.updateDataObject(_IContainerDelM.java:755)
	at omero.api.IContainerPrxHelper.updateDataObject(IContainerPrxHelper.java:935)
	at omero.api.IContainerPrxHelper.updateDataObject(IContainerPrxHelper.java:907)
	at org.openmicroscopy.shoola.env.data.OMEROGateway.updateObject(OMEROGateway.java:3028)
	... 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(Unknown Source)
	at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.awt.EventQueue.access$000(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.run(Unknown Source)

Changed 7 years ago by bpindelski

comment:5 Changed 7 years ago by jburel

  • Resolution set to fixed
  • Status changed from reopened to closed

comment:6 Changed 7 years ago by jburel <j.burel@…>

(In [779d534b0feefd18c659dea53c3c7de51022f172/ome.git] on branch develop) Fix display of the description. (see #9023)

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.79563 sec.)

We're Hiring!