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

Fix Hwvtep Port reconciliation to handle Physical_Port Delete and Add from switch

    XMLWordPrintable

Details

    • Bug
    • Status: Resolved
    • Medium
    • Resolution: Done
    • None
    • unspecified
    • None
    • None

    Description

      If the Hwvtep Physical_Port is deleted and added back, vlan bindings are not getting
      pushed the switch in this case.
      When the Hwvtep Physical_Port is deleted and added back, the uuid of the Port
      will get changed, ODL is not handling this case properly as a result of it
      vlan bindings are pushed to the switch.

      Physical_Port table before delete and add.
      _uuid acl_bindings description name other_config port_fault_status vlan_bindings vlan_stats
      ------------------------------------ ------------ ----------- ---------------- ------------ ----------------- ------------------------------------------ ------------------------------------------
      e600b737-22ea-489a-9232-0d64ee787b43 {} "" "tap23701063-12" {} [] {100=a9e14a6d-32b6-4f14-9420-7773aae05893} {100=11aced04-0b55-45c8-bbf3-0f26414990ae}
      09a9235b-021f-4988-8c94-5173de4e56d7 {} "" "tap23701073-12" {} [] {100=a9e14a6d-32b6-4f14-9420-7773aae05893} {100=fe512493-13dd-42ff-98c7-b45cead1fd56}
      0939560b-02f1-4ce0-9ef5-db1cd8de4c90 {} "" "tap23701083-12" {} [] {100=a9e14a6d-32b6-4f14-9420-7773aae05893} {100=78586fd0-e63d-45cc-8616-b4b2ca5bcc87}
      bccc872b-71dc-47f3-bd2c-c10ad2333cfa {} "" "tap23701093-12" {} [] {100=a9e14a6d-32b6-4f14-9420-7773aae05893} {100=30b8a039-f6a7-475b-aa1f-129cd7291d88}

      The uuid of the port tap23701093-12 is bccc872b-71dc-47f3-bd2c-c10ad2333cfa

      Physical_Port table after delete and add.
      e600b737-22ea-489a-9232-0d64ee787b43 {} "" "tap23701063-12" {} [] {100=a9e14a6d-32b6-4f14-9420-7773aae05893} {100=11aced04-0b55-45c8-bbf3-0f26414990ae}
      09a9235b-021f-4988-8c94-5173de4e56d7 {} "" "tap23701073-12" {} [] {100=a9e14a6d-32b6-4f14-9420-7773aae05893} {100=fe512493-13dd-42ff-98c7-b45cead1fd56}
      0939560b-02f1-4ce0-9ef5-db1cd8de4c90 {} "" "tap23701083-12" {} [] {100=a9e14a6d-32b6-4f14-9420-7773aae05893} {100=78586fd0-e63d-45cc-8616-b4b2ca5bcc87}
      fb6b2777-af3a-41f6-98f8-1ca214ec58db {} "" "tap23701093-12" {} [] {} {}

      The uuid of the port tap23701093-12 is changed to fb6b2777-af3a-41f6-98f8-1ca214ec58db and vlanbindings are not pushed.

       

      2020-01-10T12:06:07,621 | ERROR | transaction-invoker-impl-0 | HwvtepOperationalCommandAggregator | 403 - org.opendaylight.ovsdb.hwvtepsouthbound-impl - 1.10.0.SNAPSHOT | Execution of command org.opendaylight.ovsdb.hwvtepsouthbound.transactions.md.HwvtepPhysicalPortUpdateCommand@73a2ad7b failed with the following exception. Continuing the execution of remaining commands
      java.lang.ClassCastException: class org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.node.TerminationPoint$$$codecImpl cannot be cast to class com.google.common.util.concurrent.ListenableFuture (org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.node.TerminationPoint$$$codecImpl is in unnamed module of loader org.opendaylight.mdsal.binding.dom.codec.loader.LeafCodecClassLoader @318a5524; com.google.common.util.concurrent.ListenableFuture is in unnamed module of loader org.eclipse.osgi.internal.loader.EquinoxClassLoader @2059524a)
      at org.opendaylight.ovsdb.hwvtepsouthbound.transactions.md.HwvtepPhysicalPortUpdateCommand.reconcileToPort(HwvtepPhysicalPortUpdateCommand.java:190) ~[403:org.opendaylight.ovsdb.hwvtepsouthbound-impl:1.10.0.SNAPSHOT]
      at org.opendaylight.ovsdb.hwvtepsouthbound.transactions.md.HwvtepPhysicalPortUpdateCommand.updateTerminationPoints(HwvtepPhysicalPortUpdateCommand.java:146) ~[403:org.opendaylight.ovsdb.hwvtepsouthbound-impl:1.10.0.SNAPSHOT]
      at org.opendaylight.ovsdb.hwvtepsouthbound.transactions.md.HwvtepPhysicalPortUpdateCommand.execute(HwvtepPhysicalPortUpdateCommand.java:106) ~[403:org.opendaylight.ovsdb.hwvtepsouthbound-impl:1.10.0.SNAPSHOT]
      at org.opendaylight.ovsdb.hwvtepsouthbound.transactions.md.HwvtepOperationalCommandAggregator.execute(HwvtepOperationalCommandAggregator.java:59) [403:org.opendaylight.ovsdb.hwvtepsouthbound-impl:1.10.0.SNAPSHOT]
      at org.opendaylight.ovsdb.hwvtepsouthbound.transactions.md.TransactionInvokerImpl.executeCommand(TransactionInvokerImpl.java:123) [403:org.opendaylight.ovsdb.hwvtepsouthbound-impl:1.10.0.SNAPSHOT]
      at org.opendaylight.ovsdb.hwvtepsouthbound.transactions.md.TransactionInvokerImpl.run(TransactionInvokerImpl.java:102) [403:org.opendaylight.ovsdb.hwvtepsouthbound-impl:1.10.0.SNAPSHOT]
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?]
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?]
      at java.lang.Thread.run(Thread.java:834) [?:?]

      Attachments

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

        Activity

          People

            chandra.shekar.s Chandra Shekar S
            chandra.shekar.s Chandra Shekar S
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: