This patch series implements conditional monitoring by introducing an OVSDB RFC extension with 2 new JSON-RPC methods: "monitor_cond" and "monitor_cond_change". Specification of this extension is defined in the ovsdb-server (1) man page. Monitor2 is now merged into monitor_cond. A monitor_cond session with an empty condition, will behave exactly like monitor2 and will get update2 notifications.
Note: With this patch the json cache will be used only for monitor sessions with an empty condition. We can think on implementing a per row json cache that will be matched against condition clauses in the future. Liran Schour (12): ovsdb: create column index mapping between ovsdb row to monitor row ovsdb: add conditions utilities to support monitor_cond ovsdb: generate update notifications for monitor_cond session ovsdb-client: support monitor-cond lib: replace monitor2 with monitor_cond ovsdb: add API for changing monitor session's conditions ovsdb: enable jsonrpc-server to service "monitor_cond_change" request lib: add to ovsdb-idl monitor_id ovsdb: look for monitor id on all jsonrpc monitor sessions lib: add condition change to idl session python: move Python idl to work with monitor_cond tests: add testing for idl conditional monitoring NEWS | 3 +- lib/ovsdb-idl-provider.h | 33 +++ lib/ovsdb-idl.c | 440 +++++++++++++++++++++++++++++++++++++-- lib/ovsdb-idl.h | 14 ++ ovsdb/condition.c | 287 ++++++++++++++++++++++++-- ovsdb/condition.h | 28 ++- ovsdb/jsonrpc-server.c | 216 ++++++++++++++++++-- ovsdb/jsonrpc-server.h | 2 +- ovsdb/monitor.c | 521 +++++++++++++++++++++++++++++++++++++++++++---- ovsdb/monitor.h | 43 ++++ ovsdb/ovsdb-client.1.in | 37 ++-- ovsdb/ovsdb-client.c | 63 ++++-- ovsdb/ovsdb-server.1.in | 212 +++++++++++++++++-- ovsdb/ovsdb-server.c | 20 +- ovsdb/query.c | 4 +- python/ovs/db/data.py | 12 ++ python/ovs/db/idl.py | 161 ++++++++++++++- tests/ovs-vswitchd.at | 8 +- tests/ovsdb-condition.at | 35 +++- tests/ovsdb-idl.at | 181 +++++++++++++++- tests/ovsdb-monitor.at | 178 ++++++++++++++++ tests/test-ovsdb.c | 81 +++++++- tests/test-ovsdb.py | 24 +++ 23 files changed, 2413 insertions(+), 190 deletions(-) -- 2.1.4 _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev