X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=ovsdb%2FSPECS;h=93db15d4cc41191c75af22688ff69cef252db0a4;hb=a0a9f31ddc4fc213f9550c93478b4f03b948f606;hp=17b0840cacc7706790be4c8f94a9fb07e1cadf9d;hpb=12996ef9bc757c4f86dc298e4680541527e5ed81;p=openvswitch
diff --git a/ovsdb/SPECS b/ovsdb/SPECS
index 17b0840c..93db15d4 100644
--- a/ovsdb/SPECS
+++ b/ovsdb/SPECS
@@ -599,7 +599,7 @@ Request object members:
"op": "insert" required
"table":
required
"row": required
- "uuid-name": optional
+ "uuid-name": optional
Result object members:
@@ -611,10 +611,31 @@ Semantics:
for all the columns in "table", those columns receive default
values.
- The new row receives a new, randomly generated UUID, which is
- returned as the "uuid" member of the result. If "uuid-name" is
- supplied, then the UUID is made available under that name to this
- operation and later operations within the same transaction.
+ If "uuid-name" is not supplied, the new row receives a new,
+ randomly generated UUID.
+
+ If "uuid-name" is supplied, then it is an error if has
+ previously appeared as the "uuid-name" in an "insert" operation.
+
+ If "uuid-name" is supplied and its previously appeared as the
+ "uuid-name" in a "declare" operation, then the new row receives
+ the UUID associated with that "uuid-name".
+
+ If "uuid-name" is supplied and its has not previously
+ appeared as the "uuid-name" in a "declare" operation, then the new
+ row also receives a new, randomly generated UUID. This UUID is
+ also made available under that name to this operation and later
+ operations within the same transaction.
+
+ The UUID for the new row is returned as the "uuid" member of the
+ result.
+
+Errors:
+
+ "error": "duplicate uuid-name"
+
+ The same "uuid-name" appeared on an earlier "insert" operation
+ within this transaction.
select
......
@@ -797,3 +818,37 @@ Errors:
"error": "aborted"
This operation always fails with this error.
+
+declare
+.......
+
+Request object members:
+
+ "op": "declare" required
+ "uuid-name": required
+
+Result object members:
+
+ none
+
+Semantics:
+
+ Predeclares a UUID named that may be referenced in later
+ operations as ["named-uuid", ] or (at most once) in an
+ "insert" operation as "uuid-name".
+
+ It is an error if has appeared as the "uuid-name" in a prior
+ "insert" or "declare" operation within this transaction.
+
+ The generated UUID is returned as the "uuid" member of the result.
+
+Result object members:
+
+ "uuid":
+
+Errors:
+
+ "error": "duplicate uuid-name"
+
+ The same "uuid-name" appeared on an earlier "insert" or
+ "declare" operation within this transaction.