[ovs-dev] [indexes 0/6] Add uniqueness constraints ("indexes") to OVSDB.

Ben Pfaff blp at nicira.com
Thu Jun 2 23:19:18 UTC 2011


This makes it easier to write database clients that insert rows in
tables whose rows must have unique values in certain columns, since it
moves the final burden of ensuring uniqueness from the client to the
server.

Ben Pfaff (6):
  ovsdb: Make ovsdb_column_set_from_json() take table schema instead of
    table.
  ovsdb: Move ovsdb_table_put_row() into test program.
  util: New function for forming English lists.
  ovsdb: Add functions for formatting column sets and data in columns
    sets.
  ovsdb: Implement table uniqueness constraints ("indexes").
  vswitchd: Add unique indexes for some columns.

 lib/util.c                 |   11 +++
 lib/util.h                 |    2 +
 ovsdb/SPECS                |   10 ++
 ovsdb/column.c             |   30 ++++++-
 ovsdb/column.h             |   10 ++-
 ovsdb/execution.c          |    8 +-
 ovsdb/ovsdb-doc.in         |    2 +
 ovsdb/row.c                |   24 +++++-
 ovsdb/row.h                |   11 ++-
 ovsdb/table.c              |  109 +++++++++++++++++++++----
 ovsdb/table.h              |    8 ++-
 ovsdb/transaction.c        |  196 +++++++++++++++++++++++++++++++++++++++++++-
 python/ovs/db/schema.py    |   43 +++++++++-
 tests/ovsdb-execution.at   |   85 +++++++++++++++++++-
 tests/ovsdb-server.at      |    2 +-
 tests/ovsdb-table.at       |   25 ++++++
 tests/ovsdb-tool.at        |    2 +-
 tests/test-ovsdb.c         |   17 +++-
 vswitchd/vswitch.ovsschema |   22 +++--
 19 files changed, 566 insertions(+), 51 deletions(-)

-- 
1.7.4.4




More information about the dev mailing list