[NETVIRT-759] Physical_Locator DB duplication error occurs when adding new L2GW Node to Open vSwitch HWVTEP Emulator Created: 04/Jul/17  Updated: 06/Apr/18  Resolved: 06/Apr/18

Status: Resolved
Project: netvirt
Component/s: General
Affects Version/s: Carbon
Fix Version/s: None

Type: Bug Priority: Medium
Reporter: Ran Xiao Assignee: Unassigned
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


External issue ID: 8795

 Description   

Issue:
The following Physical_Locator DB duplication error occurs when adding new L2GW Node to the environment which has multiple L2GW Nodes running.
Frequency: 4 times / 300 times

Environment details:
OpenStack Version:stable/ocata
ODL Version:Carbon-FR + patch
patch: https://git.opendaylight.org/gerrit/#/c/56773/
https://git.opendaylight.org/gerrit/#/c/56710/
https://git.opendaylight.org/gerrit/#/c/58787/
https://git.opendaylight.org/gerrit/#/c/59598/
HWVTEP: Open vSwitch 2.6.1 HWVTEP Emulator
: HA Cluster

What we did (Steps):
1. Create a L2GW Node with Open vSwitch HWVTEP Emulator
Set 'other_config:ha_enabled=true' and 'other_config:ha_id=0123456789' when creating.
2. Create gateway and connection
Confirmed the communication via L2GW Node was OK
3. Create a new L2GW Node with Open vSwitch HWVTEP Emulator
Create a HA Cluster with node created in step1
Set 'other_config:ha_enabled=true', and 'other_config:ha_id=0123456789'
VTEP and MAC were also set to the same vaule of the first node

karaf.log:
2017-06-27 12:35:00,784 | ERROR | -dispatcher-1805 | TransactInvokerImpl | 292 - org.opendaylight.ovsdb.hwvtepsouthbound-impl - 1.4.1.SNAPSHOT | HWVTEP transaction operation failed constraint violation Transaction causes multiple rows in "Physical_Locator" table to have identical values ("vxlan_over_ipv4", "10.0.0.50", and []) for index on columns "encapsulation_type", "dst_ip", and "tunnel_key". First row, with UUID dbde4b90-efae-45a5-9915-5344419e8605, was inserted by this transaction. Second row, with UUID 2dea828b-9d22-45b3-a497-936eb38204bd, existed in the database before this transaction and was not modified by the transaction.
2017-06-27 12:35:00,784 | ERROR | -dispatcher-1805 | TransactInvokerImpl | 292 - org.opendaylight.ovsdb.hwvtepsouthbound-impl - 1.4.1.SNAPSHOT | Failed transaction insert [encapsulation_type : vxlan_over_ipv4 , dst_ip : 10.0.0.50 , ] insert [encapsulation_type : vxlan_over_ipv4 , dst_ip : 10.0.0.10 , ] insert [locators : [PhysicalLocator_Random_95fa2b466a6244ee8a4f57f48557e564, PhysicalLocator_Random_6a62a9ed9ec64d8a85772e754e3ceafa] , ] insert [locator_set : PhysicalLocatorSet_Random_55b5d246d8ee4e6da7381d9d638db0d6 , logical_switch : 6a78ca17-30bf-43ec-894e-e70eae6ec1db , MAC : unknown-dst , ] insert [locator : PhysicalLocator_Random_6a62a9ed9ec64d8a85772e754e3ceafa , logical_switch : 6a78ca17-30bf-43ec-894e-e70eae6ec1db , MAC : fa:16:3e:be:92:3a , ]

2017-06-27 13:15:42,560 | ERROR | -dispatcher-2057 | TransactInvokerImpl | 292 - org.opendaylight.ovsdb.hwvtepsouthbound-impl - 1.4.1.SNAPSHOT | HWVTEP transaction operation failed constraint violation Transaction causes multiple rows in "Physical_Locator" table to have identical values ("vxlan_over_ipv4", "10.0.0.50", and []) for index on columns "encapsulation_type", "dst_ip", and "tunnel_key". First row, with UUID 55bffcc5-a542-4ed2-884a-bd70bdb9bbde, was inserted by this transaction. Second row, with UUID 7536f345-0201-4c77-ae7d-43ce86e31203, existed in the database before this transaction and was not modified by the transaction.
2017-06-27 13:15:42,560 | ERROR | -dispatcher-2057 | TransactInvokerImpl | 292 - org.opendaylight.ovsdb.hwvtepsouthbound-impl - 1.4.1.SNAPSHOT | Failed transaction insert [encapsulation_type : vxlan_over_ipv4 , dst_ip : 10.0.0.50 , ] insert [encapsulation_type : vxlan_over_ipv4 , dst_ip : 10.0.0.10 , ] insert [locators : [PhysicalLocator_Random_6102b7f69527404081046b57fd03ba33, PhysicalLocator_Random_47ca470f4e2d40e2a60c8f8cafc49193] , ] insert [locator_set : PhysicalLocatorSet_Random_87850b97ff0c4e1f8f37e257dedba038 , logical_switch : 37072e87-83be-47db-93c8-04415e4254b9 , MAC : unknown-dst , ] insert [locator : PhysicalLocator_Random_6102b7f69527404081046b57fd03ba33 , logical_switch : 37072e87-83be-47db-93c8-04415e4254b9 , MAC : fa:16:3e:be:92:3a , ]

