Hi Team

We wanted only one instance of RPC implementation available across the three 
nodes in a cluster, that's is the reason we are registering the Routed-RPC 
implementation with in a ClusterSingletonService (CSS) class, As CSS service is 
instantiated on only one node of a cluster, the routed RPC implementation is 
available in the same node.  Registration of Routed RPC is shown as under.

public class IdMgrService implements ClusterSingletonService {

    @Override
    public void instantiateServiceInstance() {
        if (rpcProviderRegistry != null) {
            rpcRegistration = 
rpcProviderRegistry.addRoutedRpcImplementation(ABCDService.class,
               ABCDServiceImpl);
            rpcRegistration.registerPath(PoolContext.class, IID);
        }
}


  1.  All the above happens in one blue print container.
  2.  There is another blueprint container in which a bean wants to consume the 
Routed RPC Service exposed in step 1 as shown below

<odl:rpc-service id="IdService"  
interface="org.opendaylight.yang.gen.v1.http.www. 
advaoptical.com.e.c.idManager.rev171012. ABCDService "/>
<bean id="eventPublisherServiceImpl"    
class="c.a.e.c.e.s.EventPublisherServiceImpl">
    <property name="IdService" ref = " IdService"/>
  </bean>


  1.  From the logs, it seems the Routed Rpc Service is injected into the bean, 
but below are the exceptions, when the api's are invoked on it. Will it take 
time to update the routed rpc entry into the routing able? Is it possible to 
know that it

Is available in routing table, so that routed rpc clients can invoke API on it?

(Or) my understanding is not correct?


java.util.concurrent.ExecutionException: 
org.opendaylight.controller.md.sal.dom.api.DOMRpcImplementationNotAvailableException:
 No implementation of RPC AbsoluteSchemaPath{path=[( 
http://www.advaoptical.com/e/c/id-manager?revision=2017-10-12)create-id-pool]} 
available
                at 
com.google.common.util.concurrent.AbstractFuture$Sync.getValue(AbstractFuture.java:299)
                at 
com.google.common.util.concurrent.AbstractFuture$Sync.get(AbstractFuture.java:286)
                at 
com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:116)
                at 
com.adva.ensemble.controller.eventmgr.impl.EventMgrProvider.createIdPool(EventMgrProvider.java:322)
                at 
com.adva.ensemble.controller.eventmgr.impl.EventMgrProvider.init(EventMgrProvider.java:175)
                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native 
Method)[:1.8.0_111]
                at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)[:1.8.0_111]
                at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.8.0_111]
                at java.lang.reflect.Method.invoke(Method.java:498)[:1.8.0_111]
                at 
org.apache.aries.blueprint.utils.ReflectionUtils.invoke(ReflectionUtils.java:299)[15:org.apache.aries.blueprint.core:1.6.1]
                at 
org.apache.aries.blueprint.container.BeanRecipe.invoke(BeanRecipe.java:980)[15:org.apache.aries.blueprint.core:1.6.1]
                at 
org.apache.aries.blueprint.container.BeanRecipe.runBeanProcInit(BeanRecipe.java:736)[15:org.apache.aries.blueprint.core:1.6.1]
                at 
org.apache.aries.blueprint.container.BeanRecipe.internalCreate2(BeanRecipe.java:848)[15:org.apache.aries.blueprint.core:1.6.1]
                at 
org.apache.aries.blueprint.container.BeanRecipe.internalCreate(BeanRecipe.java:811)[15:org.apache.aries.blueprint.core:1.6.1]
                at 
org.apache.aries.blueprint.di.AbstractRecipe$1.call(AbstractRecipe.java:79)[15:org.apache.aries.blueprint.core:1.6.1]
                at 
java.util.concurrent.FutureTask.run(FutureTask.java:266)[:1.8.0_111]
                at 
org.apache.aries.blueprint.di.AbstractRecipe.create(AbstractRecipe.java:88)[15:org.apache.aries.blueprint.core:1.6.1]
                at 
org.apache.aries.blueprint.container.BlueprintRepository.createInstances(BlueprintRepository.java:255)[15:org.apache.aries.blueprint.core:1.6.1]
                at 
org.apache.aries.blueprint.container.BlueprintRepository.createAll(BlueprintRepository.java:186)[15:org.apache.aries.blueprint.core:1.6.1]
                at 
org.apache.aries.blueprint.container.BlueprintContainerImpl.instantiateEagerComponents(BlueprintContainerImpl.java:724)[15:org.apache.aries.blueprint.core:1.6.1]
                at 
org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:411)[15:org.apache.aries.blueprint.core:1.6.1]
                at 
org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:276)[15:org.apache.aries.blueprint.core:1.6.1]
                at 
org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:300)[15:org.apache.aries.blueprint.core:1.6.1]
                at 
org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:269)[15:org.apache.aries.blueprint.core:1.6.1]
                at 
org.apache.aries.blueprint.container.BlueprintExtender.access$900(BlueprintExtender.java:68)[15:org.apache.aries.blueprint.core:1.6.1]
                at 
org.apache.aries.blueprint.container.BlueprintExtender$BlueprintContainerServiceImpl.createContainer(BlueprintExtender.java:602)[15:org.apache.aries.blueprint.core:1.6.1]
                at 
org.opendaylight.controller.blueprint.BlueprintBundleTracker.modifiedBundle(BlueprintBundleTracker.java:177)[147:org.opendaylight.controller.blueprint:0.5.3.Boron-SR3]
                at 
org.opendaylight.controller.blueprint.BlueprintBundleTracker.addingBundle(BlueprintBundleTracker.java:158)[147:org.opendaylight.controller.blueprint:0.5.3.Boron-SR3]
                at 
org.opendaylight.controller.blueprint.BlueprintBundleTracker.addingBundle(BlueprintBundleTracker.java:50)[147:org.opendaylight.controller.blueprint:0.5.3.Boron-SR3]
                at 
org.osgi.util.tracker.BundleTracker$Tracked.customizerAdding(BundleTracker.java:467)[karaf-org.osgi.core.jar:]
                at 
org.osgi.util.tracker.BundleTracker$Tracked.customizerAdding(BundleTracker.java:414)[karaf-org.osgi.core.jar:]
                at 
org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256)[karaf-org.osgi.core.jar:]
                at 
org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:229)[karaf-org.osgi.core.jar:]
                at 
org.osgi.util.tracker.BundleTracker$Tracked.bundleChanged(BundleTracker.java:443)[karaf-org.osgi.core.jar:]
                at 
org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:847)[org.eclipse.osgi-3.8.2.v20130124-134944.jar:]
                at 
org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)[org.eclipse.osgi-3.8.2.v20130124-134944.jar:]
                at 
org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)[org.eclipse.osgi-3.8.2.v20130124-134944.jar:]
                at 
org.eclipse.osgi.framework.internal.core.Framework.publishBundleEventPrivileged(Framework.java:1568)[org.eclipse.osgi-3.8.2.v20130124-134944.jar:]
                at 
org.eclipse.osgi.framework.internal.core.Framework.publishBundleEvent(Framework.java:1504)[org.eclipse.osgi-3.8.2.v20130124-134944.jar:]
                at 
org.eclipse.osgi.framework.internal.core.Framework.publishBundleEvent(Framework.java:1499)[org.eclipse.osgi-3.8.2.v20130124-134944.jar:]
                at 
org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:391)[org.eclipse.osgi-3.8.2.v20130124-134944.jar:]
                at 
org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:390)[org.eclipse.osgi-3.8.2.v20130124-134944.jar:]
                at 
org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1176)[org.eclipse.osgi-3.8.2.v20130124-134944.jar:]
                at 
org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:559)[org.eclipse.osgi-3.8.2.v20130124-134944.jar:]
                at 
org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:544)[org.eclipse.osgi-3.8.2.v20130124-134944.jar:]
                at 
org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:457)[org.eclipse.osgi-3.8.2.v20130124-134944.jar:]
                at 
org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:243)[org.eclipse.osgi-3.8.2.v20130124-134944.jar:]
                at 
org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:438)[org.eclipse.osgi-3.8.2.v20130124-134944.jar:]
                at 
org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:1)[org.eclipse.osgi-3.8.2.v20130124-134944.jar:]
                at 
org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)[org.eclipse.osgi-3.8.2.v20130124-134944.jar:]
                at 
org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340)[org.eclipse.osgi-3.8.2.v20130124-134944.jar:]
Caused by: 
org.opendaylight.controller.md.sal.dom.api.DOMRpcImplementationNotAvailableException:
 No implementation of RPC 
AbsoluteSchemaPath{path=[(http://www.advaoptical.com/e/c/id-manager?revision=2017-10-12)create-id-pool]}
 available
                at 
org.opendaylight.controller.md.sal.dom.broker.impl.DOMRpcRoutingTable.invokeRpc(DOMRpcRoutingTable.java:173)
                at 
org.opendaylight.controller.md.sal.dom.broker.impl.DOMRpcRouter.invokeRpc(DOMRpcRouter.java:102)
                at Proxy6141e5e5_a3ee_46eb_868c_226353b091fb.invokeRpc(Unknown 
Source)
                at Proxybd151db8_bd66_47b1_bd03_1dd7fe480eb3.invokeRpc(Unknown 
Source)
                at 
org.opendaylight.controller.md.sal.binding.impl.RpcServiceAdapter.invoke0(RpcServiceAdapter.java:65)
                at 
org.opendaylight.controller.md.sal.binding.impl.RpcServiceAdapter.access$000(RpcServiceAdapter.java:43)
                at 
org.opendaylight.controller.md.sal.binding.impl.RpcServiceAdapter$RpcInvocationStrategy.invoke(RpcServiceAdapter.java:159)
                at 
org.opendaylight.controller.md.sal.binding.impl.RpcServiceAdapter.invoke(RpcServiceAdapter.java:96)
                at com.sun.proxy.$Proxy122.createIdPool(Unknown Source)
                at 
c.a.e.c.eventmgr.impl.EventMgrProvider.createIdPool(EventMgrProvider.java:321)



Thanks for your support in advance



Regards
Vikram
_______________________________________________
controller-dev mailing list
controller-dev@lists.opendaylight.org
https://lists.opendaylight.org/mailman/listinfo/controller-dev

Reply via email to