Overview: Creating new rib with new policy, configure peers for it. Connect peer and expect policy to work. Then I delete peers and rib and policy.
After that we create new policy and new rib, however at this point I am unable to configure peers again.
Steps to reproduce:
- Create new policy with reject ipv4 family:
./create_new_reject_policy.py
- Create new rib with this policy:
./create_new_rib.py
- Configure peers on new rib:
./configure.py
- Connect with play.py and check that no routes are getting through:
sudo ./start_play.sh
- Delete peers:
./deconfigure.py
- Delete new rib:
./delete_new_rib.py
- Delete new policy:
./delete_new_policy.py
- Create accept policy for ipv4:
./create_new_accept_policy.py
- Create new rib with accept policy:
./create_new_rib.py
- Try and configure peer at which point this should fail:
./configure.py
- at which point I get ERROR[0]
Overview: After deleting example-bgp-rib, I create new policy and try to make new rib with this policy.
Second scenario:
- delete example-bgp-rib first:
./delete_example_bgp_rib.py
- configure new policy:
./create_new_reject_policy.py
- configure new rib:
./create_new_rib.py
- when I get ERROR[1]
[0]:
2018-06-27T18:15:48,149 | ERROR | opendaylight-cluster-data-notification-dispatcher-52 | DataTreeChangeListenerActor | 248 - org.opendaylight.controller.sal-clustering-commons - 1.8.0.SNAPSHOT | member-1-shard-default-config: Error notifying listener org.opendaylight.controller.cluster.databroker.compat.LegacyDOMDataBrokerAdapter$2$$Lambda$1084/585549914@772c1906 java.lang.IllegalArgumentException: Peer for IpAddress{_ipv4Address=Ipv4Address{_value=127.0.0.2}} already present at com.google.common.base.Preconditions.checkArgument(Preconditions.java:210) ~[76:com.google.guava:23.6.1.jre] at org.opendaylight.protocol.bgp.rib.impl.StrictBGPPeerRegistry.addPeer(StrictBGPPeerRegistry.java:87) ~[218:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT] at org.opendaylight.protocol.bgp.rib.impl.config.BgpPeer$BgpPeerSingletonService.instantiateServiceInstance(BgpPeer.java:293) ~[218:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT] at org.opendaylight.protocol.bgp.rib.impl.config.BgpPeer$BgpPeerSingletonService.access$100(BgpPeer.java:218) ~[218:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT] at org.opendaylight.protocol.bgp.rib.impl.config.BgpPeer.instantiateServiceInstance(BgpPeer.java:161) ~[218:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT] at org.opendaylight.protocol.bgp.rib.impl.config.BGPClusterSingletonService.initiatePeerInstance(BGPClusterSingletonService.java:352) ~[218:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT] at org.opendaylight.protocol.bgp.rib.impl.config.BGPClusterSingletonService.onNeighborCreated(BGPClusterSingletonService.java:265) ~[218:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT] at org.opendaylight.protocol.bgp.rib.impl.config.BGPClusterSingletonService.onNeighborModified(BGPClusterSingletonService.java:248) ~[218:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT] at org.opendaylight.protocol.bgp.rib.impl.config.BGPClusterSingletonService.onNeighborsChanged(BGPClusterSingletonService.java:236) ~[218:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT] at org.opendaylight.protocol.bgp.rib.impl.config.BgpDeployerImpl.onNeighborsChanged(BgpDeployerImpl.java:262) ~[218:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT] at org.opendaylight.protocol.bgp.rib.impl.config.BgpDeployerImpl.handlePeersChange(BgpDeployerImpl.java:193) ~[218:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT] at org.opendaylight.protocol.bgp.rib.impl.config.BgpDeployerImpl.handleModifications(BgpDeployerImpl.java:160) ~[218:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT] at org.opendaylight.protocol.bgp.rib.impl.config.BgpDeployerImpl.onDataTreeChanged(BgpDeployerImpl.java:144) ~[218:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT] at org.opendaylight.controller.md.sal.binding.impl.BindingDOMDataTreeChangeListenerAdapter.onDataTreeChanged(BindingDOMDataTreeChangeListenerAdapter.java:42) ~[243: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:102) ~[256:org.opendaylight.controller.sal-distributed-datastore:1.8.0.SNAPSHOT] at org.opendaylight.controller.cluster.datastore.DataTreeChangeListenerActor.dataChanged(DataTreeChangeListenerActor.java:67) [256:org.opendaylight.controller.sal-distributed-datastore:1.8.0.SNAPSHOT] at org.opendaylight.controller.cluster.datastore.DataTreeChangeListenerActor.handleReceive(DataTreeChangeListenerActor.java:41) [256:org.opendaylight.controller.sal-distributed-datastore:1.8.0.SNAPSHOT] at org.opendaylight.controller.cluster.common.actor.AbstractUntypedActor.onReceive(AbstractUntypedActor.java:38) [248:org.opendaylight.controller.sal-clustering-commons:1.8.0.SNAPSHOT] at akka.actor.UntypedActor$$anonfun$receive$1.applyOrElse(UntypedActor.scala:167) [79:com.typesafe.akka.actor:2.5.11] at akka.actor.Actor.aroundReceive(Actor.scala:517) [79:com.typesafe.akka.actor:2.5.11] at akka.actor.Actor.aroundReceive$(Actor.scala:515) [79:com.typesafe.akka.actor:2.5.11] at akka.actor.UntypedActor.aroundReceive(UntypedActor.scala:97) [79:com.typesafe.akka.actor:2.5.11] at akka.actor.ActorCell.receiveMessage(ActorCell.scala:590) [79:com.typesafe.akka.actor:2.5.11] at akka.actor.ActorCell.invoke(ActorCell.scala:559) [79:com.typesafe.akka.actor:2.5.11] at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257) [79:com.typesafe.akka.actor:2.5.11] at akka.dispatch.Mailbox.run(Mailbox.scala:224) [79:com.typesafe.akka.actor:2.5.11] at akka.dispatch.Mailbox.exec(Mailbox.scala:234) [79:com.typesafe.akka.actor:2.5.11] at akka.dispatch.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260) [79:com.typesafe.akka.actor:2.5.11] at akka.dispatch.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339) [79:com.typesafe.akka.actor:2.5.11] at akka.dispatch.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979) [79:com.typesafe.akka.actor:2.5.11] at akka.dispatch.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107) [79:com.typesafe.akka.actor:2.5.11]
[1]
2018-06-27T18:25:37,846 | ERROR | opendaylight-cluster-data-notification-dispatcher-61 | DataTreeChangeListenerActor | 248 - org.opendaylight.controller.sal-clustering-commons - 1.8.0.SNAPSHOT | member-1-shard-default-config: Error notifying listener org.opendaylight.controller.cluster.databroker.compat.LegacyDOMDataBrokerAdapter$2$$Lambda$1081/714566902@2238476f java.lang.NullPointerException: null at org.opendaylight.protocol.bgp.rib.impl.config.BgpPeer.getBgpParameters(BgpPeer.java:91) ~[218:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT] at org.opendaylight.protocol.bgp.rib.impl.config.BgpPeer.access$300(BgpPeer.java:70) ~[218:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT] at org.opendaylight.protocol.bgp.rib.impl.config.BgpPeer$BgpPeerSingletonService.<init>(BgpPeer.java:257) ~[218:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT] at org.opendaylight.protocol.bgp.rib.impl.config.BgpPeer$BgpPeerSingletonService.<init>(BgpPeer.java:218) ~[218:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT] at org.opendaylight.protocol.bgp.rib.impl.config.BgpPeer.start(BgpPeer.java:138) ~[218:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT] at org.opendaylight.protocol.bgp.rib.impl.config.BgpPeer.restart(BgpPeer.java:147) ~[218:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT] at org.opendaylight.protocol.bgp.rib.impl.config.BGPClusterSingletonService.restartNeighbors(BGPClusterSingletonService.java:367) ~[218:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT] at org.opendaylight.protocol.bgp.rib.impl.config.BgpDeployerImpl.lambda$rebootNeighbors$6(BgpDeployerImpl.java:209) ~[218:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT] at java.util.HashMap$Values.forEach(HashMap.java:981) ~[?:?] at org.opendaylight.protocol.bgp.rib.impl.config.BgpDeployerImpl.rebootNeighbors(BgpDeployerImpl.java:209) ~[218:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT] at org.opendaylight.protocol.bgp.rib.impl.config.BgpDeployerImpl.handlePeersChange(BgpDeployerImpl.java:195) ~[218:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT] at org.opendaylight.protocol.bgp.rib.impl.config.BgpDeployerImpl.handleModifications(BgpDeployerImpl.java:160) ~[218:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT] at org.opendaylight.protocol.bgp.rib.impl.config.BgpDeployerImpl.onDataTreeChanged(BgpDeployerImpl.java:144) ~[218:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT] at org.opendaylight.controller.md.sal.binding.impl.BindingDOMDataTreeChangeListenerAdapter.onDataTreeChanged(BindingDOMDataTreeChangeListenerAdapter.java:42) ~[243: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:102) ~[256:org.opendaylight.controller.sal-distributed-datastore:1.8.0.SNAPSHOT] at org.opendaylight.controller.cluster.datastore.DataTreeChangeListenerActor.dataChanged(DataTreeChangeListenerActor.java:67) [256:org.opendaylight.controller.sal-distributed-datastore:1.8.0.SNAPSHOT] at org.opendaylight.controller.cluster.datastore.DataTreeChangeListenerActor.handleReceive(DataTreeChangeListenerActor.java:41) [256:org.opendaylight.controller.sal-distributed-datastore:1.8.0.SNAPSHOT] at org.opendaylight.controller.cluster.common.actor.AbstractUntypedActor.onReceive(AbstractUntypedActor.java:38) [248:org.opendaylight.controller.sal-clustering-commons:1.8.0.SNAPSHOT] at akka.actor.UntypedActor$$anonfun$receive$1.applyOrElse(UntypedActor.scala:167) [79:com.typesafe.akka.actor:2.5.11] at akka.actor.Actor.aroundReceive(Actor.scala:517) [79:com.typesafe.akka.actor:2.5.11] at akka.actor.Actor.aroundReceive$(Actor.scala:515) [79:com.typesafe.akka.actor:2.5.11] at akka.actor.UntypedActor.aroundReceive(UntypedActor.scala:97) [79:com.typesafe.akka.actor:2.5.11] at akka.actor.ActorCell.receiveMessage(ActorCell.scala:590) [79:com.typesafe.akka.actor:2.5.11] at akka.actor.ActorCell.invoke(ActorCell.scala:559) [79:com.typesafe.akka.actor:2.5.11] at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257) [79:com.typesafe.akka.actor:2.5.11] at akka.dispatch.Mailbox.run(Mailbox.scala:224) [79:com.typesafe.akka.actor:2.5.11] at akka.dispatch.Mailbox.exec(Mailbox.scala:234) [79:com.typesafe.akka.actor:2.5.11] at akka.dispatch.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260) [79:com.typesafe.akka.actor:2.5.11] at akka.dispatch.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339) [79:com.typesafe.akka.actor:2.5.11] at akka.dispatch.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979) [79:com.typesafe.akka.actor:2.5.11] at akka.dispatch.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107) [79:com.typesafe.akka.actor:2.5.11]