Bug 2100704

Summary: neutron-ovn-db-sync-util does not support syncing OVN LBs from ovn-octavia-provider
Product: Red Hat OpenStack Reporter: ldenny
Component: openstack-neutronAssignee: Fernando Royo <froyo>
Status: CLOSED MIGRATED QA Contact: Bruna Bonguardo <bbonguar>
Severity: medium Docs Contact:
Priority: medium    
Version: 16.2 (Train)CC: averdagu, bbonguar, bcafarel, chrisw, gurpsing, mdemaced, ralonsoh, riramos, scohen
Target Milestone: ---Keywords: FutureFeature, Triaged
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2023-12-22 16:24:47 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description ldenny 2022-06-24 03:16:31 UTC
Description of problem:
Currently the neutron-ovn-db-sync-util does not sync OVN LBs into the ovsdbs, if there is any inconsistency with these records we can not use the sync tool to fix these.

In 2078793 bugzilla for example and issue was hit and the only work around on the customer case(03245762) was to manually delete the records from the Octavia database. It was suggested that the sync tool may be able to be used to repair the entry but checking on a remote session this proved not to be the case, checking the code you can see why[1].

This is due to the fact that currently the sync tool only supports syncing data from the Neutron database, these LBs from ovn-octavia-provider are stored in the Octavia database

I'm opening this bug to discuss whether this is something we would like to fix, and if so how we would like to go about it.

Some suggestions were, creating a new sync tool for Octavia which would be owned by that team. Enabling some type of hook method in the neutron sync until that code from Octavia could use, or adding it to some shared library.

Please let me know your thoughts on this.   


[1] https://opendev.org/openstack/networking-ovn/src/commit/eacab77be788dadc04255a4ff56d25333c159ad1/networking_ovn/ovn_db_sync.py#L88-L100


Version-Release number of selected component (if applicable):


How reproducible:
Every time

Steps to Reproduce:
1. Delete LB record from the OVN database
2. Run the sync util
3. See that the LB is still missing from the DB

Expected results:
If a LB record is missing or inconsistent we should have some method to re-sync this with the original data from the Galera database

Comment 4 Gurpreet Singh 2023-09-15 17:06:52 UTC
I see the 16.2 tag on the bz. Don't think we can get this in 16.2. Most likely 18.0

Bernard: Any thoughts?

Comment 5 Bernard Cafarelli 2023-09-19 14:47:05 UTC
Indeed this is still an interesting enhancement, for these cases (though they are not frequent)