DB out of sync
Bug #1733545 reported by
Ricardo Noriega
This bug affects 2 people
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
networking-l2gw |
New
|
Undecided
|
Unassigned |
Bug Description
I haven't found any deterministic way to reproduce the issue. Basically, executing commands that could modify the database (create, update, delete) could lead to out of syncs.
It seems the agent performs actions without taking into account the transactions to the database.
To post a comment you must log in.
Adding the following exception:
diff --git a/networking_ l2gw/db/ l2gateway/ l2gateway_ db.py b/networking_ l2gw/db/ l2gateway/ l2gateway_ db.py l2gw/db/ l2gateway/ l2gateway_ db.py l2gw/db/ l2gateway/ l2gateway_ db.py l2gateway. L2GatewayPlugin Base,
index 806647b..227d5d5 100644
--- a/networking_
+++ b/networking_
@@ -277,6 +277,7 @@ class L2GatewayMixin(
def create_ l2_gateway_ connection( self, context, l2_gateway_ connection) :
gw_connection = l2_gateway_ connection[ self.connection _resource] get('l2_ gateway_ id') get('network_ id')
"""Create l2 gateway connection."""
+ raise Exception("GET OUT OF SYNC!")
l2_gw_id = gw_connection.
network_id = gw_connection.
This will trigger the inconsistency between the DB and the OVSDB of the managed switch:
centos@devstack ~]$ ./l2gw_create.txt 9c9a-44f8- 9186-ebc5ceda80 39'] 1477-462a- be44-df068a5989 ab']
neutron CLI is deprecated and will be removed in the future. Use openstack CLI instead.
Request Failed: internal server error while processing your request.
Neutron server returns request_ids: ['req-79016e1e-
neutron CLI is deprecated and will be removed in the future. Use openstack CLI instead.
Request Failed: internal server error while processing your request.
Neutron server returns request_ids: ['req-fef00891-
[centos@devstack ~]$ cat l2gw_create.txt connection- create gw1 private --default- segmentation- id 200 connection- create gw1 private2 --default- segmentation- id 300 connection- list
neutron l2-gateway-
neutron l2-gateway-
[centos@devstack ~]$ neutron l2-gateway-
neutron CLI is deprecated and will be removed in the future. Use openstack CLI instead.
[centos@devstack ~]$
However, the OVSDB has been modified adding new vlan bindings:
[centos@hwvtep ~]$ sudo ovsdb-client dump hardware_vtep [35/8267]
ACL table
_uuid acl_entries acl_fault_status acl_name
----- ----------- ---------------- --------
ACL_entry table
_uuid acle_fault_status action dest_ip dest_mac dest_mask dest_port_max dest_port_min direction ethertype icmp_code icmp_type protocol sequence source_ip source_mac source_mask source_port_max source_port_m
in tcp_flags tcp_flags_mask
----- ----------------- ------ ------- -------- --------- ------------- ------------- --------- --------- --------- --------- -------- -------- --------- ---------- ----------- --------------- -------------
-- --------- --------------
Arp_Sources_Local table
_uuid locator src_mac
----- ------- -------
Arp_Sources_Remote table
_uuid locator src_mac
----- ------- -------
Global table ------- ------- ------- ------- - ------- ------- ------- ------- ------- --- ------- ------- ------- ------- ------- --- e040-47c0- 9841-c011baa554 c3 [6f32515f- 59bf-44ae- b12a-43255d2019 b9] [1a412a01- 943e-47fb- 9779-d631d4df4e 2a]
_uuid managers switches
-------
0d30fbd3-
Logical_ Binding_ Stats table
_uuid bytes_from_local bytes_to_local packets_from_local packets_to_local
----- ---------------- -------------- ------------------ ------------...