[ovs-dev] [PATCH v7 0/7] ovsdb-idl: ovsdb client index support
Lance Richardson
lrichard at redhat.com
Fri Jul 14 19:15:42 UTC 2017
This set of patches is based on a series authored by Esteban Rodriguez
Betancourt, Jorge Arturo Sauma Vargas, Javier Albornoz, and Arnoldo Lutz
Guevara that has been inactive for a number of months.
v7:
- Added patches to make use of client idl indexing in ovn-controller
(these were previously in a separate RFC series).
- Incorporated feedback from Ben Pfaff.
- Rebased.
- Added a test case for NULL range endpoints.
- Fixed "git am" whitespace issue.
- Replaced assert() with ovs_assert() (checkpatch.py)
v6:
- More coding style fixes, text polishing.
- Fixed null pointer dereference when initializing cursor with
non-existent index name.
- Reworked v5 memory leak fix to avoid having to dynamically allocate
strings passed to *_index_set_*() functions.
- Simplified ovsdb_idl_index_init_row() and
ovsdb_idl_index_destroy_row__() somewhat.
v5:
- Rebased on ovs master.
- Implemented changes suggestion in review of v4.
- Coding style fixes, some text polishing.
- Testing by using this feature to eliminate a number of ad-hoc
indexing structures used in ovn-controller.
- Fixes for memory leaks found in testing.
Lance Richardson (7):
ovsdb-idl: compound indexes design document
lib: skiplist implementation
ovsdb-idl: idl compound indexes implementation
ovsdb-idl: Autogenerated functions for compound indexes
ovn-controller: use idl index for multicast group table
ovn-controller: use idl indexes for logical port table
ovn-controller: use idl indexes for logical datapath
Documentation/automake.mk | 1 +
Documentation/topics/idl-compound-indexes.rst | 302 +++++++++++++++++++
Documentation/topics/index.rst | 1 +
lib/automake.mk | 2 +
lib/ovsdb-idl-provider.h | 29 ++
lib/ovsdb-idl.c | 401 ++++++++++++++++++++++++++
lib/ovsdb-idl.h | 51 ++++
lib/skiplist.c | 261 +++++++++++++++++
lib/skiplist.h | 49 ++++
ovn/controller/binding.c | 49 ++--
ovn/controller/binding.h | 6 +-
ovn/controller/lflow.c | 43 ++-
ovn/controller/lflow.h | 4 -
ovn/controller/lport.c | 302 ++++++++-----------
ovn/controller/lport.h | 59 +---
ovn/controller/ovn-controller.c | 66 +++--
ovn/controller/physical.c | 14 +-
ovn/controller/physical.h | 2 +-
ovn/controller/pinctrl.c | 87 +++---
ovn/controller/pinctrl.h | 2 +-
ovsdb/ovsdb-idlc.in | 258 +++++++++++++++++
tests/.gitignore | 1 +
tests/automake.mk | 2 +
tests/library.at | 11 +
tests/ovsdb-idl.at | 282 ++++++++++++++++++
tests/test-ovsdb.c | 286 +++++++++++++++++-
tests/test-skiplist.c | 211 ++++++++++++++
27 files changed, 2415 insertions(+), 367 deletions(-)
create mode 100644 Documentation/topics/idl-compound-indexes.rst
create mode 100644 lib/skiplist.c
create mode 100644 lib/skiplist.h
create mode 100644 tests/test-skiplist.c
--
2.13.0
More information about the dev
mailing list