Bug 8960: port information for 1 dpn is missing in subnet-op-data and 23/61823/6
authorehvkand <hanamantagoud.v.kandagal@ericsson.com>
Wed, 16 Aug 2017 09:42:03 +0000 (15:12 +0530)
committerSam Hague <shague@redhat.com>
Mon, 21 Aug 2017 21:17:27 +0000 (21:17 +0000)
commit6dc0fd19030a649c00baf8f15e3dc5d7bb2ad69a
tree3e025424ed0ecf784716e5bca750297897629d15
parentd4f830d7a4d3c28d4fe7889d94354375a01105fe
Bug 8960: port information for 1 dpn is missing in subnet-op-data and
port-op-data

Upon PL reboot , if southbound event (PortUP) event is received first and
northbound event(OnSubnetAddedToVpn) is received later ,DPN will not be
updated in PortOpData.

Fix :
(1) When northbound event is received , SubnetOpDataEntry is created
first by using clustered wide lock based on subnetId. Then PortOpDataEntry
and subnetToDpn is created.

(2)Incase southbound event is received first,PortOpData entry may not be
available.In such case subnetId is retrieved from Neutron cache and
PortOpData entry will be created by the SubnetInterfaceStateChangeListener
thread.

Change-Id: I3a0d9c814909e6031bd1e25dd32564415fb912d8
Signed-off-by: ehvkand <hanamantagoud.v.kandagal@ericsson.com>
vpnservice/neutronvpn/neutronvpn-api/src/main/java/org/opendaylight/netvirt/neutronvpn/api/utils/NeutronUtils.java
vpnservice/vpnmanager/vpnmanager-impl/src/main/java/org/opendaylight/netvirt/vpnmanager/SubnetOpDpnManager.java
vpnservice/vpnmanager/vpnmanager-impl/src/main/java/org/opendaylight/netvirt/vpnmanager/SubnetRouteInterfaceStateChangeListener.java
vpnservice/vpnmanager/vpnmanager-impl/src/main/java/org/opendaylight/netvirt/vpnmanager/VpnSubnetRouteHandler.java
vpnservice/vpnmanager/vpnmanager-impl/src/main/resources/org/opendaylight/blueprint/vpnmanager.xml