Uploaded image for project: 'ovsdb'
  1. ovsdb
  2. OVSDB-248

cannot create a bridge using northbound REST api with clustering.

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • None
    • unspecified
    • Other
    • None
    • Operating System: All
      Platform: All

    • 4908

      with a 3 node cluster with ovsdb southbound installed, a bridge cannot be created.

      this is coming from a failure in CSIT:

      ovsdb-csit-3node-clustering-only-beryllium

      3 node cluster, each node installs:
      odl-mdsal-clustering
      odl-ovsdb-southbound-impl-rest

      OVS control is configured like this:
      sudo ovs-vsctl set-manager tcp:

      {IP1}:6640 tcp:{IP2}:6640 tcp:{IP3}:6640

      The PUT can be sent to any of the controllers, but the URI is:
      http://{IP}:8181/restconf/config/network-topology:network-topology/topology/ovsdb:1/node/ovsdb://uuid/{UUID}/bridge/brtest

      The PUT data in CSIT is this:
      {
      "node": [
      {
      "node-id": "ovsdb://uuid/{UUID}/bridge/br01",
      "ovsdb:bridge-name": "br01",
      "ovsdb:protocol-entry": [
      { "protocol": "ovsdb:ovsdb-bridge-protocol-openflow-13" }
      ],
      "ovsdb:controller-entry": [
      {
      "target": "tcp:{IP1}

      :6640"
      },
      {
      "target": "tcp:

      {IP2}

      :6640"
      },
      {
      "target": "tcp:

      {IP3}

      :6640"
      }
      ],
      "ovsdb:bridge-other-configs": [

      { "bridge-other-config-key": "datapath-id", "bridge-other-config-value": "0000000000000001" }

      ],
      "ovsdb:managed-by": "/network-topology:network-topology/network-topology:topology[network-topology:topology-id='ovsdb:1']/network-topology:node[network-topology:node-id='ovsdb://uuid/

      {UUID}

      ']"
      }
      ]
      }

      The following ERROR is seen in the karaf.log of each controller after each PUT. It comes with each
      DELETE as well:

      2016-01-09 00:18:34,608 | ERROR | lt-dispatcher-20 | Shard | 136 - org.opendaylight.controller.sal-akka-raft - 1.3.0.SNAPSHOT | member-2-shard-topology-operational: Error applying replica null
      org.opendaylight.yangtools.yang.data.api.schema.tree.ModifiedNodeDoesNotExistException: Node /(urn:TBD:params:xml:ns:yang:network-topology?revision=2013-10-21)network-topology/topology does not exist. Cannot apply modification to its children.
      at org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.checkTouchApplicable(AbstractNodeContainerModificationStrategy.java:182)[55:org.opendaylight.yangtools.yang-data-impl:0.8.0.SNAPSHOT]
      at org.opendaylight.yangtools.yang.data.impl.schema.tree.MinMaxElementsValidation.checkTouchApplicable(MinMaxElementsValidation.java:145)[55:org.opendaylight.yangtools.yang-data-impl:0.8.0.SNAPSHOT]
      at org.opendaylight.yangtools.yang.data.impl.schema.tree.SchemaAwareApplyOperation.checkApplicable(SchemaAwareApplyOperation.java:125)[55:org.opendaylight.yangtools.yang-data-impl:0.8.0.SNAPSHOT]
      at org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.checkChildPreconditions(AbstractNodeContainerModificationStrategy.java:205)[55:org.opendaylight.yangtools.yang-data-impl:0.8.0.SNAPSHOT]
      at org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.checkTouchApplicable(AbstractNodeContainerModificationStrategy.java:189)[55:org.opendaylight.yangtools.yang-data-impl:0.8.0.SNAPSHOT]
      at org.opendaylight.yangtools.yang.data.impl.schema.tree.SchemaAwareApplyOperation.checkApplicable(SchemaAwareApplyOperation.java:125)[55:org.opendaylight.yangtools.yang-data-impl:0.8.0.SNAPSHOT]
      at org.opendaylight.yangtools.yang.data.impl.schema.tree.StructuralContainerModificationStrategy.checkApplicable(StructuralContainerModificationStrategy.java:95)[55:org.opendaylight.yangtools.yang-data-impl:0.8.0.SNAPSHOT]
      at org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.checkChildPreconditions(AbstractNodeContainerModificationStrategy.java:205)[55:org.opendaylight.yangtools.yang-data-impl:0.8.0.SNAPSHOT]
      at org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.checkTouchApplicable(AbstractNodeContainerModificationStrategy.java:189)[55:org.opendaylight.yangtools.yang-data-impl:0.8.0.SNAPSHOT]
      at org.opendaylight.yangtools.yang.data.impl.schema.tree.SchemaAwareApplyOperation.checkApplicable(SchemaAwareApplyOperation.java:125)[55:org.opendaylight.yangtools.yang-data-impl:0.8.0.SNAPSHOT]
      at org.opendaylight.yangtools.yang.data.impl.schema.tree.RootModificationApplyOperation.checkApplicable(RootModificationApplyOperation.java:72)[55:org.opendaylight.yangtools.yang-data-impl:0.8.0.SNAPSHOT]
      at org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractDataTreeTip.validate(AbstractDataTreeTip.java:38)[55:org.opendaylight.yangtools.yang-data-impl:0.8.0.SNAPSHOT]
      at org.opendaylight.controller.cluster.datastore.ShardDataTree.applyForeignCandidate(ShardDataTree.java:192)[139:org.opendaylight.controller.sal-distributed-datastore:1.3.0.SNAPSHOT]
      at org.opendaylight.controller.cluster.datastore.Shard.applyState(Shard.java:641)[139:org.opendaylight.controller.sal-distributed-datastore:1.3.0.SNAPSHOT]
      at org.opendaylight.controller.cluster.raft.RaftActor.handleCommand(RaftActor.java:228)[136:org.opendaylight.controller.sal-akka-raft:1.3.0.SNAPSHOT]
      at org.opendaylight.controller.cluster.common.actor.AbstractUntypedPersistentActor.onReceiveCommand(AbstractUntypedPersistentActor.java:36)[135:org.opendaylight.controller.sal-clustering-commons:1.3.0.SNAPSHOT]
      at org.opendaylight.controller.cluster.datastore.Shard.onReceiveCommand(Shard.java:274)[139:org.opendaylight.controller.sal-distributed-datastore:1.3.0.SNAPSHOT]
      at akka.persistence.UntypedPersistentActor.onReceive(Eventsourced.scala:430)[129:com.typesafe.akka.persistence.experimental:2.3.14]
      at org.opendaylight.controller.cluster.common.actor.MeteringBehavior.apply(MeteringBehavior.java:97)[135:org.opendaylight.controller.sal-clustering-commons:1.3.0.SNAPSHOT]
      at akka.actor.ActorCell$$anonfun$become$1.applyOrElse(ActorCell.scala:534)[124:com.typesafe.akka.actor:2.3.14]
      at akka.persistence.Recovery$State$class.process(Recovery.scala:30)[129:com.typesafe.akka.persistence.experimental:2.3.14]
      at akka.persistence.ProcessorImpl$$anon$2.process(Processor.scala:103)[129:com.typesafe.akka.persistence.experimental:2.3.14]
      at akka.persistence.ProcessorImpl$$anon$2.aroundReceive(Processor.scala:114)[129:com.typesafe.akka.persistence.experimental:2.3.14]
      at akka.persistence.Recovery$class.aroundReceive(Recovery.scala:265)[129:com.typesafe.akka.persistence.experimental:2.3.14]
      at akka.persistence.UntypedPersistentActor.akka$persistence$Eventsourced$$super$aroundReceive(Eventsourced.scala:428)[129:com.typesafe.akka.persistence.experimental:2.3.14]
      at akka.persistence.Eventsourced$$anon$2.doAroundReceive(Eventsourced.scala:82)[129:com.typesafe.akka.persistence.experimental:2.3.14]
      at akka.persistence.Eventsourced$$anon$2.aroundReceive(Eventsourced.scala:78)[129:com.typesafe.akka.persistence.experimental:2.3.14]
      at akka.persistence.Eventsourced$class.aroundReceive(Eventsourced.scala:369)[129:com.typesafe.akka.persistence.experimental:2.3.14]
      at akka.persistence.UntypedPersistentActor.aroundReceive(Eventsourced.scala:428)[129:com.typesafe.akka.persistence.experimental:2.3.14]
      at akka.actor.ActorCell.receiveMessage(ActorCell.scala:516)[124:com.typesafe.akka.actor:2.3.14]
      at akka.actor.ActorCell.invoke(ActorCell.scala:487)[124:com.typesafe.akka.actor:2.3.14]
      at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:238)[124:com.typesafe.akka.actor:2.3.14]
      at akka.dispatch.Mailbox.run(Mailbox.scala:220)[124:com.typesafe.akka.actor:2.3.14]
      at akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(AbstractDispatcher.scala:397)[124:com.typesafe.akka.actor:2.3.14]
      at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:262)[121:org.scala-lang.scala-library:2.10.1.v20130302-092018-VFINAL-33e32179fd]
      at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:975)[121:org.scala-lang.scala-library:2.10.1.v20130302-092018-VFINAL-33e32179fd]
      at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1478)[121:org.scala-lang.scala-library:2.10.1.v20130302-092018-VFINAL-33e32179fd]
      at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:104)[121:org.scala-lang.scala-library:2.10.1.v20130302-092018-VFINAL-33e32179fd]

            Unassigned Unassigned
            jluhrsen Jamo Luhrsen
            Votes:
            0 Vote for this issue
            Watchers:
            7 Start watching this issue

              Created:
              Updated:
              Resolved: