Hi yangtools devs,

This POST request to add groups to a switch worked pretty well a few weeks back:

POST 
http://127.0.0.1:8181/restconf/config/opendaylight-inventory:nodes/node/openflow:1/
{
  "group": [
        {
          "group-id": 1000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-1",
          "group-type": "group-select"
        }
    ]
}

Now I get this:

{
    "errors": {
        "error": [
            {
                "error-type": "application",
                "error-tag": "operation-failed",
                "error-message": "Data did not pass validation.",
                "error-info": 
"org.opendaylight.yangtools.yang.data.api.schema.tree.ModifiedNodeDoesNotExistException:
 Node 
/(urn:opendaylight:inventory?revision=2013-08-19)nodes/node/node[{(urn:opendaylight:inventory?revision=2013-08-19)id=openflow:1}]/(urn:opendaylight:flow:inventory?revision=2013-08-19)group
 does not exist. Cannot apply modification to its children.\n\tat 
org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.checkTouchApplicable(AbstractNodeContainerModificationStrategy.java:281)\n\tat
 
org.opendaylight.yangtools.yang.data.impl.schema.tree.SchemaAwareApplyOperation.checkApplicable(SchemaAwareApplyOperation.java:125)\n\tat
 
org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.checkChildPreconditions(AbstractNodeContainerModificationStrategy.java:305)\n\tat
 
org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.checkMergeApplicable(Abst
 ractNodeContainerModificationStrategy.java:313)\n\tat 
org.opendaylight.yangtools.yang.data.impl.schema.tree.SchemaAwareApplyOperation.checkApplicable(SchemaAwareApplyOperation.java:131)\n\tat
 
org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.checkChildPreconditions(AbstractNodeContainerModificationStrategy.java:305)\n\tat
 
org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.checkMergeApplicable(AbstractNodeContainerModificationStrategy.java:313)\n\tat
 
org.opendaylight.yangtools.yang.data.impl.schema.tree.SchemaAwareApplyOperation.checkApplicable(SchemaAwareApplyOperation.java:131)\n\tat
 
org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.checkChildPreconditions(AbstractNodeContainerModificationStrategy.java:305)\n\tat
 
org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.checkMergeApplicable(AbstractNod
 eContainerModificationStrategy.java:313)\n\tat 
org.opendaylight.yangtools.yang.data.impl.schema.tree.SchemaAwareApplyOperation.checkApplicable(SchemaAwareApplyOperation.java:131)\n\tat
 
org.opendaylight.yangtools.yang.data.impl.schema.tree.StructuralContainerModificationStrategy.checkApplicable(StructuralContainerModificationStrategy.java:99)\n\tat
 
org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.checkChildPreconditions(AbstractNodeContainerModificationStrategy.java:305)\n\tat
 
org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.checkTouchApplicable(AbstractNodeContainerModificationStrategy.java:288)\n\tat
 
org.opendaylight.yangtools.yang.data.impl.schema.tree.SchemaAwareApplyOperation.checkApplicable(SchemaAwareApplyOperation.java:125)\n\tat
 
org.opendaylight.yangtools.yang.data.impl.schema.tree.RootModificationApplyOperation.checkApplicable(RootModificationApplyOperation.java:72)\n\tat
 o
 
rg.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractDataTreeTip.validate(AbstractDataTreeTip.java:35)\n\tat
 
org.opendaylight.controller.cluster.datastore.ShardDataTree.lambda$processNextPendingTransaction$0(ShardDataTree.java:723)\n\tat
 
org.opendaylight.controller.cluster.datastore.ShardDataTree.processNextPending(ShardDataTree.java:769)\n\tat
 
org.opendaylight.controller.cluster.datastore.ShardDataTree.processNextPendingTransaction(ShardDataTree.java:716)\n\tat
 
org.opendaylight.controller.cluster.datastore.ShardDataTree.startCanCommit(ShardDataTree.java:799)\n\tat
 
org.opendaylight.controller.cluster.datastore.SimpleShardDataTreeCohort.canCommit(SimpleShardDataTreeCohort.java:90)\n\tat
 
org.opendaylight.controller.cluster.datastore.CohortEntry.canCommit(CohortEntry.java:97)\n\tat
 
org.opendaylight.controller.cluster.datastore.ShardCommitCoordinator.handleCanCommit(ShardCommitCoordinator.java:236)\n\tat
 org.opendaylight.controller.cluster.datastore.ShardCommitCoordinato
 r.handleReadyLocalTransaction(ShardCommitCoordinator.java:200)\n\tat 
org.opendaylight.controller.cluster.datastore.Shard.handleReadyLocalTransaction(Shard.java:729)\n\tat
 
org.opendaylight.controller.cluster.datastore.Shard.handleNonRaftCommand(Shard.java:333)\n\tat
 
org.opendaylight.controller.cluster.raft.RaftActor.handleCommand(RaftActor.java:270)\n\tat
 
org.opendaylight.controller.cluster.common.actor.AbstractUntypedPersistentActor.onReceiveCommand(AbstractUntypedPersistentActor.java:44)\n\tat
 
akka.persistence.UntypedPersistentActor.onReceive(PersistentActor.scala:170)\n\tat
 
org.opendaylight.controller.cluster.common.actor.MeteringBehavior.apply(MeteringBehavior.java:104)\n\tat
 akka.actor.ActorCell$$anonfun$become$1.applyOrElse(ActorCell.scala:544)\n\tat 
akka.actor.Actor$class.aroundReceive(Actor.scala:502)\n\tat 
akka.persistence.UntypedPersistentActor.akka$persistence$Eventsourced$$super$aroundReceive(PersistentActor.scala:168)\n\tat
 akka.persistence.Eventsourced$$anon$1.s
 tateReceive(Eventsourced.scala:727)\n\tat 
akka.persistence.Eventsourced$class.aroundReceive(Eventsourced.scala:183)\n\tat 
akka.persistence.UntypedPersistentActor.aroundReceive(PersistentActor.scala:168)\n\tat
 akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)\n\tat 
akka.actor.ActorCell.invoke(ActorCell.scala:495)\n\tat 
akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)\n\tat 
akka.dispatch.Mailbox.run(Mailbox.scala:224)\n\tat 
akka.dispatch.Mailbox.exec(Mailbox.scala:234)\n\tat 
scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)\n\tat 
scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)\n\tat
 scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)\n\tat 
scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)\n"
            }
        ]
    }
}

PUT method works as usual, so has anything changed recently for this?

BR/Luis
_______________________________________________
openflowplugin-dev mailing list
[email protected]
https://lists.opendaylight.org/mailman/listinfo/openflowplugin-dev

Reply via email to