diff options
author | Andy Zhou <azhou@ovn.org> | 2016-12-19 22:39:53 -0800 |
---|---|---|
committer | Andy Zhou <azhou@ovn.org> | 2017-01-06 13:59:56 -0800 |
commit | 5351980b047f4dd40be7a59a1e4b910df21eca0a (patch) | |
tree | 72761d12cffd8afacf2d236c4914daef60867394 /lib/ovsdb-idl.c | |
parent | 790e2d4b1d02cce7e64029182a49473097f8422c (diff) | |
download | openvswitch-5351980b047f4dd40be7a59a1e4b910df21eca0a.tar.gz |
ovsdb-idl: Avoid sending redundant conditional monitoring updates
In case connection is reset when there are buffered but unsent
conditions, these conditions will be sent as the new "monitor_cond"
message that will be sent after the idl reconnects.
Without this patch, those conditions will be unnecessarily sent again
with following monitoring condition update message.
Signed-off-by: Andy Zhou <azhou@ovn.org>
Acked-by: Ben Pfaff <blp@ovn.org>
Diffstat (limited to 'lib/ovsdb-idl.c')
-rw-r--r-- | lib/ovsdb-idl.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/ovsdb-idl.c b/lib/ovsdb-idl.c index 1be1c6805..218b6b332 100644 --- a/lib/ovsdb-idl.c +++ b/lib/ovsdb-idl.c @@ -345,6 +345,7 @@ ovsdb_idl_clear(struct ovsdb_idl *idl) struct ovsdb_idl_table *table = &idl->tables[i]; struct ovsdb_idl_row *row, *next_row; + table->cond_changed = false; if (hmap_is_empty(&table->rows)) { continue; } @@ -370,6 +371,7 @@ ovsdb_idl_clear(struct ovsdb_idl *idl) } } + idl->cond_changed = false; ovsdb_idl_track_clear(idl); if (changed) { |