2
0
mirror of https://github.com/openvswitch/ovs synced 2025-08-29 13:27:59 +00:00

66 Commits

Author SHA1 Message Date
Ben Pfaff
4931f33ad9 ovsdb-server: Factor out complication by using jsonrpc_session. 2010-01-04 09:47:01 -08:00
Ben Pfaff
b54e22e91e Make ovs-vswitchd report when it is done configuring; make ovs-vsctl wait.
Until now the ovsdb-based vswitch has provided no way to know when it has
finished applying the configuration from the database.  This commit
introduces a way:

  * The client who wants to wait increments the "next_cfg" column of the
    Open_vSwitch record.

  * When ovs-vswitchd finishes reconfiguring, it sets the value of the
    "cur_cfg" column to that of the "next_cfg" column.

  * The client waits until the "cur_cfg" column is at least as great as
    the value it set into "next_cfg".

This allows us to drop the 5-second sleep in interface-reconfigure.
2009-12-16 16:26:17 -08:00
Ben Pfaff
d171b5846f ovsdb: Add "comment" feature to transactions and make ovs-vsctl use them.
The idea here is that transaction comments get copied to the ovsdb-server's
transaction log, which can then make it clear later why a particular change
was made to the database, to ease debugging.
2009-12-16 13:30:53 -08:00
Ben Pfaff
fbd8fd40a3 ovsdb-idl: Prevent segfault destroying an incomplete transaction. 2009-12-11 16:58:16 -08:00
Ben Pfaff
1ebeed630c ovsdb-idl: Fix deletion of modified row.
If the transaction modified a row and then deleted it, the IDL would
instead mistakenly leave the row entirely untouched.

This commit fixes this bug.  It needs a regression test, but this commit
does not add one.
2009-12-11 13:26:08 -08:00
Ben Pfaff
577aebdfec ovs-vsctl: Add --dry-run option. 2009-12-11 13:26:08 -08:00
Ben Pfaff
f0f54cb4dd ovsdb-idl: Fix row insertion and deletion behavior.
When the IDL was used to insert a row, but all of the new row's columns
were left at the default values, then the IDL would not insert the row at
all.

When the IDL was used to delete one or more rows, and the transaction did
not include any update or insertion operations, the transaction was dropped
entirely.

This commit fixes these two bugs.  It needs a regression test, but this
commit does not add one.
2009-12-11 13:26:08 -08:00
Ben Pfaff
586bb84a49 ovs-vsctl: Fix performance problem. 2009-12-09 13:29:02 -08:00
Ben Pfaff
76c91af91e ovsdb-idl: New function to obtain the current transaction from any row. 2009-12-08 17:14:56 -08:00
Ben Pfaff
72c6edc5d5 ovsdb-idl: Bug fixes. 2009-12-08 17:14:36 -08:00
Ben Pfaff
8bc915de7a ovsdb-idl: Update IDL data when "set" functions are called.
Until now, the "set" functions generated by the IDL updated the data in the
database (during commit) but not the data exposed by the IDL in its data
structures.  This was just an oversight, so this commit causes the data
exposed by IDL to be updated also.
2009-12-08 10:59:46 -08:00
Ben Pfaff
475281c01b ovsdb-idl: Make it possible to write data through the IDL.
Until now the IDL has been exclusively a read-only interface.  This commit
introduces a general-purpose interface for writing to ovsdb via the IDL.
2009-12-07 17:10:28 -08:00
Ben Pfaff
7ecd4b03dd ovsdb-idl: Fix memory leak. 2009-12-04 15:08:07 -08:00
Ben Pfaff
115f1e4dc5 ovsdb-idl: Optimize lookup of struct idl_table from struct idl_table_class.
Before, the idl_table could only be obtained through a hash lookup of a
string.  This way is faster and more straightforward.
2009-12-04 15:08:07 -08:00
Ben Pfaff
e9011ac832 ovsdb-idl: Fix resolution of references from one table to another.
Our tests only checked references from a table to itself, so of course
there were bugs in references from one table to another.  This fixes the
obvious one and adds a test.
2009-12-03 10:55:00 -08:00
Ben Pfaff
c3bb4bd7f1 ovsdb: Implement C bindings for IDL. 2009-12-02 11:26:15 -08:00