Hi Folks,
I get a problem as following,anyone can gvie an idea?

ERROR info:
2017-09-01 22:15:15,925 | WARN  | lt-dispatcher-43 | ConcurrentDOMDataBroker    
      | 207 - org.opendaylight.controller.sal-distributed-datastore - 
1.5.0.Carbon | Tx: DOM-65 Error during phase CAN_COMMIT, starting Abort
OptimisticLockFailedException{message=Optimistic lock failed., 
errorList=[RpcError [message=Optimistic lock failed., severity=ERROR, 
errorType=APPLICATION, tag=resource-denied, applicationTag=null, info=null, 
cause=org.opendaylight.yangtools.yang.data.api.schema.tree.ConflictingModificationAppliedException:
 Node was replaced by other transaction.]]}
at 
org.opendaylight.controller.cluster.datastore.ShardDataTree.lambda$processNextPendingTransaction$0(ShardDataTree.java:750)[207:org.opendaylight.controller.sal-distributed-datastore:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.datastore.ShardDataTree.processNextPending(ShardDataTree.java:788)[207:org.opendaylight.controller.sal-distributed-datastore:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.datastore.ShardDataTree.processNextPendingTransaction(ShardDataTree.java:733)[207:org.opendaylight.controller.sal-distributed-datastore:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.datastore.ShardDataTree.startCanCommit(ShardDataTree.java:814)[207:org.opendaylight.controller.sal-distributed-datastore:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.datastore.SimpleShardDataTreeCohort.canCommit(SimpleShardDataTreeCohort.java:105)[207:org.opendaylight.controller.sal-distributed-datastore:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.datastore.CohortEntry.canCommit(CohortEntry.java:97)[207:org.opendaylight.controller.sal-distributed-datastore:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.datastore.ShardCommitCoordinator.handleCanCommit(ShardCommitCoordinator.java:236)[207:org.opendaylight.controller.sal-distributed-datastore:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.datastore.ShardCommitCoordinator.handleReadyLocalTransaction(ShardCommitCoordinator.java:200)[207:org.opendaylight.controller.sal-distributed-datastore:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.datastore.Shard.handleReadyLocalTransaction(Shard.java:623)[207:org.opendaylight.controller.sal-distributed-datastore:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.datastore.Shard.handleNonRaftCommand(Shard.java:313)[207:org.opendaylight.controller.sal-distributed-datastore:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.raft.RaftActor.handleCommand(RaftActor.java:270)[671:org.opendaylight.controller.sal-akka-raft:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.common.actor.AbstractUntypedPersistentActor.onReceiveCommand(AbstractUntypedPersistentActor.java:31)[670:org.opendaylight.controller.sal-clustering-commons:1.5.0.Carbon]
at 
akka.persistence.UntypedPersistentActor.onReceive(PersistentActor.scala:170)[188:com.typesafe.akka.persistence:2.4.17]
at 
org.opendaylight.controller.cluster.common.actor.MeteringBehavior.apply(MeteringBehavior.java:104)[670:org.opendaylight.controller.sal-clustering-commons:1.5.0.Carbon]
at 
akka.actor.ActorCell$$anonfun$become$1.applyOrElse(ActorCell.scala:544)[181:com.typesafe.akka.actor:2.4.17]
at 
akka.actor.Actor$class.aroundReceive(Actor.scala:497)[181:com.typesafe.akka.actor:2.4.17]
at 
akka.persistence.UntypedPersistentActor.akka$persistence$Eventsourced$$super$aroundReceive(PersistentActor.scala:168)[188:com.typesafe.akka.persistence:2.4.17]
at 
akka.persistence.Eventsourced$$anon$1.stateReceive(Eventsourced.scala:664)[188:com.typesafe.akka.persistence:2.4.17]
at 
akka.persistence.Eventsourced$class.aroundReceive(Eventsourced.scala:183)[188:com.typesafe.akka.persistence:2.4.17]
at 
akka.persistence.UntypedPersistentActor.aroundReceive(PersistentActor.scala:168)[188:com.typesafe.akka.persistence:2.4.17]
at 
akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)[181:com.typesafe.akka.actor:2.4.17]
at 
akka.actor.ActorCell.invoke(ActorCell.scala:495)[181:com.typesafe.akka.actor:2.4.17]
at 
akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)[181:com.typesafe.akka.actor:2.4.17]
at 
akka.dispatch.Mailbox.run(Mailbox.scala:224)[181:com.typesafe.akka.actor:2.4.17]
at 
akka.dispatch.Mailbox.exec(Mailbox.scala:234)[181:com.typesafe.akka.actor:2.4.17]
at 
scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)[177:org.scala-lang.scala-library:2.11.8.v20160304-115712-1706a37eb8]
at 
scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)[177:org.scala-lang.scala-library:2.11.8.v20160304-115712-1706a37eb8]
at 
scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)[177:org.scala-lang.scala-library:2.11.8.v20160304-115712-1706a37eb8]
at 
scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)[177:org.scala-lang.scala-library:2.11.8.v20160304-115712-1706a37eb8]
Caused by: 
org.opendaylight.yangtools.yang.data.api.schema.tree.ConflictingModificationAppliedException:
 Node was replaced by other transaction.
at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.SchemaAwareApplyOperation.checkConflicting(SchemaAwareApplyOperation.java:78)[86:org.opendaylight.yangtools.yang-data-impl:1.1.0.Carbon]
at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.SchemaAwareApplyOperation.checkNotConflicting(SchemaAwareApplyOperation.java:106)[86:org.opendaylight.yangtools.yang-data-impl:1.1.0.Carbon]
at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.SchemaAwareApplyOperation.checkWriteApplicable(SchemaAwareApplyOperation.java:170)[86:org.opendaylight.yangtools.yang-data-impl:1.1.0.Carbon]
at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.SchemaAwareApplyOperation.checkApplicable(SchemaAwareApplyOperation.java:128)[86:org.opendaylight.yangtools.yang-data-impl:1.1.0.Carbon]
at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.StructuralContainerModificationStrategy.checkApplicable(StructuralContainerModificationStrategy.java:99)[86:org.opendaylight.yangtools.yang-data-impl:1.1.0.Carbon]
at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.checkChildPreconditions(AbstractNodeContainerModificationStrategy.java:305)[86:org.opendaylight.yangtools.yang-data-impl:1.1.0.Carbon]
at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.checkTouchApplicable(AbstractNodeContainerModificationStrategy.java:288)[86:org.opendaylight.yangtools.yang-data-impl:1.1.0.Carbon]
at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.SchemaAwareApplyOperation.checkApplicable(SchemaAwareApplyOperation.java:125)[86:org.opendaylight.yangtools.yang-data-impl:1.1.0.Carbon]
at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.RootModificationApplyOperation.checkApplicable(RootModificationApplyOperation.java:72)[86:org.opendaylight.yangtools.yang-data-impl:1.1.0.Carbon]
at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractDataTreeTip.validate(AbstractDataTreeTip.java:35)[86:org.opendaylight.yangtools.yang-data-impl:1.1.0.Carbon]
at 
org.opendaylight.controller.cluster.datastore.ShardDataTree.lambda$processNextPendingTransaction$0(ShardDataTree.java:742)[207:org.opendaylight.controller.sal-distributed-datastore:1.5.0.Carbon]
... 28 more
2017-09-01 22:15:15,923 | ERROR | lt-dispatcher-27 | 
LocalThreePhaseCommitCohort      | 207 - 
org.opendaylight.controller.sal-distributed-datastore - 1.5.0.Carbon | Failed 
to prepare transaction member-1-datastore-config-fe-61-txn-37-0 on backend
OptimisticLockFailedException{message=Optimistic lock failed., 
errorList=[RpcError [message=Optimistic lock failed., severity=ERROR, 
errorType=APPLICATION, tag=resource-denied, applicationTag=null, info=null, 
cause=org.opendaylight.yangtools.yang.data.api.schema.tree.ConflictingModificationAppliedException:
 Node was replaced by other transaction.]]}
at 
org.opendaylight.controller.cluster.datastore.ShardDataTree.lambda$processNextPendingTransaction$0(ShardDataTree.java:750)[207:org.opendaylight.controller.sal-distributed-datastore:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.datastore.ShardDataTree.processNextPending(ShardDataTree.java:788)[207:org.opendaylight.controller.sal-distributed-datastore:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.datastore.ShardDataTree.processNextPendingTransaction(ShardDataTree.java:733)[207:org.opendaylight.controller.sal-distributed-datastore:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.datastore.ShardDataTree.startCanCommit(ShardDataTree.java:814)[207:org.opendaylight.controller.sal-distributed-datastore:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.datastore.SimpleShardDataTreeCohort.canCommit(SimpleShardDataTreeCohort.java:105)[207:org.opendaylight.controller.sal-distributed-datastore:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.datastore.CohortEntry.canCommit(CohortEntry.java:97)[207:org.opendaylight.controller.sal-distributed-datastore:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.datastore.ShardCommitCoordinator.handleCanCommit(ShardCommitCoordinator.java:236)[207:org.opendaylight.controller.sal-distributed-datastore:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.datastore.ShardCommitCoordinator.handleReadyLocalTransaction(ShardCommitCoordinator.java:200)[207:org.opendaylight.controller.sal-distributed-datastore:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.datastore.Shard.handleReadyLocalTransaction(Shard.java:623)[207:org.opendaylight.controller.sal-distributed-datastore:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.datastore.Shard.handleNonRaftCommand(Shard.java:313)[207:org.opendaylight.controller.sal-distributed-datastore:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.raft.RaftActor.handleCommand(RaftActor.java:270)[671:org.opendaylight.controller.sal-akka-raft:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.common.actor.AbstractUntypedPersistentActor.onReceiveCommand(AbstractUntypedPersistentActor.java:31)[670:org.opendaylight.controller.sal-clustering-commons:1.5.0.Carbon]
at 
akka.persistence.UntypedPersistentActor.onReceive(PersistentActor.scala:170)[188:com.typesafe.akka.persistence:2.4.17]
at 
org.opendaylight.controller.cluster.common.actor.MeteringBehavior.apply(MeteringBehavior.java:104)[670:org.opendaylight.controller.sal-clustering-commons:1.5.0.Carbon]
at 
akka.actor.ActorCell$$anonfun$become$1.applyOrElse(ActorCell.scala:544)[181:com.typesafe.akka.actor:2.4.17]
at 
akka.actor.Actor$class.aroundReceive(Actor.scala:497)[181:com.typesafe.akka.actor:2.4.17]
at 
akka.persistence.UntypedPersistentActor.akka$persistence$Eventsourced$$super$aroundReceive(PersistentActor.scala:168)[188:com.typesafe.akka.persistence:2.4.17]
at 
akka.persistence.Eventsourced$$anon$1.stateReceive(Eventsourced.scala:664)[188:com.typesafe.akka.persistence:2.4.17]
at 
akka.persistence.Eventsourced$class.aroundReceive(Eventsourced.scala:183)[188:com.typesafe.akka.persistence:2.4.17]
at 
akka.persistence.UntypedPersistentActor.aroundReceive(PersistentActor.scala:168)[188:com.typesafe.akka.persistence:2.4.17]
at 
akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)[181:com.typesafe.akka.actor:2.4.17]
at 
akka.actor.ActorCell.invoke(ActorCell.scala:495)[181:com.typesafe.akka.actor:2.4.17]
at 
akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)[181:com.typesafe.akka.actor:2.4.17]
at 
akka.dispatch.Mailbox.run(Mailbox.scala:224)[181:com.typesafe.akka.actor:2.4.17]
at 
akka.dispatch.Mailbox.exec(Mailbox.scala:234)[181:com.typesafe.akka.actor:2.4.17]
at 
scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)[177:org.scala-lang.scala-library:2.11.8.v20160304-115712-1706a37eb8]
at 
scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)[177:org.scala-lang.scala-library:2.11.8.v20160304-115712-1706a37eb8]
at 
scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)[177:org.scala-lang.scala-library:2.11.8.v20160304-115712-1706a37eb8]
at 
scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)[177:org.scala-lang.scala-library:2.11.8.v20160304-115712-1706a37eb8]
Caused by: 
org.opendaylight.yangtools.yang.data.api.schema.tree.ConflictingModificationAppliedException:
 Node was replaced by other transaction.
at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.SchemaAwareApplyOperation.checkConflicting(SchemaAwareApplyOperation.java:78)[86:org.opendaylight.yangtools.yang-data-impl:1.1.0.Carbon]
at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.SchemaAwareApplyOperation.checkNotConflicting(SchemaAwareApplyOperation.java:106)[86:org.opendaylight.yangtools.yang-data-impl:1.1.0.Carbon]
at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.SchemaAwareApplyOperation.checkWriteApplicable(SchemaAwareApplyOperation.java:170)[86:org.opendaylight.yangtools.yang-data-impl:1.1.0.Carbon]
at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.SchemaAwareApplyOperation.checkApplicable(SchemaAwareApplyOperation.java:128)[86:org.opendaylight.yangtools.yang-data-impl:1.1.0.Carbon]
at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.StructuralContainerModificationStrategy.checkApplicable(StructuralContainerModificationStrategy.java:99)[86:org.opendaylight.yangtools.yang-data-impl:1.1.0.Carbon]
at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.checkChildPreconditions(AbstractNodeContainerModificationStrategy.java:305)[86:org.opendaylight.yangtools.yang-data-impl:1.1.0.Carbon]
at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.checkTouchApplicable(AbstractNodeContainerModificationStrategy.java:288)[86:org.opendaylight.yangtools.yang-data-impl:1.1.0.Carbon]
at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.SchemaAwareApplyOperation.checkApplicable(SchemaAwareApplyOperation.java:125)[86:org.opendaylight.yangtools.yang-data-impl:1.1.0.Carbon]
at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.RootModificationApplyOperation.checkApplicable(RootModificationApplyOperation.java:72)[86:org.opendaylight.yangtools.yang-data-impl:1.1.0.Carbon]
at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractDataTreeTip.validate(AbstractDataTreeTip.java:35)[86:org.opendaylight.yangtools.yang-data-impl:1.1.0.Carbon]
at 
org.opendaylight.controller.cluster.datastore.ShardDataTree.lambda$processNextPendingTransaction$0(ShardDataTree.java:742)[207:org.opendaylight.controller.sal-distributed-datastore:1.5.0.Carbon]
... 28 more
2017-09-01 22:15:15,925 | INFO  | Event Dispatcher | SecuritydomainservProvider 
      | 668 - org.opendaylight.ticomm.allinone.securitydomain.serv-impl - 
0.1.0.SNAPSHOT | SecuritydomainservProvider Session Initiated
2017-09-01 22:15:15,928 | ERROR | on-dispatcher-79 | MDSALUtil                  
      | 338 - org.opendaylight.genius.mdsalutil-api - 0.2.0.Carbon | Error 
writing to datastore (path, data) : (InstanceIdentifier{targetType=interface 
org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.secdomainserv.rev170802.SecurityDomains,
 
path=[org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.secdomainserv.rev170802.SecurityDomains]},
 SecurityDomains [_securityDomain=[SecurityDomain [_key=SecurityDomainKey 
[_securityDomainId=0], _securityDomainId=0, _switches=[Switches 
[_key=SwitchesKey [_switchId=Uri [_value=openflow:1]], _switchId=Uri 
[_value=openflow:1], _switchPortId=[Uri [_value=openflow:1:LOCAL], Uri 
[_value=openflow:1:2], Uri [_value=openflow:1:1]], augmentation=[]], Switches 
[_key=SwitchesKey [_switchId=Uri [_value=openflow:1]], _switchId=Uri 
[_value=openflow:1], _switchPortId=[Uri [_value=openflow:1:2], Uri 
[_value=openflow:1:1], Uri [_value=openflow:1:LOCAL]], augmentation=[]]], 
_vlanId=0, augmentation=[]]], augmentation=[]])
2017-09-01 22:15:15,929 | ERROR | on-dispatcher-79 | DataChangeListener         
      | 670 - org.opendaylight.controller.sal-clustering-commons - 1.5.0.Carbon 
| Error notifying listener 
org.opendaylight.ticomm.allinone.securitydomain.securitydomainserv.impl.SecdomainservImpl
java.lang.RuntimeException: OptimisticLockFailedException{message=Optimistic 
lock failed., errorList=[RpcError [message=Optimistic lock failed., 
severity=ERROR, errorType=APPLICATION, tag=resource-denied, 
applicationTag=null, info=null, 
cause=org.opendaylight.yangtools.yang.data.api.schema.tree.ConflictingModificationAppliedException:
 Node was replaced by other transaction.]]}
at 
org.opendaylight.genius.mdsalutil.MDSALUtil.syncWrite(MDSALUtil.java:555)[338:org.opendaylight.genius.mdsalutil-api:0.2.0.Carbon]
at 
org.opendaylight.ticomm.allinone.securitydomain.securitydomainserv.impl.SecdomainservImpl.writeDataStoreModel(SecdomainservImpl.java:459)[668:org.opendaylight.ticomm.allinone.securitydomain.serv-impl:0.1.0.SNAPSHOT]
at 
org.opendaylight.ticomm.allinone.securitydomain.securitydomainserv.impl.SecdomainservImpl.onDataChanged(SecdomainservImpl.java:386)[668:org.opendaylight.ticomm.allinone.securitydomain.serv-impl:0.1.0.SNAPSHOT]
at 
org.opendaylight.controller.md.sal.binding.impl.AbstractForwardedDataBroker$TranslatingDataChangeInvoker.onDataChanged(AbstractForwardedDataBroker.java:143)[169:org.opendaylight.controller.sal-binding-broker-impl:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.datastore.DataChangeListener.dataChanged(DataChangeListener.java:72)[207:org.opendaylight.controller.sal-distributed-datastore:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.datastore.DataChangeListener.handleReceive(DataChangeListener.java:43)[207:org.opendaylight.controller.sal-distributed-datastore:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.common.actor.AbstractUntypedActor.onReceive(AbstractUntypedActor.java:28)[670:org.opendaylight.controller.sal-clustering-commons:1.5.0.Carbon]
at 
akka.actor.UntypedActor$$anonfun$receive$1.applyOrElse(UntypedActor.scala:165)[181:com.typesafe.akka.actor:2.4.17]
at 
akka.actor.Actor$class.aroundReceive(Actor.scala:497)[181:com.typesafe.akka.actor:2.4.17]
at 
akka.actor.UntypedActor.aroundReceive(UntypedActor.scala:95)[181:com.typesafe.akka.actor:2.4.17]
at 
akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)[181:com.typesafe.akka.actor:2.4.17]
at 
akka.actor.ActorCell.invoke(ActorCell.scala:495)[181:com.typesafe.akka.actor:2.4.17]
at 
akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)[181:com.typesafe.akka.actor:2.4.17]
at 
akka.dispatch.Mailbox.run(Mailbox.scala:224)[181:com.typesafe.akka.actor:2.4.17]
at 
akka.dispatch.Mailbox.exec(Mailbox.scala:234)[181:com.typesafe.akka.actor:2.4.17]
at 
scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)[177:org.scala-lang.scala-library:2.11.8.v20160304-115712-1706a37eb8]
at 
scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)[177:org.scala-lang.scala-library:2.11.8.v20160304-115712-1706a37eb8]
at 
scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)[177:org.scala-lang.scala-library:2.11.8.v20160304-115712-1706a37eb8]
at 
scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)[177:org.scala-lang.scala-library:2.11.8.v20160304-115712-1706a37eb8]
Caused by: OptimisticLockFailedException{message=Optimistic lock failed., 
errorList=[RpcError [message=Optimistic lock failed., severity=ERROR, 
errorType=APPLICATION, tag=resource-denied, applicationTag=null, info=null, 
cause=org.opendaylight.yangtools.yang.data.api.schema.tree.ConflictingModificationAppliedException:
 Node was replaced by other transaction.]]}
at 
org.opendaylight.controller.cluster.datastore.ShardDataTree.lambda$processNextPendingTransaction$0(ShardDataTree.java:750)[207:org.opendaylight.controller.sal-distributed-datastore:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.datastore.ShardDataTree.processNextPending(ShardDataTree.java:788)[207:org.opendaylight.controller.sal-distributed-datastore:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.datastore.ShardDataTree.processNextPendingTransaction(ShardDataTree.java:733)[207:org.opendaylight.controller.sal-distributed-datastore:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.datastore.ShardDataTree.startCanCommit(ShardDataTree.java:814)[207:org.opendaylight.controller.sal-distributed-datastore:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.datastore.SimpleShardDataTreeCohort.canCommit(SimpleShardDataTreeCohort.java:105)[207:org.opendaylight.controller.sal-distributed-datastore:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.datastore.CohortEntry.canCommit(CohortEntry.java:97)[207:org.opendaylight.controller.sal-distributed-datastore:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.datastore.ShardCommitCoordinator.handleCanCommit(ShardCommitCoordinator.java:236)[207:org.opendaylight.controller.sal-distributed-datastore:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.datastore.ShardCommitCoordinator.handleReadyLocalTransaction(ShardCommitCoordinator.java:200)[207:org.opendaylight.controller.sal-distributed-datastore:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.datastore.Shard.handleReadyLocalTransaction(Shard.java:623)[207:org.opendaylight.controller.sal-distributed-datastore:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.datastore.Shard.handleNonRaftCommand(Shard.java:313)[207:org.opendaylight.controller.sal-distributed-datastore:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.raft.RaftActor.handleCommand(RaftActor.java:270)[671:org.opendaylight.controller.sal-akka-raft:1.5.0.Carbon]
at 
org.opendaylight.controller.cluster.common.actor.AbstractUntypedPersistentActor.onReceiveCommand(AbstractUntypedPersistentActor.java:31)[670:org.opendaylight.controller.sal-clustering-commons:1.5.0.Carbon]
at 
akka.persistence.UntypedPersistentActor.onReceive(PersistentActor.scala:170)[188:com.typesafe.akka.persistence:2.4.17]
at 
org.opendaylight.controller.cluster.common.actor.MeteringBehavior.apply(MeteringBehavior.java:104)[670:org.opendaylight.controller.sal-clustering-commons:1.5.0.Carbon]
at 
akka.actor.ActorCell$$anonfun$become$1.applyOrElse(ActorCell.scala:544)[181:com.typesafe.akka.actor:2.4.17]
at 
akka.actor.Actor$class.aroundReceive(Actor.scala:497)[181:com.typesafe.akka.actor:2.4.17]
at 
akka.persistence.UntypedPersistentActor.akka$persistence$Eventsourced$$super$aroundReceive(PersistentActor.scala:168)[188:com.typesafe.akka.persistence:2.4.17]
at 
akka.persistence.Eventsourced$$anon$1.stateReceive(Eventsourced.scala:664)[188:com.typesafe.akka.persistence:2.4.17]
at 
akka.persistence.Eventsourced$class.aroundReceive(Eventsourced.scala:183)[188:com.typesafe.akka.persistence:2.4.17]
at 
akka.persistence.UntypedPersistentActor.aroundReceive(PersistentActor.scala:168)[188:com.typesafe.akka.persistence:2.4.17]
... 9 more
Caused by: 
org.opendaylight.yangtools.yang.data.api.schema.tree.ConflictingModificationAppliedException:
 Node was replaced by other transaction.
at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.SchemaAwareApplyOperation.checkConflicting(SchemaAwareApplyOperation.java:78)[86:org.opendaylight.yangtools.yang-data-impl:1.1.0.Carbon]
at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.SchemaAwareApplyOperation.checkNotConflicting(SchemaAwareApplyOperation.java:106)[86:org.opendaylight.yangtools.yang-data-impl:1.1.0.Carbon]
at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.SchemaAwareApplyOperation.checkWriteApplicable(SchemaAwareApplyOperation.java:170)[86:org.opendaylight.yangtools.yang-data-impl:1.1.0.Carbon]
at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.SchemaAwareApplyOperation.checkApplicable(SchemaAwareApplyOperation.java:128)[86:org.opendaylight.yangtools.yang-data-impl:1.1.0.Carbon]
at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.StructuralContainerModificationStrategy.checkApplicable(StructuralContainerModificationStrategy.java:99)[86:org.opendaylight.yangtools.yang-data-impl:1.1.0.Carbon]
at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.checkChildPreconditions(AbstractNodeContainerModificationStrategy.java:305)[86:org.opendaylight.yangtools.yang-data-impl:1.1.0.Carbon]
at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.checkTouchApplicable(AbstractNodeContainerModificationStrategy.java:288)[86:org.opendaylight.yangtools.yang-data-impl:1.1.0.Carbon]
at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.SchemaAwareApplyOperation.checkApplicable(SchemaAwareApplyOperation.java:125)[86:org.opendaylight.yangtools.yang-data-impl:1.1.0.Carbon]
at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.RootModificationApplyOperation.checkApplicable(RootModificationApplyOperation.java:72)[86:org.opendaylight.yangtools.yang-data-impl:1.1.0.Carbon]
at 
org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractDataTreeTip.validate(AbstractDataTreeTip.java:35)[86:org.opendaylight.yangtools.yang-data-impl:1.1.0.Carbon]
at 
org.opendaylight.controller.cluster.datastore.ShardDataTree.lambda$processNextPendingTransaction$0(ShardDataTree.java:742)[207:org.opendaylight.controller.sal-distributed-datastore:1.5.0.Carbon]
... 28 more

codes:
@SuppressWarnings("deprecation")
private void 
writeDataStoreModel(HashMap<HashMap<String,Integer>,HashMap<Uri,List<Uri>>> 
securityDomain2Port) {
SwitchesBuilder switchBuilder = null;
SecurityDomainBuilder securityDomainBuilder = null;
List<Switches> switchesList = null;
// 1 生成IID
InstanceIdentifier<SecurityDomains> securityDomainsIID = 
InstanceIdentifier.builder(SecurityDomains.class).build();
if(null == securityDomain2Port){
// 2.初始化DataStore yang模型
// 2.1 生成数据
System.out.println("Enter writeDataStoreModel... init");

securityDomainBuilder = new SecurityDomainBuilder();
SecurityDomain securityDomain = securityDomainBuilder.setKey(new 
SecurityDomainKey(DEFAULT_SECURITY_DOMAIN))
 .setSecurityDomainId(DEFAULT_SECURITY_DOMAIN)
 .setVlanId(DEFAULT_VLAN_DOMAIN)
 .build();

List<SecurityDomain> securityDomainList = new ArrayList<SecurityDomain>();
securityDomainList.add(securityDomain);

SecurityDomainsBuilder securityDomainsBuilder = new SecurityDomainsBuilder();
securityDomainsBuilder.setSecurityDomain(securityDomainList);

// 2.2 写入DataStore
MDSALUtil.syncWrite(this.dataBroker, LogicalDatastoreType.CONFIGURATION, 
securityDomainsIID, securityDomainsBuilder.build());
// WriteTransaction wx = this.dataBroker.newWriteOnlyTransaction();
// wx.put(LogicalDatastoreType.OPERATIONAL, securityDomainsIID, 
securityDomainsBuilder.build());
System.out.println("Out writeDataStoreModel... init");
}else{
// 3 重写DataStore yang模型
// 3.1 生成数据
String secDomId = null;
Set<Uri> switchIdSet = null;

List<SecurityDomain> securityDomainList = new ArrayList<SecurityDomain>();
HashMap<Uri,List<Uri>> switch2Port = null;

Set<HashMap<String,Integer>> secId2VlanIdSet =  securityDomain2Port.keySet();
for(HashMap<String,Integer> secId2VlanId:secId2VlanIdSet){
secDomId = secId2VlanId.keySet().iterator().next();

switch2Port = securityDomain2Port.get(secId2VlanId);
switchIdSet = switch2Port.keySet();

switchesList = new ArrayList<Switches>();
for(Uri switchId:switchIdSet){

switchBuilder = new SwitchesBuilder();
switchBuilder.setKey(new SwitchesKey(switchId))
 .setSwitchId(switchId)
 .setSwitchPortId(switch2Port.get(switchId));
switchesList.add(switchBuilder.build());

}

securityDomainBuilder = new SecurityDomainBuilder();
securityDomainBuilder.setKey(new SecurityDomainKey(secDomId))
 .setSecurityDomainId(secDomId)
 .setVlanId(secId2VlanId.get(secDomId))
 .setSwitches(switchesList);

securityDomainList.add(securityDomainBuilder.build());

}

SecurityDomainsBuilder securityDomainsBuilder = new SecurityDomainsBuilder();
securityDomainsBuilder.setSecurityDomain(securityDomainList);

// 3.2 写入DataStore
MDSALUtil.syncWrite(this.dataBroker, LogicalDatastoreType.CONFIGURATION, 
securityDomainsIID, securityDomainsBuilder.build());
// WriteTransaction wx = this.dataBroker.newWriteOnlyTransaction();
// wx.put(LogicalDatastoreType.OPERATIONAL, securityDomainsIID, 
securityDomainsBuilder.build());

}



}

yang model:
container security-domains{
     description "securtiy domains";
     config true;
     list security-domain{
     key security-domain-id;
     leaf security-domain-id{
     type string;
     }
     leaf vlan-id{
     type uint16;
     }
     list switches{
     key switch-id;
// protocol:node-id,eg.openflow:1
     leaf switch-id{
                    description "";
     type inet:uri;
     }
// protocol:node-id:port-id,eg.openflow:1:1
     leaf-list switch-port-id{
     type inet:uri;
     }
     }
     
     }
    }


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

Reply via email to