Ales,
I am totally puzzled how is this possible, never seen it before. In
order for DefaultExecutorService to fail on line 950 with NPE, the
underlying Future field of DistributedTaskPart has to be set to null.
Future field is set only in two places, if task is executed locally [1]
or remotely [2]. However, in both cases how can a Callable submitted to
a JDK provided ExecutorService return null?
[1]
https://github.com/infinispan/infinispan/blob/master/core/src/main/java/o...
[2]
https://github.com/infinispan/infinispan/blob/master/core/src/main/java/o...
Would appreciate additional set of eyes and a sufficiently caffeinated head.
Regards,
Vladimir
On 13-01-03 9:32 PM, Ales Justin wrote:
@Vladimir: any idea why the NPE?
> OpenShift only, it occurs on a sequence of requests with no delay between them.
>
>
> Matej.
>
>
>
>
> On 03/01/13 20:58, Ales Justin wrote:
>> Can you reproduce this locally?
>> Or OpenShift only?
>>
>> Sent from my iPad
>>
>> On Jan 3, 2013, at 20:01, Matej Lazar <matejonnet(a)gmail.com> wrote:
>>
>>> The same error with replaced infinispan-core.jar
>>>
>>>
>>> Matej.
>>>
>>>
>>> On 03/01/13 18:01, Ales Justin wrote:
>>>> Can you try with Ispn 5.2.Beta6 -- it's already updated in upstream?
>>>>
>>>> On Jan 3, 2013, at 5:54 PM, Matej Lazar <matejonnet(a)gmail.com>
wrote:
>>>>
>>>>> Single node with our ToDo sample on OpenShift while inserting new
task:
>>>>>
>>>>>
>>>>> 11:49:29,088 ERROR
[org.infinispan.interceptors.InvocationContextInterceptor]
(http-127.4.92.129/127.4.92.129:8080-56) ISPN000136: Execution error:
org.infinispan.CacheException: Caught exception [java.lang.RuntimeException] while
invoking method [public void
org.jboss.capedwarf.datastore.notifications.AbstractPutRemoveCacheListener.onPut(org.infinispan.notifications.cachelistener.event.CacheEntryModifiedEvent)]
on listener instance: org.jboss.capedwarf.datastore.ns.NamespaceListener@1409af9
>>>>> at
org.infinispan.notifications.AbstractListenerImpl$ListenerInvocation$1.run(AbstractListenerImpl.java:205)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.util.concurrent.WithinThreadExecutor.execute(WithinThreadExecutor.java:44)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.notifications.AbstractListenerImpl$ListenerInvocation.invoke(AbstractListenerImpl.java:221)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.notifications.cachelistener.CacheNotifierImpl.notifyCacheEntryModified(CacheNotifierImpl.java:160)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.commands.write.PutKeyValueCommand.perform(PutKeyValueCommand.java:115)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.interceptors.CallInterceptor.handleDefault(CallInterceptor.java:110)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.commands.AbstractVisitor.visitPutKeyValueCommand(AbstractVisitor.java:62)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:77)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:118)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.interceptors.ReplicationInterceptor.handleCrudMethod(ReplicationInterceptor.java:273)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.interceptors.ReplicationInterceptor.visitPutKeyValueCommand(ReplicationInterceptor.java:244)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:77)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:118)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.interceptors.base.CommandInterceptor.handleDefault(CommandInterceptor.java:132)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.commands.AbstractVisitor.visitPutKeyValueCommand(AbstractVisitor.java:62)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:77)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:118)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.interceptors.CacheLoaderInterceptor.visitPutKeyValueCommand(CacheLoaderInterceptor.java:102)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.interceptors.ActivationInterceptor.visitPutKeyValueCommand(ActivationInterceptor.java:70)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:77)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:118)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.interceptors.EntryWrappingInterceptor.invokeNextAndApplyChanges(EntryWrappingInterceptor.java:211)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.interceptors.EntryWrappingInterceptor.visitPutKeyValueCommand(EntryWrappingInterceptor.java:149)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:77)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:118)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.query.backend.QueryInterceptor.visitPutKeyValueCommand(QueryInterceptor.java:127)
>>>>> at
org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:77)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:118)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.interceptors.locking.OptimisticLockingInterceptor.visitPutKeyValueCommand(OptimisticLockingInterceptor.java:142)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:77)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:118)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.interceptors.base.CommandInterceptor.handleDefault(CommandInterceptor.java:132)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.commands.AbstractVisitor.visitPutKeyValueCommand(AbstractVisitor.java:62)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:77)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:118)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.interceptors.TxInterceptor.enlistWriteAndInvokeNext(TxInterceptor.java:256)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.interceptors.TxInterceptor.visitPutKeyValueCommand(TxInterceptor.java:194)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:77)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:118)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.statetransfer.StateTransferInterceptor.handleTopologyAffectedCommand(StateTransferInterceptor.java:209)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.statetransfer.StateTransferInterceptor.handleWriteCommand(StateTransferInterceptor.java:192)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.statetransfer.StateTransferInterceptor.visitPutKeyValueCommand(StateTransferInterceptor.java:135)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:77)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:118)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.interceptors.CacheMgmtInterceptor.visitPutKeyValueCommand(CacheMgmtInterceptor.java:127)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:77)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:118)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.interceptors.InvocationContextInterceptor.handleAll(InvocationContextInterceptor.java:128)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.interceptors.InvocationContextInterceptor.handleDefault(InvocationContextInterceptor.java:92)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.commands.AbstractVisitor.visitPutKeyValueCommand(AbstractVisitor.java:62)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:77)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.interceptors.InterceptorChain.invoke(InterceptorChain.java:343)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.CacheImpl.executeCommandAndCommitIfNeeded(CacheImpl.java:1016)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at org.infinispan.CacheImpl.put(CacheImpl.java:712)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at org.infinispan.DecoratedCache.put(DecoratedCache.java:319)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.AbstractDelegatingCache.put(AbstractDelegatingCache.java:308)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.jboss.capedwarf.datastore.DatastoreServiceImpl.doPut(DatastoreServiceImpl.java:267)
[capedwarf-datastore-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
>>>>> at
org.jboss.capedwarf.datastore.DatastoreServiceImpl.putInTx(DatastoreServiceImpl.java:216)
[capedwarf-datastore-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
>>>>> at
org.jboss.capedwarf.datastore.DatastoreServiceImpl.put(DatastoreServiceImpl.java:154)
[capedwarf-datastore-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
>>>>> at
org.jboss.capedwarf.datastore.DatastoreServiceImpl.put(DatastoreServiceImpl.java:141)
[capedwarf-datastore-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
>>>>> at
org.jboss.capedwarf.datastore.AbstractDatastoreService$8.call(AbstractDatastoreService.java:153)
[capedwarf-datastore-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
>>>>> at
org.jboss.capedwarf.datastore.AbstractDatastoreService$8.call(AbstractDatastoreService.java:151)
[capedwarf-datastore-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
>>>>> at
org.jboss.capedwarf.datastore.CapedwarfDatastoreService$1.call(CapedwarfDatastoreService.java:72)
[capedwarf-datastore-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
>>>>> at
org.jboss.capedwarf.common.threads.DirectFuture.getInternal(DirectFuture.java:144)
[capedwarf-common-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
>>>>> at
org.jboss.capedwarf.common.threads.DirectFuture.get(DirectFuture.java:89)
[capedwarf-common-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
>>>>> at
org.jboss.capedwarf.datastore.CapedwarfDatastoreService.unwrap(CapedwarfDatastoreService.java:83)
[capedwarf-datastore-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
>>>>> at
org.jboss.capedwarf.datastore.CapedwarfDatastoreService.put(CapedwarfDatastoreService.java:134)
[capedwarf-datastore-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
>>>>> at
org.jboss.capedwarf.datastore.CapedwarfDatastoreService.put(CapedwarfDatastoreService.java:130)
[capedwarf-datastore-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
>>>>> at
org.jboss.capedwarf.log.CapedwarfLogService.requestStarted(CapedwarfLogService.java:252)
[capedwarf-log-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
>>>>> at
org.jboss.capedwarf.appidentity.GAEListener.requestInitialized(GAEListener.java:145)
[capedwarf-appidentity-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
>>>>> at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:134)
[jbossweb-7.2.0.Alpha5.jar:7.2.0.Alpha5]
>>>>> at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:97)
[jbossweb-7.2.0.Alpha5.jar:7.2.0.Alpha5]
>>>>> at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:102)
[jbossweb-7.2.0.Alpha5.jar:7.2.0.Alpha5]
>>>>> at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:336)
[jbossweb-7.2.0.Alpha5.jar:7.2.0.Alpha5]
>>>>> at
org.apache.coyote.http11.Http11NioProcessor.process(Http11NioProcessor.java:350)
[jbossweb-7.2.0.Alpha5.jar:7.2.0.Alpha5]
>>>>> at
org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.process(Http11NioProtocol.java:901)
[jbossweb-7.2.0.Alpha5.jar:7.2.0.Alpha5]
>>>>> at
org.apache.tomcat.util.net.NioEndpoint$ChannelProcessor.run(NioEndpoint.java:1025)
[jbossweb-7.2.0.Alpha5.jar:7.2.0.Alpha5]
>>>>> at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
[rt.jar:1.7.0_09-icedtea]
>>>>> at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
[rt.jar:1.7.0_09-icedtea]
>>>>> at java.lang.Thread.run(Thread.java:722)
[rt.jar:1.7.0_09-icedtea]
>>>>> Caused by: java.lang.RuntimeException:
java.util.concurrent.ExecutionException: java.lang.NullPointerException
>>>>> at
org.jboss.capedwarf.common.infinispan.InfinispanUtils.submit(InfinispanUtils.java:84)
[capedwarf-common-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
>>>>> at
org.jboss.capedwarf.datastore.notifications.AbstractCacheListener.executeCallable(AbstractCacheListener.java:67)
[capedwarf-datastore-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
>>>>> at
org.jboss.capedwarf.datastore.notifications.AbstractCacheListener.executeCallable(AbstractCacheListener.java:48)
[capedwarf-datastore-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
>>>>> at
org.jboss.capedwarf.datastore.ns.NamespaceListener.executeCallable(NamespaceListener.java:41)
[capedwarf-datastore-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
>>>>> at
org.jboss.capedwarf.datastore.ns.NamespaceListener.onPostPut(NamespaceListener.java:49)
[capedwarf-datastore-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
>>>>> at
org.jboss.capedwarf.datastore.notifications.AbstractPutRemoveCacheListener.onPut(AbstractPutRemoveCacheListener.java:48)
[capedwarf-datastore-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
>>>>> at sun.reflect.GeneratedMethodAccessor20.invoke(Unknown Source)
[:1.7.0_09-icedtea]
>>>>> at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[rt.jar:1.7.0_09-icedtea]
>>>>> at java.lang.reflect.Method.invoke(Method.java:601)
[rt.jar:1.7.0_09-icedtea]
>>>>> at
org.infinispan.notifications.AbstractListenerImpl$ListenerInvocation$1.run(AbstractListenerImpl.java:200)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> ... 79 more
>>>>> Caused by: java.util.concurrent.ExecutionException:
java.lang.NullPointerException
>>>>> at
org.infinispan.distexec.DefaultExecutorService$DistributedTaskPart.innerGet(DefaultExecutorService.java:950)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.infinispan.distexec.DefaultExecutorService$DistributedTaskPart.get(DefaultExecutorService.java:898)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> at
org.jboss.capedwarf.common.infinispan.InfinispanUtils.submit(InfinispanUtils.java:82)
[capedwarf-common-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
>>>>> ... 88 more
>>>>> Caused by: java.lang.NullPointerException
>>>>> at
org.infinispan.distexec.DefaultExecutorService$DistributedTaskPart.innerGet(DefaultExecutorService.java:935)
[infinispan-core-5.2.0.Beta5.jar:5.2.0.Beta5]
>>>>> ... 90 more
>>>>>
>>>>> --
>>> --
>>>
>>>
>>>
> --
>
>
>