Hi, I have created a project using boron-SR3 archetype. In one of the yang I have augmented a container. In the code (File3.java) I am trying to write the data to that container to the DataStore, but I am getting IncorrectNestingException exception. The same code is working fine in the boron stable project. Below are the yang and code snippets. So is this a bug in the boron-SR3 ?
File1.yang : module test-controller { yang-version 1; namespace "http://www.test.com/controllerconfiguration/core"; prefix "testconfig"; description ""; revision "2016-09-22" { description "Initial revision of model"; } container controller { } } File2.yang : module device-config { yang-version 1; namespace "urn:opendaylight:params:xml:ns:yang:controller:config:sal-clustering-it:device-config"; prefix "deviceconfig"; import test-controller { prefix testconfig; revision-date 2016-09-22; } import yang-ext { prefix ext; } import ietf-inet-types { prefix "inet-types"; revision-date 2013-07-15; } revision "2016-09-28" { description "Initial revision of connector configuration model"; } grouping controller-common-group { container version-info { leaf version { type string; mandatory true; description "Controller version."; } } } /* * Augumented */ augment "/testconfig:controller" { ext:augment-identifier ControllerMgmtAugmentation; container controller-common-mgmt { config false; description "Controller version"; uses controller-common-group; } } } File3.java : VersionInfoBuilder versionInfoBuilder = new VersionInfoBuilder(); versionInfoBuilder.setVersion("17.1.1.1"); InstanceIdentifier<VersionInfo> in = InstanceIdentifier.create(Controller.class) .augmentation(ControllerMgmtAugmentation.class).child(ControllerCommonMgmt.class) .child(VersionInfo.class); WriteTransaction writeTranaction = dataBroker.newWriteOnlyTransaction(); writeTranaction.merge(LogicalDatastoreType.OPERATIONAL, in, versionInfoBuilder.build(), true); writeTranaction.submit(); File4.java : public interface ControllerMgmtAugmentation extends DataObject, Augmentation<Controller> { /** * Controller version and backup details. * * * * @return <code>org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.config.sal.clustering.it.device.config.rev160928.controller.ControllerCommonMgmt</code> <code>controllerCommonMgmt</code>, or <code>null</code> if not present */ ControllerCommonMgmt getControllerCommonMgmt(); } LOG Traces : 2017-04-14 17:33:17,565 | ERROR | on-dispatcher-34 | DataTreeChangeListenerActor | 176 - org.opendaylight.controller.sal-distributed-datastore - 1.4.3.Boron-SR3 | Error notify ing listener org.opendaylight.controller.md.sal.binding.impl.BindingDOMDataTreeChangeListenerAdapter@85aac52 org.opendaylight.yangtools.binding.data.codec.impl.IncorrectNestingException: Class interface org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.config.sal .clustering.it.device.config.rev160928.ControllerMgmtAugmentation is not valid child of interface org.opendaylight.yang.gen.v1.http.www.test.com.controllerconfiguration.core.rev160 922.Controller at org.opendaylight.yangtools.binding.data.codec.impl.IncorrectNestingException.create(IncorrectNestingException.java:28)[74:org.opendaylight.mdsal.binding-dom-codec:0.9.3. Boron-SR3] at org.opendaylight.yangtools.binding.data.codec.impl.DataContainerCodecContext.childNonNull(DataContainerCodecContext.java:180)[74:org.opendaylight.mdsal.binding-dom-codec :0.9.3.Boron-SR3] at org.opendaylight.yangtools.binding.data.codec.impl.DataObjectCodecContext.bindingPathArgumentChild(DataObjectCodecContext.java:184)[74:org.opendaylight.mdsal.binding-dom -codec:0.9.3.Boron-SR3] at org.opendaylight.yangtools.binding.data.codec.impl.BindingCodecContext.getCodecContextNode(BindingCodecContext.java:127)[74:org.opendaylight.mdsal.binding-dom-codec:0.9. 3.Boron-SR3] at org.opendaylight.yangtools.binding.data.codec.impl.BindingCodecContext.newWriter(BindingCodecContext.java:104)[74:org.opendaylight.mdsal.binding-dom-codec:0.9.3.Boron-SR 3] at org.opendaylight.yangtools.binding.data.codec.impl.BindingNormalizedNodeCodecRegistry.toNormalizedNode(BindingNormalizedNodeCodecRegistry.java:102)[74:org.opendaylight.m dsal.binding-dom-codec:0.9.3.Boron-SR3] at org.opendaylight.controller.md.sal.binding.impl.BindingToNormalizedNodeCodec.toNormalizedNode(BindingToNormalizedNodeCodec.java:135)[146:org.opendaylight.controller.sal- binding-broker-impl:1.4.3.Boron-SR3] at org.opendaylight.controller.md.sal.binding.impl.AbstractWriteTransaction.merge(AbstractWriteTransaction.java:53)[146:org.opendaylight.controller.sal-binding-broker-impl: 1.4.3.Boron-SR3] at org.opendaylight.controller.impl.ConnectorDTCL.onDataTreeChanged(ConnectorDTCL.java:41)[179:org.opendaylight.controller.test-impl:0.1.0.SNAPSHOT] at org.opendaylight.controller.md.sal.binding.impl.BindingDOMDataTreeChangeListenerAdapter.onDataTreeChanged(BindingDOMDataTreeChangeListenerAdapter.java:41)[146:org.openda ylight.controller.sal-binding-broker-impl:1.4.3.Boron-SR3] at org.opendaylight.controller.cluster.datastore.DataTreeChangeListenerActor.dataChanged(DataTreeChangeListenerActor.java:58)[176:org.opendaylight.controller.sal-distribute d-datastore:1.4.3.Boron-SR3] at org.opendaylight.controller.cluster.datastore.DataTreeChangeListenerActor.handleReceive(DataTreeChangeListenerActor.java:40)[176:org.opendaylight.controller.sal-distribu ted-datastore:1.4.3.Boron-SR3] at org.opendaylight.controller.cluster.common.actor.AbstractUntypedActor.onReceive(AbstractUntypedActor.java:26)[170:org.opendaylight.controller.sal-clustering-commons:1.4. 3.Boron-SR3] at akka.actor.UntypedActor$$anonfun$receive$1.applyOrElse(UntypedActor.scala:165)[158:com.typesafe.akka.actor:2.4.7] at akka.actor.Actor$class.aroundReceive(Actor.scala:484)[158:com.typesafe.akka.actor:2.4.7] at akka.actor.UntypedActor.aroundReceive(UntypedActor.scala:95)[158:com.typesafe.akka.actor:2.4.7] at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)[158:com.typesafe.akka.actor:2.4.7] at akka.actor.ActorCell.invoke(ActorCell.scala:495)[158:com.typesafe.akka.actor:2.4.7] at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)[158:com.typesafe.akka.actor:2.4.7] at akka.dispatch.Mailbox.run(Mailbox.scala:224)[158:com.typesafe.akka.actor:2.4.7] at akka.dispatch.Mailbox.exec(Mailbox.scala:234)[158:com.typesafe.akka.actor:2.4.7] at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)[154:org.scala-lang.scala-library:2.11.8.v20160304-115712-1706a37eb8] at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)[154:org.scala-lang.scala-library:2.11.8.v20160304-115712-1706a37eb8] at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)[154:org.scala-lang.scala-library:2.11.8.v20160304-115712-1706a37eb8] at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)[154:org.scala-lang.scala-library:2.11.8.v20160304-115712-1706a37eb8] 2017-04-14 17:36:43,318 | WARN | ssionScavenger-4 | teInvalidatingHashSessionManager | 199 - org.ops4j.pax.web.pax-web-jetty - 3.2.9 | Timing out for 1 session(s) with id 1hhckm7x 1lje1zujilxde8pq1 2017-04-14 17:36:43,320 | WARN | ssionScavenger-4 | teInvalidatingHashSessionManager | 199 - org.ops4j.pax.web.pax-web-jetty - 3.2.9 | Timing out for 1 session(s) with id 1eo5yv73 psibrvwqf3rjsmepy Regards -Satish
_______________________________________________ controller-dev mailing list controller-dev@lists.opendaylight.org https://lists.opendaylight.org/mailman/listinfo/controller-dev