[infinispan-dev] NPE in MapReduceTask running in cluster

Matej Lazar mlazar at redhat.com
Sun Sep 30 17:08:22 EDT 2012


NPE was caused by not configured/started cache on the second node.

It would be great to detect such situation and throw an other exception instead of NPE.


Matej.


On 27/09/12 15:12, Vladimir Blagojevic wrote:
> https://issues.jboss.org/browse/ISPN-2353
> On 12-09-27 1:47 PM, Matej Lazar wrote:
>> NPE ocures while running CapeDwarf cluster tests, see stack below.
>>
>> Null comes from MapReduceTask.invokeEverywhere
>>
>> 13:36:51,053 INFO  [org.jboss.as.clustering.infinispan] (http-/192.168.30.248:8080-1) JBAS010281: Started search_capedwarf-test cache from capedwarf container
>> 13:36:51,058 DEBUG [org.infinispan.distexec.mapreduce.MapReduceTask] (http-/192.168.30.248:8080-1) Invoking MapCombineCommand [keys=[], taskId=14c75f18-3861-4a06-8a4a-b1592d542d14] across entire cluster
>>
>> *13:36:51,065 DEBUG [org.infinispan.distexec.mapreduce.MapReduceTask] (http-/192.168.30.248:8080-1) Invoked MapCombineCommand [keys=[], taskId=14c75f18-3861-4a06-8a4a-b1592d542d14] across entire cluster, results are {node-b/capedwarf=null}*
>>
>> 13:36:51,067 DEBUG [org.infinispan.distexec.mapreduce.MapReduceTask] (http-/192.168.30.248:8080-1) Invoking MapCombineCommand [keys=[], taskId=14c75f18-3861-4a06-8a4a-b1592d542d14] locally
>> 13:36:51,069 DEBUG [org.infinispan.distexec.mapreduce.MapReduceTask] (http-/192.168.30.248:8080-1) Invoked MapCombineCommand [keys=[], taskId=14c75f18-3861-4a06-8a4a-b1592d542d14] locally
>>
>>
>> Any idea ?
>>
>> Thanks,
>> Matej.
>>
>>
>> java.lang.NullPointerException
>>     at org.infinispan.distexec.mapreduce.MapReduceTask.mergeResponse(MapReduceTask.java:530)
>>     at org.infinispan.distexec.mapreduce.MapReduceTask.executeMapPhaseWithLocalReduction(MapReduceTask.java:439)
>>     at org.infinispan.distexec.mapreduce.MapReduceTask.execute(MapReduceTask.java:328)
>>     at org.infinispan.distexec.mapreduce.MapReduceTask.execute(MapReduceTask.java:692)
>>     at org.jboss.capedwarf.search.CapedwarfSearchService.listIndexes(CapedwarfSearchService.java:94)
>>     at org.jboss.test.capedwarf.cluster.SearchTestCase.clear(SearchTestCase.java:360)
>>     at org.jboss.test.capedwarf.cluster.SearchTestCase.cleanpOnStart(SearchTestCase.java:51)
>>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>>     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>     at java.lang.reflect.Method.invoke(Method.java:601)
>>     at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45)
>>     at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
>>     at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42)
>>     at org.jboss.arquillian.junit.Arquillian$6$1.invoke(Arquillian.java:270)
>>     at org.jboss.arquillian.container.test.impl.execution.LocalTestExecuter.execute(LocalTestExecuter.java:60)
>>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>>     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>     at java.lang.reflect.Method.invoke(Method.java:601)
>>     at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:90)
>>     at org.jboss.arquillian.core.impl.EventContextImpl.invokeObservers(EventContextImpl.java:99)
>>     at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:81)
>>     at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:135)
>>     at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:115)
>>     at org.jboss.arquillian.core.impl.EventImpl.fire(EventImpl.java:67)
>>     at org.jboss.arquillian.container.test.impl.execution.ContainerTestExecuter.execute(ContainerTestExecuter.java:38)
>>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>>     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>     at java.lang.reflect.Method.invoke(Method.java:601)
>>     at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:90)
>>     at org.jboss.arquillian.core.impl.EventContextImpl.invokeObservers(EventContextImpl.java:99)
>>     at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:81)
>>     at org.jboss.arquillian.test.impl.TestContextHandler.createTestContext(TestContextHandler.java:89)
>>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>>     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>     at java.lang.reflect.Method.invoke(Method.java:601)
>>     at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:90)
>>     at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:88)
>>     at org.jboss.arquillian.test.impl.TestContextHandler.createClassContext(TestContextHandler.java:75)
>>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>>     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>     at java.lang.reflect.Method.invoke(Method.java:601)
>>     at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:90)
>>     at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:88)
>>     at org.jboss.arquillian.test.impl.TestContextHandler.createSuiteContext(TestContextHandler.java:60)
>>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>>     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>     at java.lang.reflect.Method.invoke(Method.java:601)
>>     at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:90)
>>     at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:88)
>>     at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:135)
>>     at org.jboss.arquillian.test.impl.EventTestRunnerAdaptor.test(EventTestRunnerAdaptor.java:111)
>>     at org.jboss.arquillian.junit.Arquillian$6.evaluate(Arquillian.java:263)
>>     at org.jboss.arquillian.junit.Arquillian$4.evaluate(Arquillian.java:226)
>>     at org.jboss.arquillian.junit.Arquillian.multiExecute(Arquillian.java:314)
>>     at org.jboss.arquillian.junit.Arquillian.access$100(Arquillian.java:46)
>>     at org.jboss.arquillian.junit.Arquillian$5.evaluate(Arquillian.java:240)
>>     at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263)
>>     at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68)
>>     at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47)
>>     at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231)
>>     at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60)
>>     at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229)
>>     at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50)
>>     at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222)
>>     at org.jboss.arquillian.junit.Arquillian$2.evaluate(Arquillian.java:185)
>>     at org.jboss.arquillian.junit.Arquillian.multiExecute(Arquillian.java:314)
>>     at org.jboss.arquillian.junit.Arquillian.access$100(Arquillian.java:46)
>>     at org.jboss.arquillian.junit.Arquillian$3.evaluate(Arquillian.java:199)
>>     at org.junit.runners.ParentRunner.run(ParentRunner.java:300)
>>     at org.jboss.arquillian.junit.Arquillian.run(Arquillian.java:147)
>>     at org.junit.runner.JUnitCore.run(JUnitCore.java:157)
>>     at org.junit.runner.JUnitCore.run(JUnitCore.java:136)
>>     at org.jboss.arquillian.junit.container.JUnitTestRunner.execute(JUnitTestRunner.java:65)
>>     at org.jboss.arquillian.protocol.servlet.runner.ServletTestRunner.executeTest(ServletTestRunner.java:160)
>>     at org.jboss.arquillian.protocol.servlet.runner.ServletTestRunner.execute(ServletTestRunner.java:126)
>>     at org.jboss.arquillian.protocol.servlet.runner.ServletTestRunner.doGet(ServletTestRunner.java:90)
>>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:734)
>>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
>>     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:329)
>>     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248)
>>     at org.jboss.weld.servlet.ConversationPropagationFilter.doFilter(ConversationPropagationFilter.java:62)
>>     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:280)
>>     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248)
>>     at org.jboss.capedwarf.appidentity.GAEFilter.doFilter(GAEFilter.java:57)
>>     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:280)
>>     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248)
>>     at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:275)
>>     at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:161)
>>     at org.jboss.modcluster.container.jbossweb.JBossWebContext$RequestListenerValve.event(JBossWebContext.java:67)
>>     at org.jboss.modcluster.container.jbossweb.JBossWebContext$RequestListenerValve.invoke(JBossWebContext.java:48)
>>     at org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:165)
>>     at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:155)
>>     at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
>>     at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>>     at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:372)
>>     at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:877)
>>     at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:679)
>>     at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:931)
>>     at java.lang.Thread.run(Thread.java:722)
>>
>> _______________________________________________
>> infinispan-dev mailing list
>> infinispan-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/infinispan-dev
> 



More information about the infinispan-dev mailing list