Uploaded image for project: 'bgpcep'
  1. bgpcep
  2. BGPCEP-456

BGP Flowspec: Failed to completely propagate updates into Loc-RIB

    XMLWordPrintable

Details

    • Bug
    • Status: Resolved
    • Resolution: Done
    • Bugzilla Migration
    • Bugzilla Migration
    • BGP
    • None
    • Operating System: All
      Platform: All

    • 5844

    Description

      Steps to reproduce:
      1. Run configured ODL BGP
      2. connect BGP peer advertising Flow specific routes
      3. observe an error when ODL BGP is writing route into the Loc-RIB

      2016-05-04 11:42:06,717 | ERROR | on-dispatcher-44 | LocRibWriter | 277 - org.opendaylight.bgpcep.bgp-rib-impl - 0.6.0.SNAPSHOT | Failed to completely propagate updates [DefaultDataTreeCandidate{rootPath=/(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2013-09-25)bgp-rib/rib/rib[

      {(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2013-09-25)id=example-bgp-rib}

      ]/peer/peer[

      {(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2013-09-25)peer-id=bgp://127.0.0.3}

      ], rootNode=ChildNode{mod = NodeModification [identifier=(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2013-09-25)peer[

      {(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2013-09-25)peer-id=bgp://127.0.0.3}

      ], modificationType=TOUCH, childModification={(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2013-09-25)effective-rib-in=NodeModification [identifier=(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2013-09-25)effective-rib-in, modificationType=TOUCH, childModification={(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2013-09-25)tables=NodeModification [identifier=(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2013-09-25)tables, modificationType=TOUCH, childModification={(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2013-09-25)tables[

      {(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2013-09-25)afi=(urn:opendaylight:params:xml:ns:yang:bgp-types?revision=2013-09-19)ipv4-address-family, (urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2013-09-25)safi=(urn:opendaylight:params:xml:ns:yang:bgp-flowspec?revision=2015-08-07)flowspec-subsequent-address-family}

      ]=NodeModification [identifier=(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2013-09-25)tables[

      {(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2013-09-25)afi=(urn:opendaylight:params:xml:ns:yang:bgp-types?revision=2013-09-19)ipv4-address-family, (urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2013-09-25)safi=(urn:opendaylight:params:xml:ns:yang:bgp-flowspec?revision=2015-08-07)flowspec-subsequent-address-family}

      ], modificationType=TOUCH, childModification=
      ....
      com.google.common.base.Preconditions.checkArgument(Preconditions.java:145)[65:com.google.guava:18.0.0]
      at org.opendaylight.controller.cluster.databroker.AbstractDOMBrokerWriteTransaction.checkInstanceIdentifierReferencesData(AbstractDOMBrokerWriteTransaction.java:82)[185:org.opendaylight.controller.sal-distributed-datastore:1.4.0.SNAPSHOT]
      at org.opendaylight.controller.cluster.databroker.AbstractDOMBrokerWriteTransaction.put(AbstractDOMBrokerWriteTransaction.java:75)[185:org.opendaylight.controller.sal-distributed-datastore:1.4.0.SNAPSHOT]
      at org.opendaylight.controller.md.sal.dom.spi.ForwardingDOMDataReadWriteTransaction.put(ForwardingDOMDataReadWriteTransaction.java:49)[154:org.opendaylight.controller.sal-core-spi:1.4.0.SNAPSHOT]
      at org.opendaylight.protocol.bgp.mode.spi.AbstractRouteEntry.fillLocRib(AbstractRouteEntry.java:38)[275:org.opendaylight.bgpcep.bgp-path-selection-mode:0.6.0.SNAPSHOT]
      at org.opendaylight.protocol.bgp.mode.impl.base.BaseAbstractRouteEntry.addPathToDataStore(BaseAbstractRouteEntry.java:160)[275:org.opendaylight.bgpcep.bgp-path-selection-mode:0.6.0.SNAPSHOT]
      at org.opendaylight.protocol.bgp.mode.impl.base.BaseAbstractRouteEntry.updateRoute(BaseAbstractRouteEntry.java:114)[275:org.opendaylight.bgpcep.bgp-path-selection-mode:0.6.0.SNAPSHOT]
      at org.opendaylight.protocol.bgp.rib.impl.LocRibWriter.walkThrough(LocRibWriter.java:255)[277:org.opendaylight.bgpcep.bgp-rib-impl:0.6.0.SNAPSHOT]
      at org.opendaylight.protocol.bgp.rib.impl.LocRibWriter.onDataTreeChanged(LocRibWriter.java:139)[277:org.opendaylight.bgpcep.bgp-rib-impl:0.6.0.SNAPSHOT]
      at org.opendaylight.controller.cluster.datastore.DataTreeChangeListenerActor.dataChanged(DataTreeChangeListenerActor.java:53)[185:org.opendaylight.controller.sal-distributed-datastore:1.4.0.SNAPSHOT]
      at org.opendaylight.controller.cluster.datastore.DataTreeChangeListenerActor.handleReceive(DataTreeChangeListenerActor.java:37)[185:org.opendaylight.controller.sal-distributed-datastore:1.4.0.SNAPSHOT]
      at org.opendaylight.controller.cluster.common.actor.AbstractUntypedActor.onReceive(AbstractUntypedActor.java:25)[181:org.opendaylight.controller.sal-clustering-commons:1.4.0.SNAPSHOT]
      at akka.actor.UntypedActor$$anonfun$receive$1.applyOrElse(UntypedActor.scala:165)[169:com.typesafe.akka.actor:2.4.4]
      at akka.actor.Actor$class.aroundReceive(Actor.scala:482)[169:com.typesafe.akka.actor:2.4.4]
      at akka.actor.UntypedActor.aroundReceive(UntypedActor.scala:95)[169:com.typesafe.akka.actor:2.4.4]
      at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)[169:com.typesafe.akka.actor:2.4.4]
      at akka.actor.ActorCell.invoke(ActorCell.scala:495)[169:com.typesafe.akka.actor:2.4.4]
      at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)[169:com.typesafe.akka.actor:2.4.4]
      at akka.dispatch.Mailbox.run(Mailbox.scala:224)[169:com.typesafe.akka.actor:2.4.4]
      at akka.dispatch.Mailbox.exec(Mailbox.scala:234)[169:com.typesafe.akka.actor:2.4.4]
      at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)[165:org.scala-lang.scala-library:2.11.8.v20160304-115712-1706a37eb8]
      at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)[165:org.scala-lang.scala-library:2.11.8.v20160304-115712-1706a37eb8]
      at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)[165:org.scala-lang.scala-library:2.11.8.v20160304-115712-1706a37eb8]
      at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)[165:org.scala-lang.scala-library:2.11.8.v20160304-115712-1706a37eb8]

      Also, see a regression in the system tests: https://jenkins.opendaylight.org/releng/view/bgpcep/job/bgpcep-csit-1node-userfeatures-only-boron/511/robot/bgpcep-userfeatures.txt/010%20Bgp%20Flowspec/FlowSpec%20Test%201/ and https://jenkins.opendaylight.org/releng/view/bgpcep/job/bgpcep-csit-1node-userfeatures-only-boron/511/robot/bgpcep-userfeatures.txt/010%20Bgp%20Flowspec/FlowSpec%20Test%202/

      Attachments

        Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

              cdgasparini Claudio David Gasparini
              milos.fabian@pantheon.tech Milos Fabian
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: