[ome-users] NullPointerException in FileMaker

harri.jaalinoja at helsinki.fi harri.jaalinoja at helsinki.fi
Fri Aug 3 12:37:13 BST 2012


Hello,

looking at  
https://github.com/openmicroscopy/openmicroscopy/blob/master/components/blitz/src/ome/services/blitz/repo/FileMaker.java,

the NPE is thrown because there is no lock to release:
         try {
                 lock.release(); // line 132
             } catch (IOException e) {
                 log.warn("Failed to release lock");
             }

It seems lock is only initialized if getLine() is called, otherwise it  
is null:

     public String getLine() throws Exception {
         synchronized (mutex) {

             if (dbUuid == null) {
                 throw new InternalException("Not initialized");
             }

             lock = dotLockRaf.getChannel().lock();


So somehow the getLine call was omitted now?

Cheers,
Harri


Quoting harri.jaalinoja at helsinki.fi:

> Hello All,
> I noticed an error in the OMERO 4.4.1 logs (on RedHat5.8). I just  
> restarted OMERO server, so this in not initiated by user action  
> (unless OMERO stores jobs over shutdown and continues them after  
> restart: yesterday I left "combine images" script running).
>
> The stack trace is below. Any ideas what is wrong?
>
> Thanks,
> Harri
>
> ----
> 2012-08-03 13:28:16,981 WARN  [         
> ome.services.util.ServiceHandler] (2-thread-4) Method interface  
> ome.services.util.Executor$Work.doWork invocation took 6043
> 2012-08-03 13:28:16,981 ERROR  
> [.services.blitz.repo.AbstractRepositoryI] (2-thread-4) Unexpected  
> error in called executor on takeover
> ome.conditions.InternalException:  Wrapped Exception:  
> (java.lang.NullPointerException):
> null
> 	at ome.services.blitz.repo.FileMaker.close(FileMaker.java:132)
> 	at  
> ome.services.blitz.repo.AbstractRepositoryI$GetOrCreateRepo.doWork(AbstractRepositoryI.java:301)
> 	at sun.reflect.GeneratedMethodAccessor225.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:508)
> 	at  
> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
> 	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 $Proxy65.doWork(Unknown Source)
> 	at ome.services.util.Executor$Impl.execute(Executor.java:406)
> 	at ome.services.util.Executor$Impl.execute(Executor.java:350)
> 	at  
> ome.services.blitz.repo.AbstractRepositoryI.takeover(AbstractRepositoryI.java:120)
> 	at sun.reflect.GeneratedMethodAccessor240.invoke(Unknown Source)
> 	at  
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.springframework.util.MethodInvoker.invoke(MethodInvoker.java:273)
> 	at  
> org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean$MethodInvokingJob.executeInternal(MethodInvokingJobDetailFactoryBean.java:264)
> 	at  
> org.springframework.scheduling.quartz.QuartzJobBean.execute(QuartzJobBean.java:86)
> 	at org.quartz.core.JobRunShell.run(JobRunShell.java:203)
> 	at  
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> 	at  
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> 	at java.lang.Thread.run(Thread.java:662)
>
> _______________________________________________
> ome-users mailing list
> ome-users at lists.openmicroscopy.org.uk
> http://lists.openmicroscopy.org.uk/mailman/listinfo/ome-users
>





More information about the ome-users mailing list