Task #5232 (closed)
Bug: Error creating PIXELDATA from rendering engine
Reported by: | cxallan | Owned by: | jamoore |
---|---|---|---|
Priority: | minor | Milestone: | OMERO-Beta4.3 |
Component: | General | Version: | n.a. |
Keywords: | n.a. | Cc: | |
Resources: | n.a. | Referenced By: | n.a. |
References: | n.a. | Remaining Time: | 0.0d |
Sprint: | 2011-05-19 (12) |
Description (last modified by cxallan)
Creating rendering engine for Pixels:1701... Traceback (most recent call last): File "create_rendering_engine.py", line 15, in <module> o.load() File "/home/callan/code/ome.git/dist/lib/python/omero_api_RenderingEngine_ice.py", line 235, in load return _M_omero.api.RenderingEngine._op_load.invoke(self, ((), _ctx)) omero.ApiUsageException: exception ::omero::ApiUsageException { serverStackTrace = ome.conditions.ApiUsageException: Id cannot be null for a proxy at ome.model.meta.Experimenter.<init>(Experimenter.java:71) at ome.services.pixeldata.PixelDataThread$2.doWork(PixelDataThread.java:133) at sun.reflect.GeneratedMethodAccessor234.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) 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:150) 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 $Proxy64.doWork(Unknown Source) at ome.services.util.Executor$Impl.execute(Executor.java:369) at ome.services.pixeldata.PixelDataThread.makeEvent(PixelDataThread.java:125) at ome.services.pixeldata.PixelDataThread.access$000(PixelDataThread.java:43) at ome.services.pixeldata.PixelDataThread$1.call(PixelDataThread.java:118) at ome.services.pixeldata.PixelDataThread$1.call(PixelDataThread.java:116) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) at java.util.concurrent.FutureTask.run(FutureTask.java:166) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) at java.lang.Thread.run(Thread.java:679) serverExceptionClass = ome.conditions.ApiUsageException message = Id cannot be null for a proxy }
Change History (5)
comment:1 Changed 13 years ago by cxallan
- Description modified (diff)
- Owner set to jmoore
comment:2 Changed 13 years ago by jmoore
- Remaining Time set to 0.5
- Status changed from new to accepted
comment:3 Changed 13 years ago by jmoore
Issue was that RE.load wasn't executin PixelsService.getPixelBuffer within a Executor method. Modifying that I get:
~/git/dist $ PYTHONPATH=$PYTHONPATH:lib/python python script.py Created rendering engine for: 5454 Resolution levels: 6 Resolution level: 5 Tile size: [240, 240] ~/git/dist $ rm /tmp/data/Pixels/Dir-005/5454_pyramid remove /tmp/data/Pixels/Dir-005/5454_pyramid? y ~/git/dist $ PYTHONPATH=$PYTHONPATH:lib/python python script.py Created rendering engine for: 5454 Traceback (most recent call last): File "script.py", line 16, in <module> o.load() File "/Users/moore/git/components/tools/OmeroPy/build/lib/omero_api_RenderingEngine_ice.py", line 235, in load return _M_omero.api.RenderingEngine._op_load.invoke(self, ((), _ctx)) omero.MissingPyramidException: exception ::omero::MissingPyramidException { serverStackTrace = ome.conditions.MissingPyramidException: Missing pyramid:/tmp/data/Pixels/Dir-005/5454_pyramid at ome.io.nio.PixelsService.handleMissingPyramid(PixelsService.java:447) at ome.io.nio.PixelsService.getPixelBuffer(PixelsService.java:317) at ome.services.RenderingBean$14.doWork(RenderingBean.java:1819) at sun.reflect.GeneratedMethodAccessor233.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:150) 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 $Proxy64.doWork(Unknown Source) at ome.services.util.Executor$Impl.execute(Executor.java:369) at ome.services.RenderingBean.getPixelBuffer(RenderingBean.java:1816) at ome.services.RenderingBean.load(RenderingBean.java:384) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 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.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 $Proxy74.load(Unknown Source) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 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:83) 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 $Proxy74.load(Unknown Source) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 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:136) at ome.services.blitz.impl.RenderingEngineI.load_async(RenderingEngineI.java:307) at omero.api._RenderingEngineTie.load_async(_RenderingEngineTie.java:246) at omero.api._RenderingEngineDisp.___load(_RenderingEngineDisp.java:726) at omero.api._RenderingEngineDisp.__dispatch(_RenderingEngineDisp.java:1654) 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.MissingPyramidException message = Missing pyramid:/tmp/data/Pixels/Dir-005/5454_pyramid backOff = 15000 pixelsID = 5454 } ~/git/dist $ less var/log/PixelData-0.log ...WAIT A BIT... ~/git/dist $ PYTHONPATH=$PYTHONPATH:lib/python python script.py Created rendering engine for: 5454 Resolution levels: 6 Resolution level: 5 Tile size: [240, 240]
comment:4 Changed 13 years ago by jmoore <josh@…>
- Remaining Time changed from 0.5 to 0
- Resolution set to fixed
- Status changed from accepted to closed
(In [929c11f2241129bd818397a3e5830cf4a21d54f4/ome.git] on branch develop) Wrapping getPixelBuffer in and checking for executor call (Fix #5232)
comment:5 Changed 13 years ago by jmoore <josh@…>
(In [2451339e97f1283c6b4458a8a498f45d8154a654/ome.git] on branch develop) Loosening restriction on current event id (See #5232)
Since some threads will not be able to see the other transaction,
requiring the current event id is too strict.
Test code: