Re: [ovs-discuss] High latencies due to southdb leadership changes?

2022-04-20 Thread Terry Wilson
On Fri, Apr 8, 2022 at 4:55 PM Frode Nordahl wrote: > > > > fre. 8. apr. 2022, 14:41 skrev Christian Stelter : >> >> Hi! >> >> We are experiencing high latencies from time to time in one of our >> openstack environments. While looking into the issue we found that >> the southdb has frequent

[ovs-dev] [PATCH v4] python: Politely handle misuse of table.condition

2022-04-13 Thread Terry Wilson
. Fixes: 46d44cf3b ("python: idl: Add monitor_cond_since support") Signed-off-by: Terry Wilson --- python/ovs/db/idl.py | 102 --- 1 file changed, 67 insertions(+), 35 deletions(-) diff --git a/python/ovs/db/idl.py b/python/ovs/db/idl.py index

Re: [ovs-dev] [PATCH v3] python: Politely handle misuse of table.condition

2022-04-13 Thread Terry Wilson
On Wed, Apr 13, 2022 at 3:06 AM Dumitru Ceara wrote: > > On 4/12/22 21:52, Terry Wilson wrote: > > Before 46d44cf3b, it was technically possible to assign a monitor > > condition directly to Idl.tables[table_name].condition. If done > > before the connection was establishe

[ovs-dev] [PATCH v3] python: Politely handle misuse of table.condition

2022-04-12 Thread Terry Wilson
interface. Row._uuid_to_row is added to allow looking up ref_table rows. Fixes: 46d44cf3b ("python: idl: Add monitor_cond_since support") Signed-off-by: Terry Wilson --- python/ovs/db/idl.py | 95 +++- 1 file changed, 67 insertions(+), 28 deletion

Re: [ovs-dev] [PATCH] Politely handle misuse of table.condition

2022-04-12 Thread Terry Wilson
On Tue, Apr 12, 2022 at 3:25 AM Dumitru Ceara wrote: > > cc: ovs-dev (it got dropped by accident) > > On 4/12/22 00:07, Terry Wilson wrote: > > On Fri, Apr 1, 2022 at 9:02 AM Dumitru Ceara wrote: > >> > >> On 3/25/22 18:37, Terry Wilson wrote: > >>&g

[ovs-dev] [PATCH v2] python: Politely handle misuse of table.condition

2022-04-11 Thread Terry Wilson
: Add monitor_cond_since support") Signed-off-by: Terry Wilson --- python/ovs/db/idl.py | 18 ++ 1 file changed, 18 insertions(+) diff --git a/python/ovs/db/idl.py b/python/ovs/db/idl.py index 83a634dd0..1f75e9d8e 100644 --- a/python/ovs/db/idl.py +++ b/python/ovs/db/idl.py @@ -140

[ovs-dev] [PATCH] Politely handle misuse of table.condition

2022-03-25 Thread Terry Wilson
a connection is established). Fixes: 46d44cf3b ("python: idl: Add monitor_cond_since support") Signed-off-by: Terry Wilson --- python/ovs/db/idl.py | 17 + 1 file changed, 17 insertions(+) diff --git a/python/ovs/db/idl.py b/python/ovs/db/idl.py index 4ecdcaa19..b67504

[Yahoo-eng-team] [Bug 1965819] [NEW] list object has no attribute 'acked'

2022-03-21 Thread Terry Wilson
Public bug reported: Using python-ovs master, there are errors such as: ERROR neutron.plugins.ml2.drivers.ovn.mech_driver.ovsdb.impl_idl_ovn [None req-81ffbcd9-59d1-498a-aea2-d57e0d515ff2 None None] OVS database connection to OVN_Southbound failed with error: ''list' object has no attribute

[grpc-io] gRPC Java v1.45.0 Released

2022-03-10 Thread 'Terry Wilson' via grpc.io
The release v1.45.0 is now available. Bug Fixes - rls: fix child lb leak when client channel is shutdown (#8750 ) - rls: fix RLS lb policy name (#8867

Re: [ovs-dev] [PATCH 1/3] python: idl: Resend requested but not acked conditions when reconnecting.

2022-01-18 Thread Terry Wilson
._req_cond = (self._req_cond, None) > +if self._req_cond is not None: > +if self._new_cond is None: > + self._new_cond = self._req_cond > +self._req_cond = None > > > class Idl(object): > Acked-By: Terry Wilson ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Re: [ovs-dev] [PATCH 1/1] python: Add cooperative_yield() API method to Idl.

2021-12-03 Thread Terry Wilson
Thanks! I'll try that. On Thu, Dec 2, 2021 at 3:27 PM Mike Pattrick wrote: > > Hello Terry, > > On Thu, Dec 2, 2021 at 3:52 PM Terry Wilson wrote: > > > > On Thu, Dec 2, 2021 at 2:38 PM 0-day Robot wrote: > > > > > > Bleep bloop. Greetings Terry

[ovs-dev] [PATCH branch-2.15 1/1] python: Add cooperative_yield() API method to Idl

2021-12-03 Thread Terry Wilson
that defaults to doing nothing, but can be overridden to yield as needed. Signed-off-by: Terry Wilson (cherry picked from commit d28c5ca57650d6866453d0adb9a2e048cda21a86) --- NEWS | 6 ++ python/ovs/db/idl.py | 11 +++ 2 files changed, 17 insertions(+) diff --git

Re: [ovs-dev] [PATCH v5] python: Add monitor_cond_since support

2021-12-03 Thread Terry Wilson
On Fri, Dec 3, 2021 at 6:06 AM Dumitru Ceara wrote: > > On 12/1/21 18:51, Terry Wilson wrote: > > Add support for monitor_cond_since / update3 to python-ovs to > > allow more efficient reconnections when connecting to clustered > > OVSDB servers. > > &

Re: [ovs-dev] [PATCH 1/1] python: Add cooperative_yield() API method to Idl.

2021-12-02 Thread Terry Wilson
On Thu, Dec 2, 2021 at 2:38 PM 0-day Robot wrote: > > Bleep bloop. Greetings Terry Wilson, I am a robot and I have tried out your > patch. > Thanks for your contribution. > > I encountered some error that I wasn't expecting. See the details below. > > > git-a

[ovs-dev] [PATCH 1/1] python: Add cooperative_yield() API method to Idl.

2021-12-02 Thread Terry Wilson
that defaults to doing nothing, but can be overridden to yield as needed. Signed-off-by: Terry Wilson (cherry picked from commit d28c5ca57650d6866453d0adb9a2e048cda21a86) --- NEWS | 6 ++ python/ovs/db/idl.py | 11 +++ 2 files changed, 17 insertions(+) diff --git

[ovs-dev] [PATCH 0/1] python: Backport cooperative_yield addition

2021-12-02 Thread Terry Wilson
excpet the NEWS file. Terry Wilson (1): python: Add cooperative_yield() API method to Idl. NEWS | 6 ++ python/ovs/db/idl.py | 11 +++ 2 files changed, 17 insertions(+) -- 2.31.1 ___ dev mailing list d...@openvswitch.org

[ovs-dev] [PATCH v5] python: Add monitor_cond_since support

2021-12-01 Thread Terry Wilson
Add support for monitor_cond_since / update3 to python-ovs to allow more efficient reconnections when connecting to clustered OVSDB servers. Signed-off-by: Terry Wilson --- python/ovs/db/idl.py | 245 --- tests/ovsdb-idl.at | 2 +- 2 files changed

[ovs-dev] [PATCH v4] python: Add monitor_cond_since support

2021-12-01 Thread Terry Wilson
Add support for monitor_cond_since / update3 to python-ovs to allow more efficient reconnections when connecting to clustered OVSDB servers. Signed-off-by: Terry Wilson --- python/ovs/db/idl.py | 245 --- tests/ovsdb-idl.at | 2 +- 2 files changed

Re: [ovs-dev] [PATCH v3] Add monitor_cond_since support

2021-12-01 Thread Terry Wilson
On Fri, Nov 26, 2021 at 5:38 AM Dumitru Ceara wrote: > Nit: To be consistent with the other ifs below we should probably add > this comment: > > # Database contents changed. Will do. > > +# If 'found' is false, clear table rows for new > > dump > > +

[Yahoo-eng-team] [Bug 1952023] [NEW] Neutron functional tests don't properly clean up ovn-northd

2021-11-23 Thread Terry Wilson
Public bug reported: ovn-northd does not get stopped when running dsvm-functional tests. [vagrant@fedora neutron]$ pgrep ovn-northd [vagrant@fedora neutron]$ tox -e dsvm-functional test_agent_change dsvm-functional develop-inst-noop: /opt/stack/neutron ... dsvm-functional: commands succeeded

[ovs-dev] [PATCH v3] Add monitor_cond_since support

2021-11-20 Thread Terry Wilson
Add support for monitor_cond_since / update3 to python-ovs to allow more efficient reconnections when connecting to clustered OVSDB servers. Signed-off-by: Terry Wilson --- python/ovs/db/idl.py | 231 --- tests/ovsdb-idl.at | 2 +- 2 files changed

[grpc-io] gRPC-Java 1.41.1 Released

2021-11-08 Thread 'Terry Wilson' via grpc.io
gRPC Java 1.41.1 is released and is available on Maven Central. https://github.com/grpc/grpc-java/releases/tag/v1.41.1 *Bug Fixes* - grpclb: Fix “IllegalStateException: already in fallback” channel panic, by not starting fallback timer if already in fallback (#8646). This builds on

[grpc-io] gRPC-Java 1.40.2 Released

2021-11-08 Thread 'Terry Wilson' via grpc.io
gRPC Java 1.40.2 is released and is available on Maven Central. https://github.com/grpc/grpc-java/releases/tag/v1.40.2 *Bug Fixes* - grpclb: Fix “IllegalStateException: already in fallback” channel panic, by not starting fallback timer if already in fallback (#8646). This builds on

[ovs-dev] [PATCH v2] Backup and remove existing DB when joining cluster

2021-11-05 Thread Terry Wilson
continuing to join the cluster. Signed-off-by: Terry Wilson --- utilities/ovs-lib.in | 10 +- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/utilities/ovs-lib.in b/utilities/ovs-lib.in index 3eda01d3c..13477a6a9 100644 --- a/utilities/ovs-lib.in +++ b/utilities/ovs-lib.in

[ovs-dev] [PATCH v2] python: idl: Avoid pre-allocating column defaults

2021-11-05 Thread Terry Wilson
' fields set, this saves around 300MB of memory. One could argue that if values are not going to change from their defaults, then users should not be monitoring those columns, but it's also probably good to not waste memory even if user code is sub-optimal. Signed-off-by: Terry Wilson --- python

Re: [ovs-dev] [PATCH] [python] Avoid pre-allocating column defaults

2021-11-05 Thread Terry Wilson
Thanks for the review! On Fri, Nov 5, 2021 at 5:43 AM Dumitru Ceara wrote: > > Hi Terry, > > Nit: I'd prefix the commit subject line with "python: idl: ". > > On 10/12/21 9:53 PM, Terry Wilson wrote: > > Many python implementations pre-allocate space for m

Re: [ovs-dev] [PATCH v2] Backup and remove existing DB when joining cluster

2021-11-05 Thread Terry Wilson
On Fri, Nov 5, 2021 at 6:07 AM Dumitru Ceara wrote: > > On 10/20/21 10:56 PM, Terry Wilson wrote: > > ovsdb-tool join-cluster requires a remote addr, so the existing > > code that tried to join a cluster without it when there was an > > existing $DB_FILE would fail

Re: [ovs-dev] [PATCH v2] [python] Add monitor_cond_since support

2021-11-04 Thread Terry Wilson
On Wed, Nov 3, 2021, 11:22 AM Ilya Maximets wrote: > On 11/3/21 01:36, Terry Wilson wrote: > > Add support for monitor_cond_since / update3 to python-ovs to > > allow more efficient reconnections when connecting to clustered > > OVSDB servers. > > >

[ovs-dev] [PATCH v2] [python] Add monitor_cond_since support

2021-11-02 Thread Terry Wilson
Add support for monitor_cond_since / update3 to python-ovs to allow more efficient reconnections when connecting to clustered OVSDB servers. Signed-off-by: Terry Wilson --- python/ovs/db/idl.py | 55 +++- 1 file changed, 44 insertions(+), 11 deletions

[ovs-dev] [PATCH] [python] Add monitor_cond_since support

2021-11-02 Thread Terry Wilson
Add support for monitor_cond_since / update3 to python-ovs to allow more efficient reconnections when connecting to clustered OVSDB servers. Signed-off-by: Terry Wilson --- python/ovs/db/idl.py | 60 ++-- 1 file changed, 47 insertions(+), 13 deletions

[ovs-dev] [PATCH 0/1] [python] Add monitor_cond_since support

2021-11-02 Thread Terry Wilson
I added monitor_cond_since / update3 support to the python IDL. I think ultimately it would be good to refactor a lot of the code to be a little more ovsdb_cs-like, but I'd rather come back and do that without also adding features. Terry Wilson (1): [python] Add monitor_cond_since support

Re: [ovs-dev] [PATCH v4 2/2] python: replace pyOpenSSL with ssl

2021-11-01 Thread Terry Wilson
Acked-by: Terry Wilson Tested-by: Terry Wilson On Fri, Oct 29, 2021 at 6:12 PM Timothy Redaelli wrote: > > Currently, pyOpenSSL is half-deprecated upstream and so it's removed on > some distributions (for example on CentOS Stream 9, > https://issues.redhat.com/browse/CS-336), b

Re: [ovs-dev] [PATCH v3 2/2] python: replace pyOpenSSL with ssl

2021-10-27 Thread Terry Wilson
On Mon, Oct 25, 2021 at 8:46 AM Timothy Redaelli wrote: > > Currently, pyOpenSSL is half-deprecated upstream and so it's removed on > some distributions (for example on CentOS Stream 9, > https://issues.redhat.com/browse/CS-336), but since OVS only > supports Python 3 it's possible to replace

Re: [ovs-dev] [PATCH v3 1/2] socket-util: split inet_open_active function and use connect_ex

2021-10-27 Thread Terry Wilson
dress) > +if sock is None: > +return family, sock > +error = inet_connect_active(sock, address, family, dscp) > +if error: > +return error, None > +return 0, sock > > > def get_exception_errno(e): > -- > 2.31.1 > Tested against neutron "OverSsl" tests, and everything worked as it should. Acked-by: Terry Wilson Tested-by: Terry Wilson ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev

[Yahoo-eng-team] [Bug 1948891] [NEW] [ovn] Using ovsdb-client for MAC_Binding could theoretically block indefinitely

2021-10-26 Thread Terry Wilson
Public bug reported: As a workaround for saving massive amounts of memory by not monitoring the MAC_Binding table, we recently switched to using ovsdb-client for deleting FIP MAC_Binding entries. ovsdb-client will open a new connection every time it is called. There are some cases where it might

[ovs-dev] [PATCH v2] Backup and remove existing DB when joining cluster

2021-10-20 Thread Terry Wilson
continuing to join the cluster. Signed-off-by: Terry Wilson --- utilities/ovs-lib.in | 9 - 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/utilities/ovs-lib.in b/utilities/ovs-lib.in index 3eda01d3c..a710f053a 100644 --- a/utilities/ovs-lib.in +++ b/utilities/ovs-lib.in

Re: [ovs-dev] [PATCH] Backup and remove existing DB when joining cluster

2021-10-20 Thread Terry Wilson
On Wed, Oct 20, 2021 at 2:45 PM Terry Wilson wrote: > > ovsdb-tool join-cluster requires a remote addr, so the existing > code that tried to join a cluster without it when there was an > existing $DB_FILE would fail. > > Instead, if we are trying to specifica

[ovs-dev] [PATCH] Backup and remove existing DB when joining cluster

2021-10-20 Thread Terry Wilson
continuing to join the cluster. Signed-off-by: Terry Wilson --- utilities/ovs-lib.in | 10 -- 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/utilities/ovs-lib.in b/utilities/ovs-lib.in index 3eda01d3c..06f4319d5 100644 --- a/utilities/ovs-lib.in +++ b/utilities/ovs-lib.in

[ovs-dev] [PATCH] [python] Allow custom transaction ops to be added

2021-10-13 Thread Terry Wilson
It can be useful to be able to send raw transaction operations through the Idl's connection. For example, to clean up MAC_Binding entries for floating IPs without having to monitor the MAC_Binding table which can be quite large. Signed-off-by: Terry Wilson --- python/ovs/db/idl.py | 18

Re: [ovs-dev] [PATCH v2] python: replace pyOpenSSL with ssl

2021-10-13 Thread Terry Wilson
try: > -self.socket.shutdown() > -except SSL.Error: > + self.socket.shutdown(socket.SHUT_RDWR) > +except (socket.error, OSError, ValueError): > pass > return super(SSLStream, self).close() > > > -if SSL: > +if ssl: > # Register SSL only if the OpenSSL module is available > Stream.register_method("ssl", SSLStream) > diff --git a/tests/ovsdb-idl.at b/tests/ovsdb-idl.at > index 501c13b81..0f229b2f9 100644 > --- a/tests/ovsdb-idl.at > +++ b/tests/ovsdb-idl.at > @@ -225,7 +225,7 @@ m4_define([OVSDB_CHECK_IDL_TCP6_MULTIPLE_REMOTES_PY], > m4_define([OVSDB_CHECK_IDL_SSL_PY], >[AT_SETUP([$1 - Python3 - SSL]) > AT_SKIP_IF([test "$HAVE_OPENSSL" = no]) > - $PYTHON3 -c "import OpenSSL.SSL" > + $PYTHON3 -c "import ssl" > SSL_PRESENT=$? > AT_SKIP_IF([test $SSL_PRESENT != 0]) > AT_KEYWORDS([ovsdb server idl positive Python with ssl socket $5]) > -- > 2.31.1 > I tested with the neutron ml2/ovn tests that run over SSL and everything behaved the same. Nice work--what a pain! Acked-by: Terry Wilson Tested-by: Terry Wilson ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Re: [ovs-dev] [PATCH branch-2.14] python: idl: Avoid sending transactions when the DB is not synced up.

2021-10-13 Thread Terry Wilson
On Wed, Oct 13, 2021 at 11:13 AM Terry Wilson wrote: > > This ports the C IDL change f50714b to the Python IDL: > > Until now the code here would happily try to send transactions to the > database server even if the database connection was not in the correct > state. In som

[ovs-dev] [PATCH branch-2.14] python: idl: Avoid sending transactions when the DB is not synced up.

2021-10-13 Thread Terry Wilson
for a database that the IDL had just learned did not exist on the server. Signed-off-by: Terry Wilson (cherry picked from commit 34fbdc41084c16f855efa9c56086b03644408b7d) --- python/ovs/db/idl.py | 7 +++ 1 file changed, 7 insertions(+) diff --git a/python/ovs/db/idl.py b/python/ovs/db/idl.py

[ovs-dev] [PATCH] [python] Avoid pre-allocating column defaults

2021-10-12 Thread Terry Wilson
' fields set, this saves around 300MB of memory. One could argue that if values are not going to change from their defaults, then users should not be monitoring those columns, but it's also probably good to not waste memory even if user code is sub-optimal. Signed-off-by: Terry Wilson --- python

[ovs-dev] [PATCH] [python] Avoid alloc of an attr dict/row+column

2021-10-12 Thread Terry Wilson
be millions of rows in a database, avoiding this allocation with __slots__ can save 100s of MBs of memory per Idl process. Signed-off-by: Terry Wilson --- python/ovs/db/data.py | 4 1 file changed, 4 insertions(+) diff --git a/python/ovs/db/data.py b/python/ovs/db/data.py index 99bf80ed6

Re: [ovs-dev] [PATCH v3] [python] Avoid sending transactions when the DB is not synced up

2021-10-12 Thread Terry Wilson
On Mon, Sep 20, 2021 at 1:18 PM Ilya Maximets wrote: > > On 9/20/21 20:10, Terry Wilson wrote: > > The problem is that has_ever_connected() doesn't imply that we have > > downloaded the db into memory since the _Server stuff was added. > > Hmm. That doe

Re: [ovs-dev] [PATCH] python: replace pyOpenSSL with ssl

2021-09-29 Thread Terry Wilson
I'll take a look this morning and run it through the neutron ml2/ovn SSL-related tests. Terry On Fri, Sep 10, 2021 at 9:34 AM Timothy Redaelli wrote: > > Currently, pyOpenSSL is half-deprecated upstream and so it's removed on > some distributions (for example on CentOS Stream 9, >

[Yahoo-eng-team] [Bug 1944460] [NEW] Fix OVN metadata agent functional tests for Chassis_Private

2021-09-21 Thread Terry Wilson
Public bug reported: The OVN metadata agent functional tests don't support OVN versions that use the Chassis_Private table. The gate doesn't break due to using older OVN, but running locally on centos-stream fails. ** Affects: neutron Importance: Undecided Status: In Progress --

Re: [ovs-dev] [PATCH v3] [python] Avoid sending transactions when the DB is not synced up

2021-09-20 Thread Terry Wilson
The problem is that has_ever_connected() doesn't imply that we have downloaded the db into memory since the _Server stuff was added. On Mon, Sep 20, 2021 at 1:05 PM Ilya Maximets wrote: > > On 9/20/21 19:58, Terry Wilson wrote: > > On Mon, Sep 20, 2021 at 12:29 PM Ilya Max

Re: [ovs-dev] [PATCH v3] [python] Avoid sending transactions when the DB is not synced up

2021-09-20 Thread Terry Wilson
On Mon, Sep 20, 2021 at 12:29 PM Ilya Maximets wrote: > > On 9/20/21 18:15, Terry Wilson wrote: > > On Thu, Sep 2, 2021 at 10:53 AM Dumitru Ceara wrote: > >> > >> On 9/2/21 5:34 PM, Terry Wilson wrote: > >>> This ports the C IDL change f50714b to the

Re: [ovs-dev] [PATCH v3] [python] Avoid sending transactions when the DB is not synced up

2021-09-20 Thread Terry Wilson
On Thu, Sep 2, 2021 at 10:53 AM Dumitru Ceara wrote: > > On 9/2/21 5:34 PM, Terry Wilson wrote: > > This ports the C IDL change f50714b to the Python IDL: > > > > Until now the code here would happily try to send transactions to the > > database server e

[ovs-dev] [PATCH v3] [python] Avoid sending transactions when the DB is not synced up

2021-09-02 Thread Terry Wilson
for a database that the IDL had just learned did not exist on the server. Signed-off-by: Terry Wilson --- python/ovs/db/idl.py | 5 + 1 file changed, 5 insertions(+) diff --git a/python/ovs/db/idl.py b/python/ovs/db/idl.py index ecae5e143..87ee06cde 100644 --- a/python/ovs/db/idl.py +++ b

[ovs-dev] [PATCH v2] [python] Avoid sending transactions when the DB is not synced up

2021-09-02 Thread Terry Wilson
for a database that the IDL had just learned did not exist on the server. Signed-off-by: Terry Wilson --- python/ovs/db/idl.py | 7 +++ 1 file changed, 7 insertions(+) diff --git a/python/ovs/db/idl.py b/python/ovs/db/idl.py index ecae5e143..f24dc5eaf 100644 --- a/python/ovs/db/idl.py +++ b

Re: [ovs-dev] [PATCH] [python] Avoid sending transactions when the DB is not synced up

2021-09-01 Thread Terry Wilson
/c39751e44539a014e642bcd930cb9e3a33af1805 was the update notification from the monitor request. Now that there are requests for _Server, etc., that no longer works. On Wed, Sep 1, 2021 at 11:15 AM Terry Wilson wrote: > > This ports the C IDL change f50714b to the Python IDL: > > Until now the code here would happily

[ovs-dev] [PATCH] [python] Avoid sending transactions when the DB is not synced up

2021-09-01 Thread Terry Wilson
for a database that the IDL had just learned did not exist on the server. Signed-off-by: Terry Wilson --- python/ovs/db/idl.py | 6 ++ 1 file changed, 6 insertions(+) diff --git a/python/ovs/db/idl.py b/python/ovs/db/idl.py index ecae5e143..0be0064de 100644 --- a/python/ovs/db/idl.py +++ b

[Yahoo-eng-team] [Bug 1934930] [NEW] [ovn] Multiple servers can try to create neutron_pg_drop at the same time

2021-07-07 Thread Terry Wilson
Public bug reported: Even though we use may_exist=True to create the neutron_pg_drop Port_Group, it's possible that when another server creates it before us that we don't get the update before we check if it exists before exiting. ** Affects: neutron Importance: Undecided Status:

[ovs-dev] [PATCH 1/1] [python] Add cooperative_yield() API method to Idl

2021-07-01 Thread Terry Wilson
that defaults to doing nothing, but can be overridden to yield as needed. Signed-off-by: Terry Wilson --- python/ovs/db/idl.py | 11 +++ 1 file changed, 11 insertions(+) diff --git a/python/ovs/db/idl.py b/python/ovs/db/idl.py index 889cf3431..751feb47f 100644 --- a/python/ovs/db/idl.py

[ovs-dev] [PATCH 0/1] [python] Cooperatively yielding to eventlet/gevent

2021-07-01 Thread Terry Wilson
quot;) helper = idl.SchemaHelper(None) helper.register_all() ovs_idl = idl.Idl("tcp:127.0.0.1:6640", helper) #ovs_idl = YieldingIdl("tcp:127.0.0.1:6640", helper) eventlet.spawn_n(print_count) run_idl() Terry Wilson (1): [python] Add cooperative_yield() API method to

Re: [ovs-dev] [PATCH v3] [python] Don't mix system poll/monkeypatched select

2021-07-01 Thread Terry Wilson
Sounds good to me. As you said before, the call to poll(0) itself doesn't appear to block eventlet. Further inspection showed that the issue that we were seeing was actually caused by cpu-bound code in python-ovs that was blocking eventlet on connection in __do_parse_update() and, if not using the

[Yahoo-eng-team] [Bug 1911132] Re: OVN mech driver - can't find Logical_Router errors

2021-06-11 Thread Terry Wilson
** Changed in: neutron Status: Confirmed => Fix Released -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to neutron. https://bugs.launchpad.net/bugs/1911132 Title: OVN mech driver - can't find Logical_Router errors Status

[ovs-dev] [PATCH v3] [python] Don't mix system poll/monkeypatched select

2021-06-11 Thread Terry Wilson
. Signed-off-by: Terry Wilson --- python/ovs/poller.py | 35 ++- python/ovs/socket_util.py | 9 ++--- 2 files changed, 8 insertions(+), 36 deletions(-) diff --git a/python/ovs/poller.py b/python/ovs/poller.py index 3624ec865..7b3238d6d 100644 --- a/python

[ovs-dev] [PATCH v2] [python] Don't mix system poll/monkeypatched select

2021-06-11 Thread Terry Wilson
. Signed-off-by: Terry Wilson --- python/ovs/poller.py | 35 ++- python/ovs/socket_util.py | 11 +++ 2 files changed, 9 insertions(+), 37 deletions(-) diff --git a/python/ovs/poller.py b/python/ovs/poller.py index 3624ec865..7b3238d6d 100644 --- a/python

[ovs-dev] [PATCH] [python] Don't mix system poll/monkeypatched select

2021-06-11 Thread Terry Wilson
. Signed-off-by: Terry Wilson --- python/ovs/poller.py | 35 ++- python/ovs/socket_util.py | 6 +- 2 files changed, 7 insertions(+), 34 deletions(-) diff --git a/python/ovs/poller.py b/python/ovs/poller.py index 3624ec865..7b3238d6d 100644 --- a/python/ovs

[Bug 1931244] Re: ovn sriov broken from ussuri onwards

2021-06-08 Thread Terry Wilson
I'm a little confused because I was under the impression that ml2/ovn doesn't actually use RPC workers for anything. What is happening that RPC requests end up calling into ml2/ovn code? If it's needed, it's needed, but I don't like unconditionally setting up connections for non-API workers

[Yahoo-eng-team] [Bug 1930926] [NEW] Failing over OVN dbs can cause original controller to permanently lose connection

2021-06-04 Thread Terry Wilson
Public bug reported: When failing over OVN DB servers from one server to another, the server which originally hosts the VIP doesn't notice the connection is gone and doesn't reconnect without restarting the neutron api service. ** Affects: neutron Importance: Undecided Status: In

[Yahoo-eng-team] [Bug 1881424] Re: Neutron ovs agent fails on rpc_loop iteration:1

2021-05-13 Thread Terry Wilson
Looks like this was fixed by Rodolfo's singleton patch ** No longer affects: ovsdbapp ** Changed in: neutron Status: New => Fix Released -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to neutron.

[Yahoo-eng-team] [Bug 1923644] [NEW] OVN agent delete support should be backported to pre-wallaby releases

2021-04-13 Thread Terry Wilson
Public bug reported: Until wallaby, ml2/ovn and networking-ovn, despite having support for the Agent API, did not implement "delete" support. This means that when scaling down compute nodes, etc. there are orphaned agents that cannot be removed. ** Affects: neutron Importance: Undecided

[ovs-dev] [PATCH 2/2] python: Send notifications after the transaction ends.

2021-03-16 Thread Terry Wilson
methods return the notifications that would be produced when a row changes, so they can be queued and sent after all rows have been processed. Fixes: d7d417fcddf9 ("Allow subclasses of Idl to define a notification hook") Signed-off-by: Terry Wilson Acked-by: Brian Haley Acked-by: Dumitru Cea

[ovs-dev] [PATCH 1/2] Handle refTable values with setkey()

2021-03-16 Thread Terry Wilson
column instead of trying to build it. Signed-off-by: Terry Wilson Signed-off-by: Ben Pfaff Signed-off-by: Ilya Maximets (cherry picked from commit 818cd7ae13f23fa5ceadf628ba5a6b712936af9f) --- python/ovs/db/idl.py| 3 +-- tests/idltest.ovsschema | 15 +++ tests/ovsdb-idl.at

[ovs-dev] [PATCH 0/2] [python] 2.11 backports to help neutron upstream CI

2021-03-16 Thread Terry Wilson
was made. The neutron upstream CI for the stable/train branch caps the version of ovs at 2.11, and there are some test failures due to the notification bug that are holding up ~10 patches that are being backported. Terry Wilson (2): Handle refTable values with setkey() python: Send notifications

Re: [ovs-dev] [PATCH v6] python: Send notifications after the transaction ends

2021-03-15 Thread Terry Wilson
On Mon, Mar 15, 2021 at 11:50 AM Ilya Maximets wrote: > Thanks, Terry, Brian, Dumitru and Flavio! > Applied to master and backported down to 2.13. > > Best regards, Ilya Maximets. Thanks! Can I get it backported down to 2.11 at least? I think the issue goes back to at least 2.10. There's

[ovs-dev] [PATCH v6] python: Send notifications after the transaction ends

2021-03-09 Thread Terry Wilson
methods return the notifications that would be produced when a row changes, so they can be queued and sent after all rows have been processed. Fixes: d7d417fcddf9 ("Allow subclasses of Idl to define a notification hook") Signed-off-by: Terry Wilson --- python/ovs/db/i

[ovs-dev] [PATCH v5] python: Send notifications after the transaction ends

2021-03-04 Thread Terry Wilson
methods return the notifications that would be produced when a row changes, so they can be queued and sent after all rows have been processed. Fixes: d7d417fcddf9 ("Allow subclasses of Idl to define a notification hook") Signed-off-by: Terry Wilson --- python/ovs/db/i

[ovs-dev] [PATCH v4 1/1] python: Send notifications after the transaction ends

2021-03-04 Thread Terry Wilson
The Python IDL notification mechanism was sending a notification for each processed update in a transaction as it was processed. This causes issues with multi-row changes that contain references to each other. For example, if a Logical_Router_Port is created along with a Gateway_Chassis, and the

[ovs-dev] [PATCH v4 0/1] Send notifications after the transaction ends

2021-03-04 Thread Terry Wilson
, but consistently putting Logical_Router_Port before Gateway_Chassis. In py3 things could still fail as in the test case provided, e.g. if rows referenced each other in the same transaction, or depending on the order in which ovsdb-server adds the updates. Terry Wilson (1): python: Send notifications after

[ovs-dev] [PATCH v3] python: Send notifications after the transaction ends

2021-03-03 Thread Terry Wilson
methods return the notifications that would be produced when a row changes, so they can be queued and sent after all rows have been processed. Fixes: d7d417fcddf9 ("Allow subclasses of Idl to define a notification hook") Signed-off-by: Terry Wilson --- python/ovs/db/i

Re: [ovs-dev] [PATCH v2] python: Send notifications after the transaction ends

2021-03-03 Thread Terry Wilson
On Wed, Mar 3, 2021 at 1:47 PM Brian Haley wrote: > > Hi Terry, > > Thanks for the patch, comments below. > > On 3/3/21 9:24 AM, Terry Wilson wrote: > > The Python IDL notification mechanism was sending a notification > > for each processed update in a t

[ovs-dev] [PATCH v2] python: Send notifications after the transaction ends

2021-03-03 Thread Terry Wilson
methods return the notifications that would be produced when a row changes, so they can be queued and sent after all rows have been processed. Fixes: d7d417fcddf9 ("Allow subclasses of Idl to define a notification hook") Signed-off-by: Terry Wilson --- python/ovs/db/i

[Yahoo-eng-team] [Bug 1916646] [NEW] ovn-octavia-provider can attempt to write protocol=None to OVSDB

2021-02-23 Thread Terry Wilson
Public bug reported: In some functional test output, we can see the line: ERROR ovsdbapp.backend.ovs_idl.vlog [req-a6293ef9-4b57-444d-8a5c- a27937ddb5db - - - - -] attempting to write bad value to column protocol (ovsdb error: expected string, got ): Error: ovsdb error: expected string, got An

[Yahoo-eng-team] [Bug 1905611] [NEW] OVN.ovsdb_probe_interval takes effect only after initial database dump

2020-11-25 Thread Terry Wilson
Public bug reported: ml2/ovn allows the configuration of the OVSDB session probe_interval, and defaults it to 60 seconds, overriding the python-ovs default of 5 seconds. It does this after the ovsdbapp Connection object is created and started, which means it is also after python-ovs sends a

[Yahoo-eng-team] [Bug 1904897] [NEW] Failure in test_l2_agent_restart(OVS, Flat network)

2020-11-19 Thread Terry Wilson
Public bug reported: Occasionally the test fails to ping. In this case, the tests failed on an OVN-specific patch that could not have possibly interacted with the test: https://zuul.opendev.org/t/openstack/build/2eb4d891d3324814b28b1db5ea8ee148 {0}

Re: [ovs-dev] [PATCH] Don't raise an Exception on failure to connect via SSL

2020-11-12 Thread Terry Wilson
Just checking in again to see if I could get a committer's eye on this one. Got a couple of Acks, just trying to make it the last lap. Thanks! ;) On Tue, Sep 15, 2020 at 12:17 PM Terry Wilson wrote: > With other socket types, trying to connect and failing will return > an erro

Re: [ovs-dev] [PATCH v2] Don't raise an Exception on failure to connect via SSL

2020-10-27 Thread Terry Wilson
Just bumping to make sure this doesn't fall through the cracks. 11 days since the last ack. Let me know if there's anything else that needs changing. Thanks! On Fri, Oct 16, 2020 at 1:37 AM Thomas Neuman wrote: > Yup, fair enough. LGTM > > Acked-by: Thomas Neuman > > > > > I get why it seems a

[Yahoo-eng-team] [Bug 1894136] Re: [OVN Octavia Provider] OVN provider fails during listener delete

2020-10-15 Thread Terry Wilson
** Project changed: ovsdbapp => neutron -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to neutron. https://bugs.launchpad.net/bugs/1894136 Title: [OVN Octavia Provider] OVN provider fails during listener delete Status in

[Yahoo-eng-team] [Bug 1894136] Re: [OVN Octavia Provider] OVN provider fails during listener delete

2020-10-14 Thread Terry Wilson
** Project changed: neutron => ovsdbapp -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to neutron. https://bugs.launchpad.net/bugs/1894136 Title: [OVN Octavia Provider] OVN provider fails during listener delete Status in

Re: [ovs-dev] [PATCH v2] Don't raise an Exception on failure to connect via SSL

2020-10-13 Thread Terry Wilson
the possible exceptions similar to how > > lib/stream-ssl.c's interpret_ssl_error() works across the various > > methods that are implemented. > > > > Signed-off-by: Terry Wilson https://mail.openvswitch.org/mailman/listinfo/ovs-dev>> > > --- > &g

[ovs-dev] [PATCH v2] Don't raise an Exception on failure to connect via SSL

2020-09-15 Thread Terry Wilson
-off-by: Terry Wilson --- python/ovs/stream.py | 15 +-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/python/ovs/stream.py b/python/ovs/stream.py index e9bb0c854..f5a520862 100644 --- a/python/ovs/stream.py +++ b/python/ovs/stream.py @@ -132,6 +132,10 @@ class Stream

Re: [ovs-dev] [PATCH] Don't raise an Exception on failure to connect via SSL

2020-09-15 Thread Terry Wilson
On Tue, Sep 15, 2020 at 2:55 PM Ilya Maximets wrote: > On 9/15/20 7:17 PM, Terry Wilson wrote: > > With other socket types, trying to connect and failing will return > > an error code, but if an SSL Stream is used, then when > > check_connection_completion(sock) is c

[ovs-dev] [PATCH] Don't raise an Exception on failure to connect via SSL

2020-09-15 Thread Terry Wilson
get_exception_errno will simply return errno.EPROTO for. Signed-off-by: Terry Wilson --- python/ovs/socket_util.py | 9 +++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/python/ovs/socket_util.py b/python/ovs/socket_util.py index 3faa64e9d..ffcdd28cb 100644 --- a/python/ovs

[Yahoo-eng-team] [Bug 1895033] [NEW] When using ml2/OVN with other plugins with agents, non-OVN agents are broken for show/update/delete operations

2020-09-09 Thread Terry Wilson
Public bug reported: ml2/ovn mech driver overrides the ML2 agent API methods and inserts its results if the agent passed to the operations are OVN agents. Due to a change where KeyError is no longer raised by get_agent, the get_agent/update_agent/delete_agent methods no longer fall back to the

[Yahoo-eng-team] [Bug 1888878] Re: Data not present in OVN IDL when requested

2020-08-21 Thread Terry Wilson
** Also affects: neutron Importance: Undecided Status: New -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to neutron. https://bugs.launchpad.net/bugs/178 Title: Data not present in OVN IDL when requested Status in

Re: [ovs-dev] [PATCH] ovs-ctl: Don't set hostname as external-id

2020-05-22 Thread Terry Wilson
On Wed, May 20, 2020 at 10:52 AM Daniel Alvarez wrote: > ovs-ctl started to add the hostname as external-id [0] at some point. > > However, this can be problematic as if it's already set by an external > entity it will get overwritten. In RHEL systems, systemd will invoke > ovs-ctl to start OVS

[Yahoo-eng-team] [Bug 1879502] [NEW] neutron-ovn-db-sync-util fails with PortContext has no session

2020-05-19 Thread Terry Wilson
Public bug reported: Two places needed to pass the _plugin_context like the mech driver already does since PortContext has no session. There was also a place where a port object was passed instead of a port id. ** Affects: neutron Importance: Undecided Assignee: Terry Wilson

[Yahoo-eng-team] [Bug 1878708] [NEW] mock.patch.stopall called twice on tests inheriting from ovsdbapp

2020-05-14 Thread Terry Wilson
in oslotest addCleanup that checks a private _cleanups variable before adding a cleanup to stopall. Changing the order of the imports so that neutron can register its cleanups first seems to fix the issue. ** Affects: neutron Importance: Undecided Assignee: Terry Wilson (otherwiseguy

[Yahoo-eng-team] [Bug 1876752] [NEW] neutron-ovn-db-sync-util fails with KeyError: 'ovn'

2020-05-04 Thread Terry Wilson
: Terry Wilson (otherwiseguy) Status: In Progress ** Tags: ovn -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to neutron. https://bugs.launchpad.net/bugs/1876752 Title: neutron-ovn-db-sync-util fails with KeyError: 'ovn

Re: [ovs-dev] [PATCH v3] [python] Handle refTable values with setkey()

2020-04-29 Thread Terry Wilson
Any chance we could get this ( 9435b0b8 ) backported to 2.13 and 2.12 (it backported cleanly and passed tests on my box). Thanks! On Fri, Mar 20, 2020 at 10:48 AM Ben Pfaff wrote: > On Fri, Mar 20, 2020 at 03:22:38PM +0000, Terry Wilson wrote: > > For columns like QoS.queues where we h

Re: [ovs-dev] [PATCH v2] python: Handle refTable values with setkey()

2020-03-20 Thread Terry Wilson
gah, somehow manpages.mk changed... reuploaded fixed version. :-/ On Fri, Mar 20, 2020 at 10:18 AM Terry Wilson wrote: > For columns like QoS.queues where we have a map containing refTable > values, assigning w/ __setattr__ e.g. qos.queues={1: $queue_row} > works, but using using q

[ovs-dev] [PATCH v3] [python] Handle refTable values with setkey()

2020-03-20 Thread Terry Wilson
column instead of trying to build it. Signed-off-by: Terry Wilson --- python/ovs/db/idl.py| 3 +-- tests/idltest.ovsschema | 15 +++ tests/ovsdb-idl.at | 13 + tests/test-ovsdb.py | 23 ++- 4 files changed, 51 insertions(+), 3 deletions

[ovs-dev] [PATCH v2] python: Handle refTable values with setkey()

2020-03-20 Thread Terry Wilson
column instead of trying to build it. Signed-off-by: Terry Wilson --- manpages.mk | 3 --- python/ovs/db/idl.py| 3 +-- tests/idltest.ovsschema | 15 +++ tests/ovsdb-idl.at | 13 + tests/test-ovsdb.py | 23 ++- 5 files changed

[ovs-dev] [PATCH] python: Handle refTable values with setkey()

2020-03-13 Thread Terry Wilson
column instead of trying to build it. Signed-off-by: Terry Wilson --- python/ovs/db/idl.py| 3 +-- tests/idltest.ovsschema | 15 +++ tests/ovsdb-idl.at | 12 tests/test-ovsdb.py | 23 ++- 4 files changed, 50 insertions(+), 3 deletions

[Yahoo-eng-team] [Bug 1864548] [NEW] There's no reason the ovn l3 plugin should create its own ovsdb connections

2020-02-24 Thread Terry Wilson
Public bug reported: The l3 ovn plugin creates it's own NB/SB OVSDB connections when it could just use the ones already created by the mech driver. No reason to maintain two in-memory copies of each DB for each process. ** Affects: neutron Importance: Undecided Status: New **

<    1   2   3   4   5   >