[ovs-dev] [PATCH] ovsdb Allow comparison on optional scalar types

Ben Pfaff blp at nicira.com
Wed Aug 20 17:31:14 UTC 2014

On Tue, Aug 19, 2014 at 05:28:55PM -0600, Terry Wilson wrote:
> This allows things like initiating a wait request on an interface
> ofport being set.
> When the optional field is empty and operation is != or excludes
> then the result is true; otherwise it is false. If the field is
> set then the field is compared normally for its type.
> Signed-off-by: Terry Wilson <twilson at redhat.com>

This is the best-written nontrivial patch from a new contributor in

Applied.  I folded in a few refinements:

diff --git a/AUTHORS b/AUTHORS
index 2a63450..cfbb03d 100644
@@ -126,6 +126,7 @@ Simon Horman            horms at verge.net.au
 Stephane A. Sezer       sas at cd80.net
 SUGYO Kazushi           sugyo.org at gmail.com
 Tadaaki Nagao           nagao at stratosphere.co.jp
+Terry Wilson            twilson at redhat.com
 Tetsuo NAKAGAWA         nakagawa at mxc.nes.nec.co.jp
 Thomas Goirand          zigo at debian.org
 Thomas Graf             tgraf at noironetworks.com
diff --git a/NEWS b/NEWS
index 1ea7bda..fb39811 100644
--- a/NEWS
+++ b/NEWS
@@ -17,6 +17,8 @@ Post-v2.3.0
      * OpenFlow 1.5 (draft) Copy-Field action is now supported.
      * OpenFlow 1.3+ table features requests are now supported (read-only).
      * Nicira extension "move" actions may now be included in action sets.
+   - ovsdb-server: New OVSDB protocol extension allows inequality tests on
+     "optional scalar" columns.  See ovsdb-server(1) for details.
 v2.3.0 - 14 Aug 2014
diff --git a/ovsdb/ovsdb-server.1.in b/ovsdb/ovsdb-server.1.in
index ec408a6..c713937 100644
--- a/ovsdb/ovsdb-server.1.in
+++ b/ovsdb/ovsdb-server.1.in
@@ -243,6 +243,15 @@ notifications (see below) to the request, it must be unique among all
 active monitors.  \fBovsdb\-server\fR rejects attempt to create two
 monitors with the same identifier.
+.IP "5.1. Notation"
+For <condition>, RFC 7047 only allows the use of \fB!=\fR, \fB==\fR,
+\fBincludes\fR, and \fBexcludes\fR operators with set types.  Open
+vSwitch 2.4 and later extend <condition> to allow the use of \fB<\fR,
+\fB<=\fR, \fB>=\fR, and \fB>\fR operators with columns with type ``set
+of 0 or 1 integer'' and ``set of 0 or 1 real''.  These conditions
+evaluate to false when the column is empty, and otherwise as described
+in RFC 7047 for integer and real types.
 .IP "6. IANA Considerations"
 \fBovsdb\-server\fR currently defaults to its historical port number
 6632.  Future versions will adopt IANA-assigned port 6640 as default.

More information about the dev mailing list