[BGPCEP-768] PingPong transaction with mpls-labeled route Created: 19/Mar/18  Updated: 14/Jun/18  Resolved: 23/Mar/18

Status: Verified
Project: bgpcep
Component/s: BGP
Affects Version/s: Fluorine
Fix Version/s: Fluorine

Type: Bug Priority: Medium
Reporter: Tomas Markovic Assignee: Claudio David Gasparini
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: File exabgp3.cfg     File reconfigure_odl.py    

 Description   

When running exabgp with this particular route I get this error:

2018-03-19T14:22:24,267 | ERROR | opendaylight-cluster-data-notification-dispatcher-326 | DataTreeChangeListenerActor      | 164 - org.opendaylight.controller.sal-clustering-commons - 1.8.0.SNAPSHOT | member-1-shard-default-operational: Error notifying listener org.opendaylight.controller.cluster.databroker.compat.LegacyDOMDataBrokerAdapter$2$$Lambda$1074/990344665@3f6bf5f
java.lang.IllegalStateException: New transaction PingPongTransaction{delegate=org.opendaylight.controller.cluster.databroker.compat.LegacyDOMDataBrokerAdapter$DOMDataTransactionAdapter@46f42145} raced with transaction PingPongTransaction{delegate=org.opendaylight.controller.cluster.databroker.compat.LegacyDOMDataBrokerAdapter$DOMDataTransactionAdapter@7c92b7e}
	at org.opendaylight.controller.md.sal.dom.broker.impl.PingPongTransactionChain.slowAllocateTransaction(PingPongTransactionChain.java:183) ~[161:org.opendaylight.controller.sal-broker-impl:1.8.0.SNAPSHOT]
	at org.opendaylight.controller.md.sal.dom.broker.impl.PingPongTransactionChain.allocateTransaction(PingPongTransactionChain.java:195) ~[161:org.opendaylight.controller.sal-broker-impl:1.8.0.SNAPSHOT]
	at org.opendaylight.controller.md.sal.dom.broker.impl.PingPongTransactionChain.newReadWriteTransaction(PingPongTransactionChain.java:445) ~[161:org.opendaylight.controller.sal-broker-impl:1.8.0.SNAPSHOT]
	at org.opendaylight.controller.md.sal.dom.broker.impl.PingPongTransactionChain.newWriteOnlyTransaction(PingPongTransactionChain.java:487) ~[161:org.opendaylight.controller.sal-broker-impl:1.8.0.SNAPSHOT]
	at org.opendaylight.controller.md.sal.binding.impl.BindingDOMTransactionChainAdapter.newWriteOnlyTransaction(BindingDOMTransactionChainAdapter.java:76) ~[158:org.opendaylight.controller.sal-binding-broker-impl:1.8.0.SNAPSHOT]
	at org.opendaylight.protocol.bgp.rib.impl.EffectiveRibInWriter$AdjInTracker.onDataTreeChanged(EffectiveRibInWriter.java:159) ~[126:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT]
	at org.opendaylight.controller.md.sal.binding.impl.BindingDOMDataTreeChangeListenerAdapter.onDataTreeChanged(BindingDOMDataTreeChangeListenerAdapter.java:42) ~[158:org.opendaylight.controller.sal-binding-broker-impl:1.8.0.SNAPSHOT]
	at org.opendaylight.controller.cluster.databroker.compat.LegacyDOMDataBrokerAdapter$2.lambda$registerDataTreeChangeListener$0(LegacyDOMDataBrokerAdapter.java:105) ~[171:org.opendaylight.controller.sal-distributed-datastore:1.8.0.SNAPSHOT]
	at org.opendaylight.controller.cluster.datastore.DataTreeChangeListenerActor.dataChanged(DataTreeChangeListenerActor.java:67) [171:org.opendaylight.controller.sal-distributed-datastore:1.8.0.SNAPSHOT]
	at org.opendaylight.controller.cluster.datastore.DataTreeChangeListenerActor.handleReceive(DataTreeChangeListenerActor.java:41) [171:org.opendaylight.controller.sal-distributed-datastore:1.8.0.SNAPSHOT]
	at org.opendaylight.controller.cluster.common.actor.AbstractUntypedActor.onReceive(AbstractUntypedActor.java:38) [164:org.opendaylight.controller.sal-clustering-commons:1.8.0.SNAPSHOT]
	at akka.actor.UntypedActor$$anonfun$receive$1.applyOrElse(UntypedActor.scala:166) [62:com.typesafe.akka.actor:2.5.4]
	at akka.actor.Actor.aroundReceive(Actor.scala:514) [62:com.typesafe.akka.actor:2.5.4]
	at akka.actor.Actor.aroundReceive$(Actor.scala:512) [62:com.typesafe.akka.actor:2.5.4]
	at akka.actor.UntypedActor.aroundReceive(UntypedActor.scala:96) [62:com.typesafe.akka.actor:2.5.4]
	at akka.actor.ActorCell.receiveMessage(ActorCell.scala:527) [62:com.typesafe.akka.actor:2.5.4]
	at akka.actor.ActorCell.invoke(ActorCell.scala:496) [62:com.typesafe.akka.actor:2.5.4]
	at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257) [62:com.typesafe.akka.actor:2.5.4]
	at akka.dispatch.Mailbox.run(Mailbox.scala:224) [62:com.typesafe.akka.actor:2.5.4]
	at akka.dispatch.Mailbox.exec(Mailbox.scala:234) [62:com.typesafe.akka.actor:2.5.4]
	at akka.dispatch.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260) [62:com.typesafe.akka.actor:2.5.4]
	at akka.dispatch.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339) [62:com.typesafe.akka.actor:2.5.4]
	at akka.dispatch.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979) [62:com.typesafe.akka.actor:2.5.4]
	at akka.dispatch.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107) [62:com.typesafe.akka.actor:2.5.4]

Steps to reproduce:
1) start bin/karaf (fluorine tested)
2) run in karaf console>

feature:install odl-restconf odl-bgpcep-bgp odl-bgpcep-bgp-config-example

3)./reconfigure_odl.py (from attachements)
4)run:

env exabgp.tcp.port=1790 exabgp --debug exabgp3.cfg

5)check $KARAF_HOME/data/log/karaf.log
and find the errors.
6)check full rib with

curl -H "Accept: application/json" -u admin:admin "http://localhost:8181/restconf/operational/bgp-rib:bgp-rib/rib/example-bgp-rib"

Route is present in

http://localhost:8181/restconf/operational/bgp-rib:bgp-rib/rib/example-bgp-rib/peer/bgp:%2F%2F127.0.0.2/adj-rib-in

however it's not in adj-rib-in or effective-rib-in or loc-rib



 Comments   
Comment by Claudio David Gasparini [ 22/Mar/18 ]

https://git.opendaylight.org/gerrit/#/c/69796/

Generated at Wed Feb 07 19:14:04 UTC 2024 using Jira 8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d.