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

Opened 13 years ago

Closed 13 years ago

Last modified 13 years ago

Bug: Thumbnail figure

Reported by: jburel Owned by: jamoore
Priority: critical Milestone: OMERO-Beta4.3
Component: Scripting Version: n.a.
Keywords: n.a. Cc: jamoore
Resources: n.a. Referenced By: n.a.
References: n.a. Remaining Time: 0.0d
Sprint: 2011-02-10 (5)

Description

Trying to run script figure using the latest server code

java.lang.Exception: java.lang.Exception: org.openmicroscopy.shoola.env.data.DSAccessException: Cannot access data. 
Cannot create a figure for the specified images.
	at org.openmicroscopy.shoola.env.data.views.ProcessBatchCall.doStep(ProcessBatchCall.java:101)
	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:274)
	at org.openmicroscopy.shoola.util.concur.tasks.AsyncProcessor$Runner.run(AsyncProcessor.java:91)
	at java.lang.Thread.run(Thread.java:655)
Caused by: org.openmicroscopy.shoola.env.data.DSAccessException: Cannot access data. 
Cannot create a figure for the specified images.
	at org.openmicroscopy.shoola.env.data.OMEROGateway.handleException(OMEROGateway.java:948)
	at org.openmicroscopy.shoola.env.data.OMEROGateway.createFigure(OMEROGateway.java:6095)
	at org.openmicroscopy.shoola.env.data.OmeroImageServiceImpl.createFigure(OmeroImageServiceImpl.java:1172)
	at org.openmicroscopy.shoola.env.data.views.calls.FigureCreator$1.initialize(FigureCreator.java:78)
	at org.openmicroscopy.shoola.env.data.views.ProcessBatchCall.doStep(ProcessBatchCall.java:99)
	... 6 more
Caused by: org.openmicroscopy.shoola.env.data.ProcessException: Cannot run script with ID:2653
	at org.openmicroscopy.shoola.env.data.OMEROGateway.runScript(OMEROGateway.java:543)
	at org.openmicroscopy.shoola.env.data.OMEROGateway.createFigure(OMEROGateway.java:6016)
	... 9 more
Caused by: omero.InternalException
    serverStackTrace = "ome.conditions.InternalException:  Wrapped Exception: (java.lang.NullPointerException):
                        null
                        	at ome.security.basic.OmeroInterceptor.resetDetails(OmeroInterceptor.java:307)
                        	at ome.security.basic.OmeroInterceptor.onFlushDirty(OmeroInterceptor.java:182)
                        	at org.hibernate.event.def.DefaultFlushEntityEventListener.invokeInterceptor(DefaultFlushEntityEventListener.java:372)
                        	at org.hibernate.event.def.DefaultFlushEntityEventListener.handleInterception(DefaultFlushEntityEventListener.java:349)
                        	at org.hibernate.event.def.DefaultFlushEntityEventListener.scheduleUpdate(DefaultFlushEntityEventListener.java:287)
                        	at org.hibernate.event.def.DefaultFlushEntityEventListener.onFlushEntity(DefaultFlushEntityEventListener.java:155)
                        	at org.hibernate.event.def.AbstractFlushingEventListener.flushEntities(AbstractFlushingEventListener.java:219)
                        	at

Change History (14)

comment:1 Changed 13 years ago by wmoore

Hi JM -
I think I managed to get a similar error earlier today by selecting multiple Projects, then running the script.
I'm not sure where the error is coming from but I don't think this is an error in the script. There are no new files (stdout, stderr).

comment:2 Changed 13 years ago by jmoore

  • Summary changed from Thumbnail figure to Bug: Thumbnail figure

comment:3 Changed 13 years ago by jmoore

  • Remaining Time set to 0.5
  • Sprint set to 2011-02-10 (5)

Will, this should almost certainly be passed off to me, but it'd be really helpful if you could first provide a unit test under OmeroPy/test that reproduces.

comment:4 Changed 13 years ago by jmoore

I think I managed myslf:

  • bin/omero script upload
  • bin/omero script params
[omero@CentOS-55-64-minimal ALTERNATIVE-OMERO]$ bin/omero -p 24064 script upload script1.py 
Using session 2f43c79d-34bd-4c5f-8407-3840a0b87863 (jason@localhost). Idle timeout: 10.0 min. Current group: ome
Uploaded script as original file #373
[omero@CentOS-55-64-minimal ALTERNATIVE-OMERO]$ bin/omero -p 24064 script params 373
Using session 2f43c79d-34bd-4c5f-8407-3840a0b87863 (jason@localhost). Idle timeout: 10.0 min. Current group: ome
Traceback (most recent call last):
  File "bin/omero", line 123, in ?
    rv = omero.cli.argv()
  File "/home/omero/Jan27-rois/OMERO.server-Beta-4.2.3-DEV/lib/python/omero/cli.py", line 1165, in argv
    cli.invoke(args[1:])
  File "/home/omero/Jan27-rois/OMERO.server-Beta-4.2.3-DEV/lib/python/omero/cli.py", line 718, in invoke
    stop = self.onecmd(line, previous_args)
  File "/home/omero/Jan27-rois/OMERO.server-Beta-4.2.3-DEV/lib/python/omero/cli.py", line 787, in onecmd
    self.execute(line, previous_args)
  File "/home/omero/Jan27-rois/OMERO.server-Beta-4.2.3-DEV/lib/python/omero/cli.py", line 867, in execute
    args.func(args)
  File "/home/omero/Jan27-rois/OMERO.server-Beta-4.2.3-DEV/lib/python/omero/plugins/script.py", line 409, in params
    job_params = svc.getParams(script_id)
  File "/home/omero/Jan27-rois/OMERO.server-Beta-4.2.3-DEV/lib/python/omero_api_IScript_ice.py", line 138, in getParams
    return _M_omero.api.IScript._op_getParams.invoke(self, ((scriptID, ), _ctx))
omero.InternalException: exception ::omero::InternalException
{
    serverStackTrace = ome.conditions.InternalException:  Wrapped Exception: (java.lang.NullPointerException):
null
	at ome.security.basic.OmeroInterceptor.resetDetails(OmeroInterceptor.java:307)
	at ome.security.basic.OmeroInterceptor.onFlushDirty(OmeroInterceptor.java:182)
	at org.hibernate.event.def.DefaultFlushEntityEventListener.invokeInterceptor(DefaultFlushEntityEventListener.java:372)
	at org.hibernate.event.def.DefaultFlushEntityEventListener.handleInterception(DefaultFlushEntityEventListener.java:349)
	at org.hibernate.event.def.DefaultFlushEntityEventListener.scheduleUpdate(DefaultFlushEntityEventListener.java:287)
	at org.hibernate.event.def.DefaultFlushEntityEventListener.onFlushEntity(DefaultFlushEntityEventListener.java:155)
	at org.hibernate.event.def.AbstractFlushingEventListener.flushEntities(AbstractFlushingEventListener.java:219)
	at org.hibernate.event.def.AbstractFlushingEventListener.flushEverythingToExecutions(AbstractFlushingEventListener.java:99)
	at org.hibernate.event.def.DefaultAutoFlushEventListener.onAutoFlush(DefaultAutoFlushEventListener.java:58)
	at org.hibernate.impl.SessionImpl.autoFlushIfRequired(SessionImpl.java:1177)
	at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1701)
	at org.hibernate.impl.CriteriaImpl.list(CriteriaImpl.java:347)
	at org.hibernate.impl.CriteriaImpl.uniqueResult(CriteriaImpl.java:369)
	at ome.logic.QueryImpl$6.doInHibernate(QueryImpl.java:280)
	at org.springframework.orm.hibernate3.HibernateTemplate.doExecute(HibernateTemplate.java:406)
	at org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:339)
	at ome.logic.QueryImpl.findByString(QueryImpl.java:274)
	at ome.logic.TypesImpl.getEnumeration(TypesImpl.java:125)
	at ome.services.JobBean.setStatusAndMessage(JobBean.java:309)
	at ome.services.blitz.impl.SharedResourcesI$7.doWork(SharedResourcesI.java:491)
	at sun.reflect.GeneratedMethodAccessor272.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.services.util.Executor$Impl$Interceptor.invoke(Executor.java:439)
	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
	at ome.security.basic.EventHandler.invoke(EventHandler.java:146)
	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:231)
	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
	at ome.services.util.ServiceHandler.invoke(ServiceHandler.java:111)
	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
	at $Proxy62.doWork(Unknown Source)
	at ome.services.util.Executor$Impl.execute(Executor.java:369)
	at ome.services.blitz.impl.SharedResourcesI.updateJob(SharedResourcesI.java:483)
	at ome.services.blitz.impl.SharedResourcesI.acquireProcessor(SharedResourcesI.java:405)
	at omero.grid.ParamsHelper.generateScriptParams(ParamsHelper.java:137)
	at omero.grid.ParamsHelper.getOrCreateParams(ParamsHelper.java:94)
	at ome.services.blitz.impl.ScriptI$10.call(ScriptI.java:397)
	at ome.services.throttling.Callback2.run(Callback2.java:49)
	at ome.services.throttling.InThreadThrottlingStrategy.safeRunnableCall(InThreadThrottlingStrategy.java:80)
	at ome.services.blitz.impl.AbstractAmdServant.safeRunnableCall(AbstractAmdServant.java:155)
	at ome.services.blitz.impl.ScriptI.getParams_async(ScriptI.java:395)
	at omero.api._IScriptTie.getParams_async(_IScriptTie.java:85)
	at omero.api._IScriptDisp.___getParams(_IScriptDisp.java:347)
	at omero.api._IScriptDisp.__dispatch(_IScriptDisp.java:494)
	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.InternalException
    message =  Wrapped Exception: (java.lang.NullPointerException):
null
}

comment:5 Changed 13 years ago by wmoore

  • Owner changed from wmoore to jmoore

comment:6 Changed 13 years ago by jmoore

  • Status changed from new to accepted

comment:7 Changed 13 years ago by jmoore

  • Remaining Time changed from 0.5 to 0.75
  • Status changed from accepted to new

Just spent a good portion of the day on this, and it's going to take longer. Perhaps the new session code is causing GroupExperimenterMaps to be left unloaded. Not clear.

comment:8 Changed 13 years ago by jmoore

  • Status changed from new to accepted

comment:9 Changed 13 years ago by jmoore

  • Owner jmoore deleted
  • Status changed from accepted to new

comment:10 Changed 13 years ago by jmoore

  • Owner set to jmoore

comment:11 Changed 13 years ago by jmoore

  • Status changed from new to assigned

comment:12 Changed 13 years ago by Josh <josh@…>

  • Remaining Time changed from 0.75 to 0
  • Resolution set to fixed
  • Status changed from assigned to closed

(In [089941f88263061357cfec20e62598c23514788d/ome.git] on branch develop) Removing evicts from JobBean to prevent NPE in resetDetails (Fix #3929)

NPE was only thrown when no usermode processor was available to
process the job. Added a check to bin/omero script params as
well to print a nicer message.

comment:13 Changed 13 years ago by jmoore

For another example of an NPE from evict() see #2232 (r6657)

comment:14 Changed 13 years ago by jmoore <josh@…>

(In [613c4d63381ce6f69d338f1d23d875cb95bd68c7/ome.git] on branch dev_4_2) Removing evicts from JobBean to prevent NPE in resetDetails (Fix #3929)

NPE was only thrown when no usermode processor was available to
process the job. Added a check to bin/omero script params as
well to print a nicer message.

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

We're Hiring!