Uploaded image for project: 'lacp'
  1. lacp
  2. LACP-15

Installing lacp feature after the topology is learnt by the controller throws exception during lacp feature installation.

    XMLWordPrintable

Details

    • Bug
    • Status: Resolved
    • Resolution: Done
    • unspecified
    • None
    • General
    • None
    • Operating System: All
      Platform: All

    • 3767

    Description

      Bringup the controller with the openflowplugin.
      Connect a mininet topology with the controller.
      Let the controller learn the topology.
      Install the lacp feature.
      On installing the feature, throws the below exceptions
      ds-oper-thread-0 | DataObjectCodecContext | 106 - org.opendaylight.yangtools.binding-data-codec - 0.7.0.SNAPSHOT | Failed to load augmentation prototype for GeneratedTransferObject [packageName=org.opendaylight.yang.gen.v1.urn.opendaylight.lacp.node.rev150131, name=LacpNode, comment=, annotations=[], implements=[Type (org.opendaylight.yangtools.yang.binding.DataObject), Type (org.opendaylight.yangtools.yang.binding.Augmentation), GeneratedType [packageName=org.opendaylight.yang.gen.v1.urn.opendaylight.lacp.node.rev150131, name=LagNode, parent=null, comment=null, annotations=[], enclosedTypes=[], enumerations=[], constants=[Constant [type=Type (org.opendaylight.yangtools.yang.common.QName), name=QNAME, value=org.opendaylight.yangtools.yang.common.QName.cachedReference(org.opendaylight.yangtools.yang.common.QName.create("urn:opendaylight:lacp:node","2015-01-31","lag-node")), definingType=org.opendaylight.yang.gen.v1.urn.opendaylight.lacp.node.rev150131.LagNode]], methodSignatures=[MethodSignatureImpl [name=getSystemId, comment=Mac address component of system identifier, definingType=org.opendaylight.yang.gen.v1.urn.opendaylight.lacp.node.rev150131.LagNode, returnType=GeneratedTransferObject [packageName=org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev100924, name=MacAddress, comment=, annotations=[], extends=null, implements=[], enclosedTypes=[], constants=[], enumerations=[], properties=[GeneratedPropertyImpl [name=value, annotations=[], comment=, parent=org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev100924.MacAddress, returnType=Type (java.lang.String), isFinal=false, isReadOnly=true, modifier=PUBLIC]], equalsProperties=[], hashCodeProperties=[], stringProperties=[], methods=[]], params=[], annotations=[]], MethodSignatureImpl [name=getSystemPriority, comment=The priority assigned to the system,(Assigned by admin/system policy), definingType=org.opendaylight.yang.gen.v1.urn.opendaylight.lacp.node.rev150131.LagNode, returnType=Type (java.lang.Integer), params=[], annotations=[]], MethodSignatureImpl [name=getLacpAggregators, comment=List of lacp aggregators in the system, definingType=org.opendaylight.yang.gen.v1.urn.opendaylight.lacp.node.rev150131.LagNode, returnType=Type (java.util.List), params=[], annotations=[]], MethodSignatureImpl [name=getNonLagGroupid, comment=Group ID, definingType=org.opendaylight.yang.gen.v1.urn.opendaylight.lacp.node.rev150131.LagNode, returnType=Type (java.lang.Long), params=[], annotations=[]]]]], enclosedTypes=[], constants=[], enumerations=[], properties=, methods=[]]
      java.lang.ClassNotFoundException: org.opendaylight.yang.gen.v1.urn.opendaylight.lacp.node.rev150131.LacpNode

      at java.net.URLClassLoader$1.run(URLClassLoader.java:366)[:1.7.0_45]
      at java.net.URLClassLoader$1.run(URLClassLoader.java:355)[:1.7.0_45]
      at java.security.AccessController.doPrivileged(Native Method)[:1.7.0_45]
      at java.net.URLClassLoader.findClass(URLClassLoader.java:354)[:1.7.0_45]
      at java.lang.ClassLoader.loadClass(ClassLoader.java:425)[:1.7.0_45]
      at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)[:1.7.0_45]
      at java.lang.ClassLoader.loadClass(ClassLoader.java:358)[:1.7.0_45]
      at org.eclipse.core.runtime.internal.adaptor.ContextFinder.loadClass(ContextFinder.java:131)[org.eclipse.osgi-3.8.2.v20130124-134944.jar:]
      at java.lang.ClassLoader.loadClass(ClassLoader.java:358)[:1.7.0_45]
      at org.opendaylight.yangtools.util.ClassLoaderUtils.loadClass(ClassLoaderUtils.java:109)[64:org.opendaylight.yangtools.util:0.7.0.SNAPSHOT]
      at org.opendaylight.yangtools.util.ClassLoaderUtils.loadClassWithTCCL(ClassLoaderUtils.java:125)[64:org.opendaylight.yangtools.util:0.7.0.SNAPSHOT]
      at org.opendaylight.yangtools.sal.binding.generator.impl.GeneratedClassLoadingStrategy$TCCLClassLoadingStrategy.loadClass(GeneratedClassLoadingStrategy.java:44)[101:org.opendaylight.yangtools.binding-generator-impl:0.7.0.SNAPSHOT]
      at org.opendaylight.yangtools.sal.binding.generator.impl.ModuleInfoBackedContext.loadClass(ModuleInfoBackedContext.java:69)[101:org.opendaylight.yangtools.binding-generator-impl:0.7.0.SNAPSHOT]
      at org.opendaylight.yangtools.sal.binding.generator.impl.GeneratedClassLoadingStrategy.loadClass(GeneratedClassLoadingStrategy.java:27)[101:org.opendaylight.yangtools.binding-generator-impl:0.7.0.SNAPSHOT]
      at org.opendaylight.yangtools.binding.data.codec.impl.DataObjectCodecContext.getAugmentationPrototype(DataObjectCodecContext.java:252)[106:org.opendaylight.yangtools.binding-data-codec:0.7.0.SNAPSHOT]
      at org.opendaylight.yangtools.binding.data.codec.impl.DataObjectCodecContext.<init>(DataObjectCodecContext.java:107)[106:org.opendaylight.yangtools.binding-data-codec:0.7.0.SNAPSHOT]
      at org.opendaylight.yangtools.binding.data.codec.impl.ListNodeCodecContext.<init>(ListNodeCodecContext.java:22)[106:org.opendaylight.yangtools.binding-data-codec:0.7.0.SNAPSHOT]
      at org.opendaylight.yangtools.binding.data.codec.impl.KeyedListNodeCodecContext.<init>(KeyedListNodeCodecContext.java:29)[106:org.opendaylight.yangtools.binding-data-codec:0.7.0.SNAPSHOT]
      at org.opendaylight.yangtools.binding.data.codec.impl.DataContainerCodecPrototype.createInstance(DataContainerCodecPrototype.java:143)[106:org.opendaylight.yangtools.binding-data-codec:0.7.0.SNAPSHOT]
      at org.opendaylight.yangtools.binding.data.codec.impl.DataContainerCodecPrototype.get(DataContainerCodecPrototype.java:126)[106:org.opendaylight.yangtools.binding-data-codec:0.7.0.SNAPSHOT]
      at org.opendaylight.yangtools.binding.data.codec.impl.DataObjectCodecContext.bindingPathArgumentChild(DataObjectCodecContext.java:178)[106:org.opendaylight.yangtools.binding-data-codec:0.7.0.SNAPSHOT]
      at org.opendaylight.yangtools.binding.data.codec.impl.BindingCodecContext.getCodecContextNode(BindingCodecContext.java:127)[106:org.opendaylight.yangtools.binding-data-codec:0.7.0.SNAPSHOT]
      at org.opendaylight.yangtools.binding.data.codec.impl.InstanceIdentifierCodec.serialize(InstanceIdentifierCodec.java:29)[106:org.opendaylight.yangtools.binding-data-codec:0.7.0.SNAPSHOT]
      at org.opendaylight.yangtools.binding.data.codec.impl.InstanceIdentifierCodec.serialize(InstanceIdentifierCodec.java:19)[106:org.opendaylight.yangtools.binding-data-codec:0.7.0.SNAPSHOT]
      at org.opendaylight.yangtools.binding.data.codec.impl.BindingNormalizedNodeCodecRegistry.toYangInstanceIdentifier(BindingNormalizedNodeCodecRegistry.java:87)[106:org.opendaylight.yangtools.binding-data-codec:0.7.0.SNAPSHOT]
      at org.opendaylight.controller.md.sal.binding.impl.BindingToNormalizedNodeCodec.toYangInstanceIdentifierBlocking(BindingToNormalizedNodeCodec.java:99)[157:org.opendaylight.controller.sal-binding-broker-impl:1.2.0.SNAPSHOT]
      at org.opendaylight.controller.md.sal.binding.impl.AbstractForwardedTransaction.doRead(AbstractForwardedTransaction.java:63)[157:org.opendaylight.controller.sal-binding-broker-impl:1.2.0.SNAPSHOT]
      at org.opendaylight.controller.md.sal.binding.impl.BindingDOMReadWriteTransactionAdapter.read(BindingDOMReadWriteTransactionAdapter.java:31)[157:org.opendaylight.controller.sal-binding-broker-impl:1.2.0.SNAPSHOT]
      at org.opendaylight.openflowplugin.applications.statistics.manager.impl.StatListenCommitQueue$1.applyOperation(StatListenCommitQueue.java:109)[195:org.opendaylight.openflowplugin.applications.statistics-manager:0.1.0.SNAPSHOT]
      at org.opendaylight.openflowplugin.applications.statistics.manager.impl.StatisticsManagerImpl.run(StatisticsManagerImpl.java:186)[195:org.opendaylight.openflowplugin.applications.statistics-manager:0.1.0.SNAPSHOT]
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)[:1.7.0_45]
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)[:1.7.0_45]
      at java.lang.Thread.run(Thread.java:744)[:1.7.0_45]
      Similar exception is throw for the nodeconnector augmentation data object also.

      Also after the lacp feature comes up, the below exception is thrown.
      ERROR | config-pusher | ConfigTransactionControllerImpl | 113 - org.opendaylight.controller.config-manager - 0.3.0.SNAPSHOT | Commit failed on ModuleIdentifier

      {factoryName='lacp-main', instanceName='lacp-main'}

      in transaction TransactionIdentifier

      {name='ConfigTransaction-79-81'}

      org.opendaylight.yangtools.binding.data.codec.impl.IncorrectNestingException: Class interface org.opendaylight.yang.gen.v1.urn.opendaylight.lacp.node.rev150131.LacpNode is not valid child of interface org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node
      at org.opendaylight.yangtools.binding.data.codec.impl.IncorrectNestingException.create(IncorrectNestingException.java:28)
      at org.opendaylight.yangtools.binding.data.codec.impl.DataContainerCodecContext.childNonNull(DataContainerCodecContext.java:178)
      at org.opendaylight.yangtools.binding.data.codec.impl.DataObjectCodecContext.bindingPathArgumentChild(DataObjectCodecContext.java:178)
      at org.opendaylight.yangtools.binding.data.codec.impl.BindingCodecContext.getCodecContextNode(BindingCodecContext.java:127)
      at org.opendaylight.yangtools.binding.data.codec.impl.BindingCodecContext.newWriter(BindingCodecContext.java:104)
      at org.opendaylight.yangtools.binding.data.codec.impl.BindingNormalizedNodeCodecRegistry.toNormalizedNode(BindingNormalizedNodeCodecRegistry.java:102)
      at org.opendaylight.controller.md.sal.binding.impl.BindingToNormalizedNodeCodec.toNormalizedNode(BindingToNormalizedNodeCodec.java:133)
      at org.opendaylight.controller.md.sal.binding.impl.AbstractWriteTransaction.merge(AbstractWriteTransaction.java:53)
      at org.opendaylight.controller.md.sal.binding.impl.BindingDOMWriteTransactionAdapter.merge(BindingDOMWriteTransactionAdapter.java:46)
      at org.opendaylight.lacp.inventory.LacpNodeExtn.updateLacpNodeDS(LacpNodeExtn.java:286)
      at org.opendaylight.lacp.inventory.LacpNodeExtn.addNonLacpPort(LacpNodeExtn.java:142)
      at org.opendaylight.lacp.inventory.LacpSystem.readDataStore(LacpSystem.java:181)
      at org.opendaylight.yang.gen.v1.urn.opendaylight.lacp.lacp.main.rev141216.LacpMainModule.createInstance(LacpMainModule.java:90)
      at org.opendaylight.controller.config.spi.AbstractModule.getInstance(AbstractModule.java:73)
      at sun.reflect.GeneratedMethodAccessor16.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.7.0_45]
      at java.lang.reflect.Method.invoke(Method.java:606)[:1.7.0_45]
      at org.opendaylight.controller.config.manager.impl.dependencyresolver.DependencyResolverManager$ModuleInvocationHandler.handleInvocation(DependencyResolverManager.java:150)
      at com.google.common.reflect.AbstractInvocationHandler.invoke(AbstractInvocationHandler.java:87)
      at com.sun.proxy.$Proxy37.getInstance(Unknown Source)
      at org.opendaylight.controller.config.manager.impl.ConfigTransactionControllerImpl.secondPhaseCommit(ConfigTransactionControllerImpl.java:399)
      at org.opendaylight.controller.config.manager.impl.ConfigRegistryImpl.secondPhaseCommit(ConfigRegistryImpl.java:280)
      at org.opendaylight.controller.config.manager.impl.ConfigRegistryImpl.commitConfig(ConfigRegistryImpl.java:227)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:1.7.0_45]
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)[:1.7.0_45]
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.7.0_45]
      at java.lang.reflect.Method.invoke(Method.java:606)[:1.7.0_45]
      at sun.reflect.misc.Trampoline.invoke(MethodUtil.java:75)[:1.7.0_45]
      at sun.reflect.GeneratedMethodAccessor28.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.7.0_45]
      at java.lang.reflect.Method.invoke(Method.java:606)[:1.7.0_45]

      Attachments

        Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

              Unassigned Unassigned
              kalaiselvi_k@dell.com Kalaiselvi
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: