NullPointerException in LookupCacheImpl.notifyServiceMap
--------------------------------------------------------

                 Key: RIVER-402
                 URL: https://issues.apache.org/jira/browse/RIVER-402
             Project: River
          Issue Type: Bug
          Components: net_jini_lookup
    Affects Versions: River_2.1.2
            Reporter: Neil Ferguson


One of our automated tests fails periodically (roughly 1 in 5 times), due to 
the ServiceDiscoveryListener.serviceRemoved method not getting called 
sometimes. This seems to be due to a NullPointerException in 
LookupCacheImpl.notifyServiceMap, which seems to be triggered by us calling 
JoinManager.terminate. This is on Apache River 2.2.0.

Exception as follows:

java.lang.NullPointerException: null
        at 
net.jini.lookup.ServiceDiscoveryManager$LookupCacheImpl.notifyServiceMap(ServiceDiscoveryManager.java:1890)
 ~[jini-ext-2.2.0.jar:na]
        at 
net.jini.lookup.ServiceDiscoveryManager$LookupCacheImpl.access$300(ServiceDiscoveryManager.java:843)
 ~[jini-ext-2.2.0.jar:na]
        at 
net.jini.lookup.ServiceDiscoveryManager$LookupCacheImpl$LookupListener.notify(ServiceDiscoveryManager.java:859)
 ~[jini-ext-2.2.0.jar:na]
        at sun.reflect.GeneratedMethodAccessor42.invoke(Unknown Source) ~[na:na]
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
 ~[na:1.6.0_27]
        at java.lang.reflect.Method.invoke(Method.java:597) ~[na:1.6.0_27]
        at 
net.jini.jeri.BasicInvocationDispatcher.invoke(BasicInvocationDispatcher.java:1126)
 ~[jini-ext-2.2.0.jar:na]
        at 
net.jini.jeri.BasicInvocationDispatcher.dispatch(BasicInvocationDispatcher.java:608)
 ~[jini-ext-2.2.0.jar:na]
        at com.sun.jini.jeri.internal.runtime.Target$2.run(Target.java:487) 
~[jini-ext-2.2.0.jar:na]
        at 
net.jini.export.ServerContext.doWithServerContext(ServerContext.java:103) 
~[jini-ext-2.2.0.jar:na]
        at com.sun.jini.jeri.internal.runtime.Target.dispatch(Target.java:484) 
~[jini-ext-2.2.0.jar:na]
        at com.sun.jini.jeri.internal.runtime.Target.access$000(Target.java:57) 
~[jini-ext-2.2.0.jar:na]
        at com.sun.jini.jeri.internal.runtime.Target$1.run(Target.java:464) 
~[jini-ext-2.2.0.jar:na]
        at 
com.sun.jini.start.AggregatePolicyProvider$AggregateSecurityContext$2.run(AggregatePolicyProvider.java:527)
 ~[start-2.2.0.jar:na]
        at java.security.AccessController.doPrivileged(Native Method) 
~[na:1.6.0_27]
        at com.sun.jini.jeri.internal.runtime.Target.dispatch(Target.java:461) 
~[jini-ext-2.2.0.jar:na]
        at com.sun.jini.jeri.internal.runtime.Target.dispatch(Target.java:426) 
~[jini-ext-2.2.0.jar:na]
        at 
com.sun.jini.jeri.internal.runtime.DgcRequestDispatcher.dispatch(DgcRequestDispatcher.java:210)
 ~[jini-ext-2.2.0.jar:na]
        at 
net.jini.jeri.connection.ServerConnectionManager$Dispatcher.dispatch(ServerConnectionManager.java:147)
 ~[jini-ext-2.2.0.jar:na]
        at com.sun.jini.jeri.internal.mux.MuxServer$1$1.run(MuxServer.java:244) 
~[jini-ext-2.2.0.jar:na]
        at 
com.sun.jini.start.AggregatePolicyProvider$AggregateSecurityContext$1.run(AggregatePolicyProvider.java:513)
 ~[start-2.2.0.jar:na]
        at java.security.AccessController.doPrivileged(Native Method) 
~[na:1.6.0_27]
        at com.sun.jini.jeri.internal.mux.MuxServer$1.run(MuxServer.java:241) 
~[jini-ext-2.2.0.jar:na]
        at com.sun.jini.thread.ThreadPool$Worker.run(ThreadPool.java:136) 
~[jini-ext-2.2.0.jar:na]
        at java.lang.Thread.run(Thread.java:662) ~[na:1.6.0_27]
        at 
com.sun.jini.jeri.internal.runtime.Util.__________EXCEPTION_RECEIVED_FROM_SERVER__________(Util.java:108)
 ~[jini-ext-2.2.0.jar:na]
        at 
com.sun.jini.jeri.internal.runtime.Util.exceptionReceivedFromServer(Util.java:101)
 ~[jini-ext-2.2.0.jar:na]
        at 
net.jini.jeri.BasicInvocationHandler.unmarshalThrow(BasicInvocationHandler.java:1303)
 ~[jini-ext-2.2.0.jar:na]
        at 
net.jini.jeri.BasicInvocationHandler.invokeRemoteMethodOnce(BasicInvocationHandler.java:832)
 ~[jini-ext-2.2.0.jar:na]
        at 
net.jini.jeri.BasicInvocationHandler.invokeRemoteMethod(BasicInvocationHandler.java:659)
 ~[jini-ext-2.2.0.jar:na]
        at 
net.jini.jeri.BasicInvocationHandler.invoke(BasicInvocationHandler.java:528) 
~[jini-ext-2.2.0.jar:na]
        at $Proxy28.notify(Unknown Source) ~[na:na]
        at 
com.sun.jini.reggie.RegistrarImpl$EventTask.run(RegistrarImpl.java:1863) 
~[reggie-2.2.0.jar:na]
        at com.sun.jini.thread.TaskManager$TaskThread.run(TaskManager.java:331) 
[jini-ext-2.2.0.jar:na]

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to