There was an issue with Restconf's ensureParents not working with augmentations,
the fix was merged a few moments ago.

https://bugs.opendaylight.org/show_bug.cgi?id=6358

Tomas

From: controller-dev-boun...@lists.opendaylight.org 
[mailto:controller-dev-boun...@lists.opendaylight.org] On Behalf Of Brady Allen 
Johnson
Sent: Monday, August 08, 2016 16:26
To: groupbasedpolicy-...@lists.opendaylight.org; 
controller-dev@lists.opendaylight.org; openflowplugin-...@lists.opendaylight.org
Subject: [controller-dev] Problems in master doing a PUT to 
restconf/config/opendaylight-inventory:nodes/node/openflow:1




+openflow plugin

On 08/08/16 16:05, Brady Allen Johnson wrote:
Hello,

I think there is a problem with the Openflow plugin or mdsal in master. I 
originally got this error with a GBP distribution that I built locally, so to 
eliminate possible problems with my local setup, I tried with this distro from 
Monday, August 8 from Nexus:

    
https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/org/opendaylight/groupbasedpolicy/distribution-karaf/0.4.0-SNAPSHOT/distribution-karaf-0.4.0-20160808.101440-223.tar.gz

The same problem described below works with this distro from Wednesday, August 
3:

    
https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/org/opendaylight/groupbasedpolicy/distribution-karaf/0.4.0-SNAPSHOT/distribution-karaf-0.4.0-20160803.220738-221.tar.gz


The problem:

When trying to run the GBP-SFC demo, I get the following error:
sending tunnel
PUT 
http://192.168.50.1:8181/restconf/config/opendaylight-inventory:nodes/node/openflow:1
{
    "node": [
        {
            "id": "openflow:1",
            "ofoverlay:tunnel": [
                {
                    "ip": "192.168.50.70",
                    "node-connector-id": "openflow:1:1",
                    "port": 6633,
                    "tunnel-type": "overlay:tunnel-type-vxlan-gpe"
                },
                {
                    "ip": "192.168.50.70",
                    "node-connector-id": "openflow:1:2",
                    "port": 4789,
                    "tunnel-type": "overlay:tunnel-type-vxlan"
                }
            ]
        }
    ]
}
{"errors":{"error":[{"error-type":"application","error-tag":"operation-failed","error-message":"Problem
 while PUT operations"}]}}
Traceback (most recent call last):
  File "./demo-symmetric-chain/rest.py", line 713, in <module>
    put(controller, DEFAULT_PORT, get_tunnel_uri_1(), get_tunnel_data_1(), True)
  File "./demo-symmetric-chain/rest.py", line 39, in put
    r.raise_for_status()
  File "/usr/lib/python2.7/dist-packages/requests/models.py", line 773, in 
raise_for_status
    raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 500 Server Error: Server Error

I also get these errors on the karaf console:
opendaylight-user@root>Exception in thread "CommitFutures-5" 
org.opendaylight.netconf.sal.restconf.impl.RestconfDocumentedException: errors: 
[RestconfError [error-type: application, error-tag: operation-failed, 
error-message: Data did not pass validation., error-info: 
TransactionCommitFailedException{message=Data did not pass validation., 
errorList=[RpcError [message=Data did not pass validation., severity=ERROR, 
errorType=APPLICATION, tag=operation-failed, applicationTag=null, info=null, 
cause=org.opendaylight.yangtools.yang.data.api.schema.tree.ModifiedNodeDoesNotExistException:
 Node /(urn:opendaylight:inventory?revision=2013-08-19)nodes/node does not 
exist. Cannot apply modification to its children.]]}
    at 
org.opendaylight.controller.cluster.datastore.ShardDataTree.processNextTransaction(ShardDataTree.java:340)
    at 
org.opendaylight.controller.cluster.datastore.ShardDataTree.startCanCommit(ShardDataTree.java:360)
    at 
org.opendaylight.controller.cluster.datastore.SimpleShardDataTreeCohort.canCommit(SimpleShardDataTreeCohort.java:85)
    at 
org.opendaylight.controller.cluster.datastore.CohortEntry.canCommit(CohortEntry.java:98)
    at 
org.opendaylight.controller.cluster.datastore.ShardCommitCoordinator.handleCanCommit(ShardCommitCoordinator.java:237)
    at 
org.opendaylight.controller.cluster.datastore.ShardCommitCoordinator.handleReadyLocalTransaction(ShardCommitCoordinator.java:201)
    at 
org.opendaylight.controller.cluster.datastore.Shard.handleReadyLocalTransaction(Shard.java:438)
    at 
org.opendaylight.controller.cluster.datastore.Shard.handleNonRaftCommand(Shard.java:240)
    at 
org.opendaylight.controller.cluster.raft.RaftActor.handleCommand(RaftActor.java:299)
    at 
org.opendaylight.controller.cluster.common.actor.AbstractUntypedPersistentActor.onReceiveCommand(AbstractUntypedPersistentActor.java:29)
    at 
akka.persistence.UntypedPersistentActor.onReceive(PersistentActor.scala:170)
    at 
org.opendaylight.controller.cluster.common.actor.MeteringBehavior.apply(MeteringBehavior.java:97)
    at akka.actor.ActorCell$$anonfun$become$1.applyOrElse(ActorCell.scala:544)
    at akka.actor.Actor$class.aroundReceive(Actor.scala:484)
    at 
akka.persistence.UntypedPersistentActor.akka$persistence$Eventsourced$$super$aroundReceive(PersistentActor.scala:168)
    at 
akka.persistence.Eventsourced$$anon$1.stateReceive(Eventsourced.scala:633)
    at akka.persistence.Eventsourced$class.aroundReceive(Eventsourced.scala:179)
    at 
akka.persistence.UntypedPersistentActor.aroundReceive(PersistentActor.scala:168)
    at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
    at akka.actor.ActorCell.invoke(ActorCell.scala:495)
    at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
    at akka.dispatch.Mailbox.run(Mailbox.scala:224)
    at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
    at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
    at 
scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
    at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
    at 
scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)
Caused by: 
org.opendaylight.yangtools.yang.data.api.schema.tree.ModifiedNodeDoesNotExistException:
 Node /(urn:opendaylight:inventory?revision=2013-08-19)nodes/node does not 
exist. Cannot apply modification to its children.
    at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.checkTouchApplicable(AbstractNodeContainerModificationStrategy.java:281)
    at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.MinMaxElementsValidation.checkTouchApplicable(MinMaxElementsValidation.java:106)
    at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.SchemaAwareApplyOperation.checkApplicable(SchemaAwareApplyOperation.java:125)
    at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.checkChildPreconditions(AbstractNodeContainerModificationStrategy.java:305)
    at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.checkTouchApplicable(AbstractNodeContainerModificationStrategy.java:288)
    at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.SchemaAwareApplyOperation.checkApplicable(SchemaAwareApplyOperation.java:125)
    at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.StructuralContainerModificationStrategy.checkApplicable(StructuralContainerModificationStrategy.java:97)
    at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.checkChildPreconditions(AbstractNodeContainerModificationStrategy.java:305)
    at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.checkTouchApplicable(AbstractNodeContainerModificationStrategy.java:288)
    at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.SchemaAwareApplyOperation.checkApplicable(SchemaAwareApplyOperation.java:125)
    at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.RootModificationApplyOperation.checkApplicable(RootModificationApplyOperation.java:72)
    at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractDataTreeTip.validate(AbstractDataTreeTip.java:37)
    at 
org.opendaylight.controller.cluster.datastore.ShardDataTree.processNextTransaction(ShardDataTree.java:324)
    ... 26 more
]]
    at 
org.opendaylight.netconf.sal.restconf.impl.RestconfImpl.handlingLoggerPut(RestconfImpl.java:729)
    at 
org.opendaylight.netconf.sal.restconf.impl.RestconfImpl$1.onFailure(RestconfImpl.java:696)
    at com.google.common.util.concurrent.Futures$6.run(Futures.java:1310)
    at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
Caused by: TransactionCommitFailedException{message=Data did not pass 
validation., errorList=[RpcError [message=Data did not pass validation., 
severity=ERROR, errorType=APPLICATION, tag=operation-failed, 
applicationTag=null, info=null, 
cause=org.opendaylight.yangtools.yang.data.api.schema.tree.ModifiedNodeDoesNotExistException:
 Node /(urn:opendaylight:inventory?revision=2013-08-19)nodes/node does not 
exist. Cannot apply modification to its children.]]}
    at 
org.opendaylight.controller.cluster.datastore.ShardDataTree.processNextTransaction(ShardDataTree.java:340)
    at 
org.opendaylight.controller.cluster.datastore.ShardDataTree.startCanCommit(ShardDataTree.java:360)
    at 
org.opendaylight.controller.cluster.datastore.SimpleShardDataTreeCohort.canCommit(SimpleShardDataTreeCohort.java:85)
    at 
org.opendaylight.controller.cluster.datastore.CohortEntry.canCommit(CohortEntry.java:98)
    at 
org.opendaylight.controller.cluster.datastore.ShardCommitCoordinator.handleCanCommit(ShardCommitCoordinator.java:237)
    at 
org.opendaylight.controller.cluster.datastore.ShardCommitCoordinator.handleReadyLocalTransaction(ShardCommitCoordinator.java:201)
    at 
org.opendaylight.controller.cluster.datastore.Shard.handleReadyLocalTransaction(Shard.java:438)
    at 
org.opendaylight.controller.cluster.datastore.Shard.handleNonRaftCommand(Shard.java:240)
    at 
org.opendaylight.controller.cluster.raft.RaftActor.handleCommand(RaftActor.java:299)
    at 
org.opendaylight.controller.cluster.common.actor.AbstractUntypedPersistentActor.onReceiveCommand(AbstractUntypedPersistentActor.java:29)
    at 
akka.persistence.UntypedPersistentActor.onReceive(PersistentActor.scala:170)
    at 
org.opendaylight.controller.cluster.common.actor.MeteringBehavior.apply(MeteringBehavior.java:97)
    at akka.actor.ActorCell$$anonfun$become$1.applyOrElse(ActorCell.scala:544)
    at akka.actor.Actor$class.aroundReceive(Actor.scala:484)
    at 
akka.persistence.UntypedPersistentActor.akka$persistence$Eventsourced$$super$aroundReceive(PersistentActor.scala:168)
    at 
akka.persistence.Eventsourced$$anon$1.stateReceive(Eventsourced.scala:633)
    at akka.persistence.Eventsourced$class.aroundReceive(Eventsourced.scala:179)
    at 
akka.persistence.UntypedPersistentActor.aroundReceive(PersistentActor.scala:168)
    at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
    at akka.actor.ActorCell.invoke(ActorCell.scala:495)
    at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
    at akka.dispatch.Mailbox.run(Mailbox.scala:224)
    at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
    at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
    at 
scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
    at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
    at 
scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)
Caused by: 
org.opendaylight.yangtools.yang.data.api.schema.tree.ModifiedNodeDoesNotExistException:
 Node /(urn:opendaylight:inventory?revision=2013-08-19)nodes/node does not 
exist. Cannot apply modification to its children.
    at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.checkTouchApplicable(AbstractNodeContainerModificationStrategy.java:281)
    at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.MinMaxElementsValidation.checkTouchApplicable(MinMaxElementsValidation.java:106)
    at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.SchemaAwareApplyOperation.checkApplicable(SchemaAwareApplyOperation.java:125)
    at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.checkChildPreconditions(AbstractNodeContainerModificationStrategy.java:305)
    at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.checkTouchApplicable(AbstractNodeContainerModificationStrategy.java:288)
    at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.SchemaAwareApplyOperation.checkApplicable(SchemaAwareApplyOperation.java:125)
    at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.StructuralContainerModificationStrategy.checkApplicable(StructuralContainerModificationStrategy.java:97)
    at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.checkChildPreconditions(AbstractNodeContainerModificationStrategy.java:305)
    at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.checkTouchApplicable(AbstractNodeContainerModificationStrategy.java:288)
    at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.SchemaAwareApplyOperation.checkApplicable(SchemaAwareApplyOperation.java:125)
    at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.RootModificationApplyOperation.checkApplicable(RootModificationApplyOperation.java:72)
    at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractDataTreeTip.validate(AbstractDataTreeTip.java:37)
    at 
org.opendaylight.controller.cluster.datastore.ShardDataTree.processNextTransaction(ShardDataTree.java:324)
    ... 26 more

Regards,

Brady





_______________________________________________

controller-dev mailing list

controller-dev@lists.opendaylight.org<mailto:controller-dev@lists.opendaylight.org>

https://lists.opendaylight.org/mailman/listinfo/controller-dev

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

Reply via email to