2017-06-27 13:19:03,067 | ERROR | -dispatcher-2101 | TransactInvokerImpl | 292 - org.opendaylight.ovsdb.hwvtepsouthbound-impl - 1.4.1.SNAPSHOT | HWVTEP transaction operation failed constraint violation Transaction causes multiple rows in "Physical_Locator" table to have identical values ("vxlan_over_ipv4", "10.0.0.50", and []) for index on columns "encapsulation_type", "dst_ip", and "tunnel_key". First row, with UUID 7d83e1ae-e9e2-4189-97a8-10ab91114222, existed in the database before this transaction and was not modified by the transaction. Second row, with UUID 332f6fb7-87b6-495b-9251-c6d8c2204a9d, was inserted by this transaction.
2017-06-27 13:19:03,067 | ERROR | -dispatcher-2101 | TransactInvokerImpl | 292 - org.opendaylight.ovsdb.hwvtepsouthbound-impl - 1.4.1.SNAPSHOT | Failed transaction insert [encapsulation_type : vxlan_over_ipv4 , dst_ip : 10.0.0.50 , ] insert [encapsulation_type : vxlan_over_ipv4 , dst_ip : 10.0.0.10 , ] insert [locators : [PhysicalLocator_Random_07b07470f608461e82d1aaaee2123b48, PhysicalLocator_Random_6e7c9589a7a04bfeabaf103048f11789] , ] insert [locator_set : PhysicalLocatorSet_Random_779f830d34dc4e208ddf03fe6d3fc932 , logical_switch : 6ac880ce-9a4a-45f6-ad1d-457e594a95c5 , MAC : unknown-dst , ] insert [locator : PhysicalLocator_Random_6e7c9589a7a04bfeabaf103048f11789 , logical_switch : 6ac880ce-9a4a-45f6-ad1d-457e594a95c5 , MAC : fa:16:3e:be:92:3a , ]

2017-06-27 14:56:52,409 | ERROR | -dispatcher-2689 | TransactInvokerImpl | 292 - org.opendaylight.ovsdb.hwvtepsouthbound-impl - 1.4.1.SNAPSHOT | HWVTEP transaction operation failed constraint violation Transaction causes multiple rows in "Physical_Locator" table to have identical values ("vxlan_over_ipv4", "10.0.0.50", and []) for index on columns "encapsulation_type", "dst_ip", and "tunnel_key". First row, with UUID 7ece5c74-a22c-4673-aedd-dad23d40d644, was inserted by this transaction. Second row, with UUID 21b8c191-3e2a-4b27-a3ec-a9e2523e4814, existed in the database before this transaction and was not modified by the transaction.
2017-06-27 14:56:52,409 | ERROR | -dispatcher-2689 | TransactInvokerImpl | 292 - org.opendaylight.ovsdb.hwvtepsouthbound-impl - 1.4.1.SNAPSHOT | Failed transaction insert [encapsulation_type : vxlan_over_ipv4 , dst_ip : 10.0.0.50 , ] insert [encapsulation_type : vxlan_over_ipv4 , dst_ip : 10.0.0.10 , ] insert [locators : [PhysicalLocator_Random_8a14020aa01d4b4089a9af9fc060eba4, PhysicalLocator_Random_b961b9e77430480cbaa26c742d6fb7ac] , ] insert [locator_set : PhysicalLocatorSet_Random_e063a76102cb486aa763452684acd5cd , logical_switch : 31cdeaf6-62e7-4b44-91f8-a0844ab7614e , MAC : unknown-dst , ] insert [locator : PhysicalLocator_Random_b961b9e77430480cbaa26c742d6fb7ac , logical_switch : 31cdeaf6-62e7-4b44-91f8-a0844ab7614e , MAC : fa:16:3e:be:92:3a , ]

Cause:
When trying to insert the following two rows into Physical_Locator table,
insert [encapsulation_type : vxlan_over_ipv4 , dst_ip : 10.0.0.10 , ]
insert [encapsulation_type : vxlan_over_ipv4 , dst_ip : 10.0.0.50 , ]
the second row, with UUID 21b8c191-3e2a-4b27-a3ec-a9e2523e4814, already existed in the database.



 Comments   
Comment by suneel verma [ 05/Sep/17 ]

Review in progress https://git.opendaylight.org/gerrit/#/c/61535/

Generated at Wed Feb 07 20:22:23 UTC 2024 using Jira 8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d.