`. See
// also [InstanceConfig][google.spanner.admin.instance.v1.InstanceConfig] and
// [ListInstanceConfigs][google.spanner.admin.instance.v1.InstanceAdmin.ListInstanceConfigs].
- string config = 2 [(google.api.resource_reference) = {
- type: "spanner.googleapis.com/InstanceConfig"
- }];
+ string config = 2 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "spanner.googleapis.com/InstanceConfig"
+ }
+ ];
// Required. The descriptive name for this instance as it appears in UIs.
// Must be unique per project and between 4 and 30 characters in length.
- string display_name = 3;
+ string display_name = 3 [(google.api.field_behavior) = REQUIRED];
// Required. The number of nodes allocated to this instance. This may be zero
// in API responses for instances that are not yet in state `READY`.
diff --git a/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/CreateSessionRequest.java b/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/CreateSessionRequest.java
index e0d65d159ab..4e32e35449f 100644
--- a/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/CreateSessionRequest.java
+++ b/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/CreateSessionRequest.java
@@ -185,10 +185,10 @@ public com.google.protobuf.ByteString getDatabaseBytes() {
*
*
*
- * The session to create.
+ * Required. The session to create.
*
*
- * .google.spanner.v1.Session session = 2;
+ * .google.spanner.v1.Session session = 2 [(.google.api.field_behavior) = REQUIRED];
*
* @return Whether the session field is set.
*/
@@ -200,10 +200,10 @@ public boolean hasSession() {
*
*
*
- * The session to create.
+ * Required. The session to create.
*
*
- * .google.spanner.v1.Session session = 2;
+ * .google.spanner.v1.Session session = 2 [(.google.api.field_behavior) = REQUIRED];
*
* @return The session.
*/
@@ -215,10 +215,10 @@ public com.google.spanner.v1.Session getSession() {
*
*
*
- * The session to create.
+ * Required. The session to create.
*
*
- * .google.spanner.v1.Session session = 2;
+ * .google.spanner.v1.Session session = 2 [(.google.api.field_behavior) = REQUIRED];
*/
@java.lang.Override
public com.google.spanner.v1.SessionOrBuilder getSessionOrBuilder() {
@@ -695,10 +695,11 @@ public Builder setDatabaseBytes(com.google.protobuf.ByteString value) {
*
*
*
- * The session to create.
+ * Required. The session to create.
*
*
- * .google.spanner.v1.Session session = 2;
+ * .google.spanner.v1.Session session = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
*
* @return Whether the session field is set.
*/
@@ -709,10 +710,11 @@ public boolean hasSession() {
*
*
*
- * The session to create.
+ * Required. The session to create.
*
*
- * .google.spanner.v1.Session session = 2;
+ * .google.spanner.v1.Session session = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
*
* @return The session.
*/
@@ -727,10 +729,11 @@ public com.google.spanner.v1.Session getSession() {
*
*
*
- * The session to create.
+ * Required. The session to create.
*
*
- * .google.spanner.v1.Session session = 2;
+ * .google.spanner.v1.Session session = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
*/
public Builder setSession(com.google.spanner.v1.Session value) {
if (sessionBuilder_ == null) {
@@ -749,10 +752,11 @@ public Builder setSession(com.google.spanner.v1.Session value) {
*
*
*
- * The session to create.
+ * Required. The session to create.
*
*
- * .google.spanner.v1.Session session = 2;
+ * .google.spanner.v1.Session session = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
*/
public Builder setSession(com.google.spanner.v1.Session.Builder builderForValue) {
if (sessionBuilder_ == null) {
@@ -768,10 +772,11 @@ public Builder setSession(com.google.spanner.v1.Session.Builder builderForValue)
*
*
*
- * The session to create.
+ * Required. The session to create.
*
*
- * .google.spanner.v1.Session session = 2;
+ * .google.spanner.v1.Session session = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
*/
public Builder mergeSession(com.google.spanner.v1.Session value) {
if (sessionBuilder_ == null) {
@@ -792,10 +797,11 @@ public Builder mergeSession(com.google.spanner.v1.Session value) {
*
*
*
- * The session to create.
+ * Required. The session to create.
*
*
- * .google.spanner.v1.Session session = 2;
+ * .google.spanner.v1.Session session = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
*/
public Builder clearSession() {
if (sessionBuilder_ == null) {
@@ -812,10 +818,11 @@ public Builder clearSession() {
*
*
*
- * The session to create.
+ * Required. The session to create.
*
*
- * .google.spanner.v1.Session session = 2;
+ * .google.spanner.v1.Session session = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
*/
public com.google.spanner.v1.Session.Builder getSessionBuilder() {
@@ -826,10 +833,11 @@ public com.google.spanner.v1.Session.Builder getSessionBuilder() {
*
*
*
- * The session to create.
+ * Required. The session to create.
*
*
- * .google.spanner.v1.Session session = 2;
+ * .google.spanner.v1.Session session = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
*/
public com.google.spanner.v1.SessionOrBuilder getSessionOrBuilder() {
if (sessionBuilder_ != null) {
@@ -842,10 +850,11 @@ public com.google.spanner.v1.SessionOrBuilder getSessionOrBuilder() {
*
*
*
- * The session to create.
+ * Required. The session to create.
*
*
- * .google.spanner.v1.Session session = 2;
+ * .google.spanner.v1.Session session = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
*/
private com.google.protobuf.SingleFieldBuilderV3<
com.google.spanner.v1.Session,
diff --git a/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/CreateSessionRequestOrBuilder.java b/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/CreateSessionRequestOrBuilder.java
index 3966d85f952..e6e69132e6f 100644
--- a/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/CreateSessionRequestOrBuilder.java
+++ b/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/CreateSessionRequestOrBuilder.java
@@ -56,10 +56,10 @@ public interface CreateSessionRequestOrBuilder
*
*
*
- * The session to create.
+ * Required. The session to create.
*
*
- * .google.spanner.v1.Session session = 2;
+ * .google.spanner.v1.Session session = 2 [(.google.api.field_behavior) = REQUIRED];
*
* @return Whether the session field is set.
*/
@@ -68,10 +68,10 @@ public interface CreateSessionRequestOrBuilder
*
*
*
- * The session to create.
+ * Required. The session to create.
*
*
- * .google.spanner.v1.Session session = 2;
+ * .google.spanner.v1.Session session = 2 [(.google.api.field_behavior) = REQUIRED];
*
* @return The session.
*/
@@ -80,10 +80,10 @@ public interface CreateSessionRequestOrBuilder
*
*
*
- * The session to create.
+ * Required. The session to create.
*
*
- * .google.spanner.v1.Session session = 2;
+ * .google.spanner.v1.Session session = 2 [(.google.api.field_behavior) = REQUIRED];
*/
com.google.spanner.v1.SessionOrBuilder getSessionOrBuilder();
}
diff --git a/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/ExecuteBatchDmlRequest.java b/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/ExecuteBatchDmlRequest.java
index 8e70092a3c9..9d5558673f0 100644
--- a/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/ExecuteBatchDmlRequest.java
+++ b/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/ExecuteBatchDmlRequest.java
@@ -179,7 +179,7 @@ public interface StatementOrBuilder
* Required. The DML string.
*
*
- * string sql = 1;
+ * string sql = 1 [(.google.api.field_behavior) = REQUIRED];
*
* @return The sql.
*/
@@ -191,7 +191,7 @@ public interface StatementOrBuilder
* Required. The DML string.
*
*
- * string sql = 1;
+ * string sql = 1 [(.google.api.field_behavior) = REQUIRED];
*
* @return The bytes for sql.
*/
@@ -482,7 +482,7 @@ protected com.google.protobuf.MapField internalGetMapField(int number) {
* Required. The DML string.
*
*
- * string sql = 1;
+ * string sql = 1 [(.google.api.field_behavior) = REQUIRED];
*
* @return The sql.
*/
@@ -505,7 +505,7 @@ public java.lang.String getSql() {
* Required. The DML string.
*
*
- * string sql = 1;
+ * string sql = 1 [(.google.api.field_behavior) = REQUIRED];
*
* @return The bytes for sql.
*/
@@ -1121,7 +1121,7 @@ public Builder mergeFrom(
* Required. The DML string.
*
*
- * string sql = 1;
+ * string sql = 1 [(.google.api.field_behavior) = REQUIRED];
*
* @return The sql.
*/
@@ -1143,7 +1143,7 @@ public java.lang.String getSql() {
* Required. The DML string.
*
*
- * string sql = 1;
+ * string sql = 1 [(.google.api.field_behavior) = REQUIRED];
*
* @return The bytes for sql.
*/
@@ -1165,7 +1165,7 @@ public com.google.protobuf.ByteString getSqlBytes() {
* Required. The DML string.
*
*
- * string sql = 1;
+ * string sql = 1 [(.google.api.field_behavior) = REQUIRED];
*
* @param value The sql to set.
* @return This builder for chaining.
@@ -1186,7 +1186,7 @@ public Builder setSql(java.lang.String value) {
* Required. The DML string.
*
*
- * string sql = 1;
+ * string sql = 1 [(.google.api.field_behavior) = REQUIRED];
*
* @return This builder for chaining.
*/
@@ -1203,7 +1203,7 @@ public Builder clearSql() {
* Required. The DML string.
*
*
- * string sql = 1;
+ * string sql = 1 [(.google.api.field_behavior) = REQUIRED];
*
* @param value The bytes for sql to set.
* @return This builder for chaining.
diff --git a/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/Mutation.java b/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/Mutation.java
index 779b3413e4d..b06d7426160 100644
--- a/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/Mutation.java
+++ b/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/Mutation.java
@@ -195,7 +195,7 @@ public interface WriteOrBuilder
* Required. The table whose rows will be written.
*
*
- * string table = 1;
+ * string table = 1 [(.google.api.field_behavior) = REQUIRED];
*
* @return The table.
*/
@@ -207,7 +207,7 @@ public interface WriteOrBuilder
* Required. The table whose rows will be written.
*
*
- * string table = 1;
+ * string table = 1 [(.google.api.field_behavior) = REQUIRED];
*
* @return The bytes for table.
*/
@@ -494,7 +494,7 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
* Required. The table whose rows will be written.
*
*
- * string table = 1;
+ * string table = 1 [(.google.api.field_behavior) = REQUIRED];
*
* @return The table.
*/
@@ -517,7 +517,7 @@ public java.lang.String getTable() {
* Required. The table whose rows will be written.
*
*
- * string table = 1;
+ * string table = 1 [(.google.api.field_behavior) = REQUIRED];
*
* @return The bytes for table.
*/
@@ -1130,7 +1130,7 @@ public Builder mergeFrom(
* Required. The table whose rows will be written.
*
*
- * string table = 1;
+ * string table = 1 [(.google.api.field_behavior) = REQUIRED];
*
* @return The table.
*/
@@ -1152,7 +1152,7 @@ public java.lang.String getTable() {
* Required. The table whose rows will be written.
*
*
- * string table = 1;
+ * string table = 1 [(.google.api.field_behavior) = REQUIRED];
*
* @return The bytes for table.
*/
@@ -1174,7 +1174,7 @@ public com.google.protobuf.ByteString getTableBytes() {
* Required. The table whose rows will be written.
*
*
- * string table = 1;
+ * string table = 1 [(.google.api.field_behavior) = REQUIRED];
*
* @param value The table to set.
* @return This builder for chaining.
@@ -1195,7 +1195,7 @@ public Builder setTable(java.lang.String value) {
* Required. The table whose rows will be written.
*
*
- * string table = 1;
+ * string table = 1 [(.google.api.field_behavior) = REQUIRED];
*
* @return This builder for chaining.
*/
@@ -1212,7 +1212,7 @@ public Builder clearTable() {
* Required. The table whose rows will be written.
*
*
- * string table = 1;
+ * string table = 1 [(.google.api.field_behavior) = REQUIRED];
*
* @param value The bytes for table to set.
* @return This builder for chaining.
@@ -1959,7 +1959,7 @@ public interface DeleteOrBuilder
* Required. The table whose rows will be deleted.
*
*
- * string table = 1;
+ * string table = 1 [(.google.api.field_behavior) = REQUIRED];
*
* @return The table.
*/
@@ -1971,7 +1971,7 @@ public interface DeleteOrBuilder
* Required. The table whose rows will be deleted.
*
*
- * string table = 1;
+ * string table = 1 [(.google.api.field_behavior) = REQUIRED];
*
* @return The bytes for table.
*/
@@ -1989,7 +1989,7 @@ public interface DeleteOrBuilder
* rows do not exist.
*
*
- * .google.spanner.v1.KeySet key_set = 2;
+ * .google.spanner.v1.KeySet key_set = 2 [(.google.api.field_behavior) = REQUIRED];
*
* @return Whether the keySet field is set.
*/
@@ -2006,7 +2006,7 @@ public interface DeleteOrBuilder
* rows do not exist.
*
*
- * .google.spanner.v1.KeySet key_set = 2;
+ * .google.spanner.v1.KeySet key_set = 2 [(.google.api.field_behavior) = REQUIRED];
*
* @return The keySet.
*/
@@ -2023,7 +2023,7 @@ public interface DeleteOrBuilder
* rows do not exist.
*
*
- * .google.spanner.v1.KeySet key_set = 2;
+ * .google.spanner.v1.KeySet key_set = 2 [(.google.api.field_behavior) = REQUIRED];
*/
com.google.spanner.v1.KeySetOrBuilder getKeySetOrBuilder();
}
@@ -2144,7 +2144,7 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
* Required. The table whose rows will be deleted.
*
*
- * string table = 1;
+ * string table = 1 [(.google.api.field_behavior) = REQUIRED];
*
* @return The table.
*/
@@ -2167,7 +2167,7 @@ public java.lang.String getTable() {
* Required. The table whose rows will be deleted.
*
*
- * string table = 1;
+ * string table = 1 [(.google.api.field_behavior) = REQUIRED];
*
* @return The bytes for table.
*/
@@ -2198,7 +2198,7 @@ public com.google.protobuf.ByteString getTableBytes() {
* rows do not exist.
*
*
- * .google.spanner.v1.KeySet key_set = 2;
+ * .google.spanner.v1.KeySet key_set = 2 [(.google.api.field_behavior) = REQUIRED];
*
* @return Whether the keySet field is set.
*/
@@ -2218,7 +2218,7 @@ public boolean hasKeySet() {
* rows do not exist.
*
*
- * .google.spanner.v1.KeySet key_set = 2;
+ * .google.spanner.v1.KeySet key_set = 2 [(.google.api.field_behavior) = REQUIRED];
*
* @return The keySet.
*/
@@ -2238,7 +2238,7 @@ public com.google.spanner.v1.KeySet getKeySet() {
* rows do not exist.
*
*
- * .google.spanner.v1.KeySet key_set = 2;
+ * .google.spanner.v1.KeySet key_set = 2 [(.google.api.field_behavior) = REQUIRED];
*/
@java.lang.Override
public com.google.spanner.v1.KeySetOrBuilder getKeySetOrBuilder() {
@@ -2600,7 +2600,7 @@ public Builder mergeFrom(
* Required. The table whose rows will be deleted.
*
*
- * string table = 1;
+ * string table = 1 [(.google.api.field_behavior) = REQUIRED];
*
* @return The table.
*/
@@ -2622,7 +2622,7 @@ public java.lang.String getTable() {
* Required. The table whose rows will be deleted.
*
*
- * string table = 1;
+ * string table = 1 [(.google.api.field_behavior) = REQUIRED];
*
* @return The bytes for table.
*/
@@ -2644,7 +2644,7 @@ public com.google.protobuf.ByteString getTableBytes() {
* Required. The table whose rows will be deleted.
*
*
- * string table = 1;
+ * string table = 1 [(.google.api.field_behavior) = REQUIRED];
*
* @param value The table to set.
* @return This builder for chaining.
@@ -2665,7 +2665,7 @@ public Builder setTable(java.lang.String value) {
* Required. The table whose rows will be deleted.
*
*
- * string table = 1;
+ * string table = 1 [(.google.api.field_behavior) = REQUIRED];
*
* @return This builder for chaining.
*/
@@ -2682,7 +2682,7 @@ public Builder clearTable() {
* Required. The table whose rows will be deleted.
*
*
- * string table = 1;
+ * string table = 1 [(.google.api.field_behavior) = REQUIRED];
*
* @param value The bytes for table to set.
* @return This builder for chaining.
@@ -2716,7 +2716,8 @@ public Builder setTableBytes(com.google.protobuf.ByteString value) {
* rows do not exist.
*
*
- * .google.spanner.v1.KeySet key_set = 2;
+ * .google.spanner.v1.KeySet key_set = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
*
* @return Whether the keySet field is set.
*/
@@ -2735,7 +2736,8 @@ public boolean hasKeySet() {
* rows do not exist.
*
*
- * .google.spanner.v1.KeySet key_set = 2;
+ * .google.spanner.v1.KeySet key_set = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
*
* @return The keySet.
*/
@@ -2758,7 +2760,8 @@ public com.google.spanner.v1.KeySet getKeySet() {
* rows do not exist.
*
*
- * .google.spanner.v1.KeySet key_set = 2;
+ * .google.spanner.v1.KeySet key_set = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
*/
public Builder setKeySet(com.google.spanner.v1.KeySet value) {
if (keySetBuilder_ == null) {
@@ -2785,7 +2788,8 @@ public Builder setKeySet(com.google.spanner.v1.KeySet value) {
* rows do not exist.
*
*
- * .google.spanner.v1.KeySet key_set = 2;
+ * .google.spanner.v1.KeySet key_set = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
*/
public Builder setKeySet(com.google.spanner.v1.KeySet.Builder builderForValue) {
if (keySetBuilder_ == null) {
@@ -2809,7 +2813,8 @@ public Builder setKeySet(com.google.spanner.v1.KeySet.Builder builderForValue) {
* rows do not exist.
*
*
- * .google.spanner.v1.KeySet key_set = 2;
+ * .google.spanner.v1.KeySet key_set = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
*/
public Builder mergeKeySet(com.google.spanner.v1.KeySet value) {
if (keySetBuilder_ == null) {
@@ -2838,7 +2843,8 @@ public Builder mergeKeySet(com.google.spanner.v1.KeySet value) {
* rows do not exist.
*
*
- * .google.spanner.v1.KeySet key_set = 2;
+ * .google.spanner.v1.KeySet key_set = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
*/
public Builder clearKeySet() {
if (keySetBuilder_ == null) {
@@ -2863,7 +2869,8 @@ public Builder clearKeySet() {
* rows do not exist.
*
*
- * .google.spanner.v1.KeySet key_set = 2;
+ * .google.spanner.v1.KeySet key_set = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
*/
public com.google.spanner.v1.KeySet.Builder getKeySetBuilder() {
@@ -2882,7 +2889,8 @@ public com.google.spanner.v1.KeySet.Builder getKeySetBuilder() {
* rows do not exist.
*
*
- * .google.spanner.v1.KeySet key_set = 2;
+ * .google.spanner.v1.KeySet key_set = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
*/
public com.google.spanner.v1.KeySetOrBuilder getKeySetOrBuilder() {
if (keySetBuilder_ != null) {
@@ -2903,7 +2911,8 @@ public com.google.spanner.v1.KeySetOrBuilder getKeySetOrBuilder() {
* rows do not exist.
*
*
- * .google.spanner.v1.KeySet key_set = 2;
+ * .google.spanner.v1.KeySet key_set = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
*/
private com.google.protobuf.SingleFieldBuilderV3<
com.google.spanner.v1.KeySet,
diff --git a/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/MutationProto.java b/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/MutationProto.java
index f7e439f86f0..faf23ffff0a 100644
--- a/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/MutationProto.java
+++ b/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/MutationProto.java
@@ -50,30 +50,32 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
java.lang.String[] descriptorData = {
"\n google/spanner/v1/mutation.proto\022\021goog"
+ "le.spanner.v1\032\034google/api/annotations.pr"
- + "oto\032\034google/protobuf/struct.proto\032\034googl"
- + "e/spanner/v1/keys.proto\"\306\003\n\010Mutation\0223\n\006"
- + "insert\030\001 \001(\0132!.google.spanner.v1.Mutatio"
- + "n.WriteH\000\0223\n\006update\030\002 \001(\0132!.google.spann"
- + "er.v1.Mutation.WriteH\000\022=\n\020insert_or_upda"
- + "te\030\003 \001(\0132!.google.spanner.v1.Mutation.Wr"
- + "iteH\000\0224\n\007replace\030\004 \001(\0132!.google.spanner."
- + "v1.Mutation.WriteH\000\0224\n\006delete\030\005 \001(\0132\".go"
- + "ogle.spanner.v1.Mutation.DeleteH\000\032S\n\005Wri"
- + "te\022\r\n\005table\030\001 \001(\t\022\017\n\007columns\030\002 \003(\t\022*\n\006va"
- + "lues\030\003 \003(\0132\032.google.protobuf.ListValue\032C"
- + "\n\006Delete\022\r\n\005table\030\001 \001(\t\022*\n\007key_set\030\002 \001(\013"
- + "2\031.google.spanner.v1.KeySetB\013\n\toperation"
- + "B\263\001\n\025com.google.spanner.v1B\rMutationProt"
- + "oP\001Z8google.golang.org/genproto/googleap"
- + "is/spanner/v1;spanner\252\002\027Google.Cloud.Spa"
- + "nner.V1\312\002\027Google\\Cloud\\Spanner\\V1\352\002\032Goog"
- + "le::Cloud::Spanner::V1b\006proto3"
+ + "oto\032\037google/api/field_behavior.proto\032\034go"
+ + "ogle/protobuf/struct.proto\032\034google/spann"
+ + "er/v1/keys.proto\"\325\003\n\010Mutation\0223\n\006insert\030"
+ + "\001 \001(\0132!.google.spanner.v1.Mutation.Write"
+ + "H\000\0223\n\006update\030\002 \001(\0132!.google.spanner.v1.M"
+ + "utation.WriteH\000\022=\n\020insert_or_update\030\003 \001("
+ + "\0132!.google.spanner.v1.Mutation.WriteH\000\0224"
+ + "\n\007replace\030\004 \001(\0132!.google.spanner.v1.Muta"
+ + "tion.WriteH\000\0224\n\006delete\030\005 \001(\0132\".google.sp"
+ + "anner.v1.Mutation.DeleteH\000\032X\n\005Write\022\022\n\005t"
+ + "able\030\001 \001(\tB\003\340A\002\022\017\n\007columns\030\002 \003(\t\022*\n\006valu"
+ + "es\030\003 \003(\0132\032.google.protobuf.ListValue\032M\n\006"
+ + "Delete\022\022\n\005table\030\001 \001(\tB\003\340A\002\022/\n\007key_set\030\002 "
+ + "\001(\0132\031.google.spanner.v1.KeySetB\003\340A\002B\013\n\to"
+ + "perationB\263\001\n\025com.google.spanner.v1B\rMuta"
+ + "tionProtoP\001Z8google.golang.org/genproto/"
+ + "googleapis/spanner/v1;spanner\252\002\027Google.C"
+ + "loud.Spanner.V1\312\002\027Google\\Cloud\\Spanner\\V"
+ + "1\352\002\032Google::Cloud::Spanner::V1b\006proto3"
};
descriptor =
com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom(
descriptorData,
new com.google.protobuf.Descriptors.FileDescriptor[] {
com.google.api.AnnotationsProto.getDescriptor(),
+ com.google.api.FieldBehaviorProto.getDescriptor(),
com.google.protobuf.StructProto.getDescriptor(),
com.google.spanner.v1.KeysProto.getDescriptor(),
});
@@ -101,7 +103,13 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
new java.lang.String[] {
"Table", "KeySet",
});
+ com.google.protobuf.ExtensionRegistry registry =
+ com.google.protobuf.ExtensionRegistry.newInstance();
+ registry.add(com.google.api.FieldBehaviorProto.fieldBehavior);
+ com.google.protobuf.Descriptors.FileDescriptor.internalUpdateFileDescriptor(
+ descriptor, registry);
com.google.api.AnnotationsProto.getDescriptor();
+ com.google.api.FieldBehaviorProto.getDescriptor();
com.google.protobuf.StructProto.getDescriptor();
com.google.spanner.v1.KeysProto.getDescriptor();
}
diff --git a/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/SpannerProto.java b/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/SpannerProto.java
index 3fbfef6ea9a..440f749d535 100644
--- a/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/SpannerProto.java
+++ b/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/SpannerProto.java
@@ -156,204 +156,204 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
+ "gle/spanner/v1/mutation.proto\032\"google/sp"
+ "anner/v1/result_set.proto\032#google/spanne"
+ "r/v1/transaction.proto\032\034google/spanner/v"
- + "1/type.proto\"~\n\024CreateSessionRequest\0229\n\010"
- + "database\030\001 \001(\tB\'\340A\002\372A!\n\037spanner.googleap"
- + "is.com/Database\022+\n\007session\030\002 \001(\0132\032.googl"
- + "e.spanner.v1.Session\"\251\001\n\032BatchCreateSess"
- + "ionsRequest\0229\n\010database\030\001 \001(\tB\'\340A\002\372A!\n\037s"
- + "panner.googleapis.com/Database\0224\n\020sessio"
- + "n_template\030\002 \001(\0132\032.google.spanner.v1.Ses"
- + "sion\022\032\n\rsession_count\030\003 \001(\005B\003\340A\002\"J\n\033Batc"
- + "hCreateSessionsResponse\022+\n\007session\030\001 \003(\013"
- + "2\032.google.spanner.v1.Session\"\363\002\n\007Session"
- + "\022\021\n\004name\030\001 \001(\tB\003\340A\003\0226\n\006labels\030\002 \003(\0132&.go"
- + "ogle.spanner.v1.Session.LabelsEntry\0224\n\013c"
- + "reate_time\030\003 \001(\0132\032.google.protobuf.Times"
- + "tampB\003\340A\003\022B\n\031approximate_last_use_time\030\004"
- + " \001(\0132\032.google.protobuf.TimestampB\003\340A\003\032-\n"
- + "\013LabelsEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t"
- + ":\0028\001:t\352Aq\n\036spanner.googleapis.com/Sessio"
- + "n\022Oprojects/{project}/instances/{instanc"
- + "e}/databases/{database}/sessions/{sessio"
- + "n}\"I\n\021GetSessionRequest\0224\n\004name\030\001 \001(\tB&\340"
- + "A\002\372A \n\036spanner.googleapis.com/Session\"\207\001"
- + "\n\023ListSessionsRequest\0229\n\010database\030\001 \001(\tB"
- + "\'\340A\002\372A!\n\037spanner.googleapis.com/Database"
- + "\022\021\n\tpage_size\030\002 \001(\005\022\022\n\npage_token\030\003 \001(\t\022"
- + "\016\n\006filter\030\004 \001(\t\"]\n\024ListSessionsResponse\022"
- + ",\n\010sessions\030\001 \003(\0132\032.google.spanner.v1.Se"
- + "ssion\022\027\n\017next_page_token\030\002 \001(\t\"L\n\024Delete"
- + "SessionRequest\0224\n\004name\030\001 \001(\tB&\340A\002\372A \n\036sp"
- + "anner.googleapis.com/Session\"\334\001\n\016Request"
- + "Options\022<\n\010priority\030\001 \001(\0162*.google.spann"
- + "er.v1.RequestOptions.Priority\022\023\n\013request"
- + "_tag\030\002 \001(\t\022\027\n\017transaction_tag\030\003 \001(\t\"^\n\010P"
- + "riority\022\030\n\024PRIORITY_UNSPECIFIED\020\000\022\020\n\014PRI"
- + "ORITY_LOW\020\001\022\023\n\017PRIORITY_MEDIUM\020\002\022\021\n\rPRIO"
- + "RITY_HIGH\020\003\"\344\005\n\021ExecuteSqlRequest\0227\n\007ses"
- + "sion\030\001 \001(\tB&\340A\002\372A \n\036spanner.googleapis.c"
- + "om/Session\022;\n\013transaction\030\002 \001(\0132&.google"
- + ".spanner.v1.TransactionSelector\022\020\n\003sql\030\003"
- + " \001(\tB\003\340A\002\022\'\n\006params\030\004 \001(\0132\027.google.proto"
- + "buf.Struct\022I\n\013param_types\030\005 \003(\01324.google"
- + ".spanner.v1.ExecuteSqlRequest.ParamTypes"
- + "Entry\022\024\n\014resume_token\030\006 \001(\014\022B\n\nquery_mod"
- + "e\030\007 \001(\0162..google.spanner.v1.ExecuteSqlRe"
- + "quest.QueryMode\022\027\n\017partition_token\030\010 \001(\014"
- + "\022\r\n\005seqno\030\t \001(\003\022H\n\rquery_options\030\n \001(\01321"
- + ".google.spanner.v1.ExecuteSqlRequest.Que"
- + "ryOptions\022:\n\017request_options\030\013 \001(\0132!.goo"
- + "gle.spanner.v1.RequestOptions\032O\n\014QueryOp"
- + "tions\022\031\n\021optimizer_version\030\001 \001(\t\022$\n\034opti"
- + "mizer_statistics_package\030\002 \001(\t\032J\n\017ParamT"
- + "ypesEntry\022\013\n\003key\030\001 \001(\t\022&\n\005value\030\002 \001(\0132\027."
- + "google.spanner.v1.Type:\0028\001\".\n\tQueryMode\022"
- + "\n\n\006NORMAL\020\000\022\010\n\004PLAN\020\001\022\013\n\007PROFILE\020\002\"\233\004\n\026E"
- + "xecuteBatchDmlRequest\0227\n\007session\030\001 \001(\tB&"
- + "\340A\002\372A \n\036spanner.googleapis.com/Session\022@"
- + "\n\013transaction\030\002 \001(\0132&.google.spanner.v1."
- + "TransactionSelectorB\003\340A\002\022L\n\nstatements\030\003"
- + " \003(\01323.google.spanner.v1.ExecuteBatchDml"
- + "Request.StatementB\003\340A\002\022\022\n\005seqno\030\004 \001(\003B\003\340"
- + "A\002\022:\n\017request_options\030\005 \001(\0132!.google.spa"
- + "nner.v1.RequestOptions\032\347\001\n\tStatement\022\013\n\003"
- + "sql\030\001 \001(\t\022\'\n\006params\030\002 \001(\0132\027.google.proto"
- + "buf.Struct\022X\n\013param_types\030\003 \003(\0132C.google"
- + ".spanner.v1.ExecuteBatchDmlRequest.State"
- + "ment.ParamTypesEntry\032J\n\017ParamTypesEntry\022"
- + "\013\n\003key\030\001 \001(\t\022&\n\005value\030\002 \001(\0132\027.google.spa"
- + "nner.v1.Type:\0028\001\"p\n\027ExecuteBatchDmlRespo"
- + "nse\0221\n\013result_sets\030\001 \003(\0132\034.google.spanne"
- + "r.v1.ResultSet\022\"\n\006status\030\002 \001(\0132\022.google."
- + "rpc.Status\"H\n\020PartitionOptions\022\034\n\024partit"
- + "ion_size_bytes\030\001 \001(\003\022\026\n\016max_partitions\030\002"
- + " \001(\003\"\243\003\n\025PartitionQueryRequest\0227\n\007sessio"
- + "n\030\001 \001(\tB&\340A\002\372A \n\036spanner.googleapis.com/"
- + "Session\022;\n\013transaction\030\002 \001(\0132&.google.sp"
- + "anner.v1.TransactionSelector\022\020\n\003sql\030\003 \001("
- + "\tB\003\340A\002\022\'\n\006params\030\004 \001(\0132\027.google.protobuf"
- + ".Struct\022M\n\013param_types\030\005 \003(\01328.google.sp"
- + "anner.v1.PartitionQueryRequest.ParamType"
- + "sEntry\022>\n\021partition_options\030\006 \001(\0132#.goog"
- + "le.spanner.v1.PartitionOptions\032J\n\017ParamT"
- + "ypesEntry\022\013\n\003key\030\001 \001(\t\022&\n\005value\030\002 \001(\0132\027."
- + "google.spanner.v1.Type:\0028\001\"\261\002\n\024Partition"
- + "ReadRequest\0227\n\007session\030\001 \001(\tB&\340A\002\372A \n\036sp"
- + "anner.googleapis.com/Session\022;\n\013transact"
- + "ion\030\002 \001(\0132&.google.spanner.v1.Transactio"
- + "nSelector\022\022\n\005table\030\003 \001(\tB\003\340A\002\022\r\n\005index\030\004"
- + " \001(\t\022\017\n\007columns\030\005 \003(\t\022/\n\007key_set\030\006 \001(\0132\031"
- + ".google.spanner.v1.KeySetB\003\340A\002\022>\n\021partit"
- + "ion_options\030\t \001(\0132#.google.spanner.v1.Pa"
- + "rtitionOptions\"$\n\tPartition\022\027\n\017partition"
- + "_token\030\001 \001(\014\"z\n\021PartitionResponse\0220\n\npar"
- + "titions\030\001 \003(\0132\034.google.spanner.v1.Partit"
- + "ion\0223\n\013transaction\030\002 \001(\0132\036.google.spanne"
- + "r.v1.Transaction\"\347\002\n\013ReadRequest\0227\n\007sess"
- + "ion\030\001 \001(\tB&\340A\002\372A \n\036spanner.googleapis.co"
- + "m/Session\022;\n\013transaction\030\002 \001(\0132&.google."
- + "spanner.v1.TransactionSelector\022\022\n\005table\030"
- + "\003 \001(\tB\003\340A\002\022\r\n\005index\030\004 \001(\t\022\024\n\007columns\030\005 \003"
- + "(\tB\003\340A\002\022/\n\007key_set\030\006 \001(\0132\031.google.spanne"
- + "r.v1.KeySetB\003\340A\002\022\r\n\005limit\030\010 \001(\003\022\024\n\014resum"
- + "e_token\030\t \001(\014\022\027\n\017partition_token\030\n \001(\014\022:"
- + "\n\017request_options\030\013 \001(\0132!.google.spanner"
- + ".v1.RequestOptions\"\313\001\n\027BeginTransactionR"
- + "equest\0227\n\007session\030\001 \001(\tB&\340A\002\372A \n\036spanner"
- + ".googleapis.com/Session\022;\n\007options\030\002 \001(\013"
- + "2%.google.spanner.v1.TransactionOptionsB"
- + "\003\340A\002\022:\n\017request_options\030\003 \001(\0132!.google.s"
- + "panner.v1.RequestOptions\"\303\002\n\rCommitReque"
- + "st\0227\n\007session\030\001 \001(\tB&\340A\002\372A \n\036spanner.goo"
- + "gleapis.com/Session\022\030\n\016transaction_id\030\002 "
- + "\001(\014H\000\022G\n\026single_use_transaction\030\003 \001(\0132%."
- + "google.spanner.v1.TransactionOptionsH\000\022."
- + "\n\tmutations\030\004 \003(\0132\033.google.spanner.v1.Mu"
- + "tation\022\033\n\023return_commit_stats\030\005 \001(\010\022:\n\017r"
- + "equest_options\030\006 \001(\0132!.google.spanner.v1"
- + ".RequestOptionsB\r\n\013transaction\"g\n\017Rollba"
- + "ckRequest\0227\n\007session\030\001 \001(\tB&\340A\002\372A \n\036span"
- + "ner.googleapis.com/Session\022\033\n\016transactio"
- + "n_id\030\002 \001(\014B\003\340A\0022\300\026\n\007Spanner\022\246\001\n\rCreateSe"
- + "ssion\022\'.google.spanner.v1.CreateSessionR"
- + "equest\032\032.google.spanner.v1.Session\"P\202\323\344\223"
- + "\002?\":/v1/{database=projects/*/instances/*"
- + "/databases/*}/sessions:\001*\332A\010database\022\340\001\n"
- + "\023BatchCreateSessions\022-.google.spanner.v1"
- + ".BatchCreateSessionsRequest\032..google.spa"
- + "nner.v1.BatchCreateSessionsResponse\"j\202\323\344"
- + "\223\002K\"F/v1/{database=projects/*/instances/"
- + "*/databases/*}/sessions:batchCreate:\001*\332A"
- + "\026database,session_count\022\227\001\n\nGetSession\022$"
- + ".google.spanner.v1.GetSessionRequest\032\032.g"
- + "oogle.spanner.v1.Session\"G\202\323\344\223\002:\0228/v1/{n"
- + "ame=projects/*/instances/*/databases/*/s"
- + "essions/*}\332A\004name\022\256\001\n\014ListSessions\022&.goo"
- + "gle.spanner.v1.ListSessionsRequest\032\'.goo"
- + "gle.spanner.v1.ListSessionsResponse\"M\202\323\344"
- + "\223\002<\022:/v1/{database=projects/*/instances/"
- + "*/databases/*}/sessions\332A\010database\022\231\001\n\rD"
- + "eleteSession\022\'.google.spanner.v1.DeleteS"
- + "essionRequest\032\026.google.protobuf.Empty\"G\202"
- + "\323\344\223\002:*8/v1/{name=projects/*/instances/*/"
- + "databases/*/sessions/*}\332A\004name\022\243\001\n\nExecu"
- + "teSql\022$.google.spanner.v1.ExecuteSqlRequ"
- + "est\032\034.google.spanner.v1.ResultSet\"Q\202\323\344\223\002"
- + "K\"F/v1/{session=projects/*/instances/*/d"
- + "atabases/*/sessions/*}:executeSql:\001*\022\276\001\n"
- + "\023ExecuteStreamingSql\022$.google.spanner.v1"
- + ".ExecuteSqlRequest\032#.google.spanner.v1.P"
- + "artialResultSet\"Z\202\323\344\223\002T\"O/v1/{session=pr"
- + "ojects/*/instances/*/databases/*/session"
- + "s/*}:executeStreamingSql:\001*0\001\022\300\001\n\017Execut"
- + "eBatchDml\022).google.spanner.v1.ExecuteBat"
- + "chDmlRequest\032*.google.spanner.v1.Execute"
- + "BatchDmlResponse\"V\202\323\344\223\002P\"K/v1/{session=p"
- + "rojects/*/instances/*/databases/*/sessio"
- + "ns/*}:executeBatchDml:\001*\022\221\001\n\004Read\022\036.goog"
- + "le.spanner.v1.ReadRequest\032\034.google.spann"
- + "er.v1.ResultSet\"K\202\323\344\223\002E\"@/v1/{session=pr"
+ + "1/type.proto\"\203\001\n\024CreateSessionRequest\0229\n"
+ + "\010database\030\001 \001(\tB\'\340A\002\372A!\n\037spanner.googlea"
+ + "pis.com/Database\0220\n\007session\030\002 \001(\0132\032.goog"
+ + "le.spanner.v1.SessionB\003\340A\002\"\251\001\n\032BatchCrea"
+ + "teSessionsRequest\0229\n\010database\030\001 \001(\tB\'\340A\002"
+ + "\372A!\n\037spanner.googleapis.com/Database\0224\n\020"
+ + "session_template\030\002 \001(\0132\032.google.spanner."
+ + "v1.Session\022\032\n\rsession_count\030\003 \001(\005B\003\340A\002\"J"
+ + "\n\033BatchCreateSessionsResponse\022+\n\007session"
+ + "\030\001 \003(\0132\032.google.spanner.v1.Session\"\363\002\n\007S"
+ + "ession\022\021\n\004name\030\001 \001(\tB\003\340A\003\0226\n\006labels\030\002 \003("
+ + "\0132&.google.spanner.v1.Session.LabelsEntr"
+ + "y\0224\n\013create_time\030\003 \001(\0132\032.google.protobuf"
+ + ".TimestampB\003\340A\003\022B\n\031approximate_last_use_"
+ + "time\030\004 \001(\0132\032.google.protobuf.TimestampB\003"
+ + "\340A\003\032-\n\013LabelsEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005value"
+ + "\030\002 \001(\t:\0028\001:t\352Aq\n\036spanner.googleapis.com/"
+ + "Session\022Oprojects/{project}/instances/{i"
+ + "nstance}/databases/{database}/sessions/{"
+ + "session}\"I\n\021GetSessionRequest\0224\n\004name\030\001 "
+ + "\001(\tB&\340A\002\372A \n\036spanner.googleapis.com/Sess"
+ + "ion\"\207\001\n\023ListSessionsRequest\0229\n\010database\030"
+ + "\001 \001(\tB\'\340A\002\372A!\n\037spanner.googleapis.com/Da"
+ + "tabase\022\021\n\tpage_size\030\002 \001(\005\022\022\n\npage_token\030"
+ + "\003 \001(\t\022\016\n\006filter\030\004 \001(\t\"]\n\024ListSessionsRes"
+ + "ponse\022,\n\010sessions\030\001 \003(\0132\032.google.spanner"
+ + ".v1.Session\022\027\n\017next_page_token\030\002 \001(\t\"L\n\024"
+ + "DeleteSessionRequest\0224\n\004name\030\001 \001(\tB&\340A\002\372"
+ + "A \n\036spanner.googleapis.com/Session\"\334\001\n\016R"
+ + "equestOptions\022<\n\010priority\030\001 \001(\0162*.google"
+ + ".spanner.v1.RequestOptions.Priority\022\023\n\013r"
+ + "equest_tag\030\002 \001(\t\022\027\n\017transaction_tag\030\003 \001("
+ + "\t\"^\n\010Priority\022\030\n\024PRIORITY_UNSPECIFIED\020\000\022"
+ + "\020\n\014PRIORITY_LOW\020\001\022\023\n\017PRIORITY_MEDIUM\020\002\022\021"
+ + "\n\rPRIORITY_HIGH\020\003\"\344\005\n\021ExecuteSqlRequest\022"
+ + "7\n\007session\030\001 \001(\tB&\340A\002\372A \n\036spanner.google"
+ + "apis.com/Session\022;\n\013transaction\030\002 \001(\0132&."
+ + "google.spanner.v1.TransactionSelector\022\020\n"
+ + "\003sql\030\003 \001(\tB\003\340A\002\022\'\n\006params\030\004 \001(\0132\027.google"
+ + ".protobuf.Struct\022I\n\013param_types\030\005 \003(\01324."
+ + "google.spanner.v1.ExecuteSqlRequest.Para"
+ + "mTypesEntry\022\024\n\014resume_token\030\006 \001(\014\022B\n\nque"
+ + "ry_mode\030\007 \001(\0162..google.spanner.v1.Execut"
+ + "eSqlRequest.QueryMode\022\027\n\017partition_token"
+ + "\030\010 \001(\014\022\r\n\005seqno\030\t \001(\003\022H\n\rquery_options\030\n"
+ + " \001(\01321.google.spanner.v1.ExecuteSqlReque"
+ + "st.QueryOptions\022:\n\017request_options\030\013 \001(\013"
+ + "2!.google.spanner.v1.RequestOptions\032O\n\014Q"
+ + "ueryOptions\022\031\n\021optimizer_version\030\001 \001(\t\022$"
+ + "\n\034optimizer_statistics_package\030\002 \001(\t\032J\n\017"
+ + "ParamTypesEntry\022\013\n\003key\030\001 \001(\t\022&\n\005value\030\002 "
+ + "\001(\0132\027.google.spanner.v1.Type:\0028\001\".\n\tQuer"
+ + "yMode\022\n\n\006NORMAL\020\000\022\010\n\004PLAN\020\001\022\013\n\007PROFILE\020\002"
+ + "\"\240\004\n\026ExecuteBatchDmlRequest\0227\n\007session\030\001"
+ + " \001(\tB&\340A\002\372A \n\036spanner.googleapis.com/Ses"
+ + "sion\022@\n\013transaction\030\002 \001(\0132&.google.spann"
+ + "er.v1.TransactionSelectorB\003\340A\002\022L\n\nstatem"
+ + "ents\030\003 \003(\01323.google.spanner.v1.ExecuteBa"
+ + "tchDmlRequest.StatementB\003\340A\002\022\022\n\005seqno\030\004 "
+ + "\001(\003B\003\340A\002\022:\n\017request_options\030\005 \001(\0132!.goog"
+ + "le.spanner.v1.RequestOptions\032\354\001\n\tStateme"
+ + "nt\022\020\n\003sql\030\001 \001(\tB\003\340A\002\022\'\n\006params\030\002 \001(\0132\027.g"
+ + "oogle.protobuf.Struct\022X\n\013param_types\030\003 \003"
+ + "(\0132C.google.spanner.v1.ExecuteBatchDmlRe"
+ + "quest.Statement.ParamTypesEntry\032J\n\017Param"
+ + "TypesEntry\022\013\n\003key\030\001 \001(\t\022&\n\005value\030\002 \001(\0132\027"
+ + ".google.spanner.v1.Type:\0028\001\"p\n\027ExecuteBa"
+ + "tchDmlResponse\0221\n\013result_sets\030\001 \003(\0132\034.go"
+ + "ogle.spanner.v1.ResultSet\022\"\n\006status\030\002 \001("
+ + "\0132\022.google.rpc.Status\"H\n\020PartitionOption"
+ + "s\022\034\n\024partition_size_bytes\030\001 \001(\003\022\026\n\016max_p"
+ + "artitions\030\002 \001(\003\"\243\003\n\025PartitionQueryReques"
+ + "t\0227\n\007session\030\001 \001(\tB&\340A\002\372A \n\036spanner.goog"
+ + "leapis.com/Session\022;\n\013transaction\030\002 \001(\0132"
+ + "&.google.spanner.v1.TransactionSelector\022"
+ + "\020\n\003sql\030\003 \001(\tB\003\340A\002\022\'\n\006params\030\004 \001(\0132\027.goog"
+ + "le.protobuf.Struct\022M\n\013param_types\030\005 \003(\0132"
+ + "8.google.spanner.v1.PartitionQueryReques"
+ + "t.ParamTypesEntry\022>\n\021partition_options\030\006"
+ + " \001(\0132#.google.spanner.v1.PartitionOption"
+ + "s\032J\n\017ParamTypesEntry\022\013\n\003key\030\001 \001(\t\022&\n\005val"
+ + "ue\030\002 \001(\0132\027.google.spanner.v1.Type:\0028\001\"\261\002"
+ + "\n\024PartitionReadRequest\0227\n\007session\030\001 \001(\tB"
+ + "&\340A\002\372A \n\036spanner.googleapis.com/Session\022"
+ + ";\n\013transaction\030\002 \001(\0132&.google.spanner.v1"
+ + ".TransactionSelector\022\022\n\005table\030\003 \001(\tB\003\340A\002"
+ + "\022\r\n\005index\030\004 \001(\t\022\017\n\007columns\030\005 \003(\t\022/\n\007key_"
+ + "set\030\006 \001(\0132\031.google.spanner.v1.KeySetB\003\340A"
+ + "\002\022>\n\021partition_options\030\t \001(\0132#.google.sp"
+ + "anner.v1.PartitionOptions\"$\n\tPartition\022\027"
+ + "\n\017partition_token\030\001 \001(\014\"z\n\021PartitionResp"
+ + "onse\0220\n\npartitions\030\001 \003(\0132\034.google.spanne"
+ + "r.v1.Partition\0223\n\013transaction\030\002 \001(\0132\036.go"
+ + "ogle.spanner.v1.Transaction\"\347\002\n\013ReadRequ"
+ + "est\0227\n\007session\030\001 \001(\tB&\340A\002\372A \n\036spanner.go"
+ + "ogleapis.com/Session\022;\n\013transaction\030\002 \001("
+ + "\0132&.google.spanner.v1.TransactionSelecto"
+ + "r\022\022\n\005table\030\003 \001(\tB\003\340A\002\022\r\n\005index\030\004 \001(\t\022\024\n\007"
+ + "columns\030\005 \003(\tB\003\340A\002\022/\n\007key_set\030\006 \001(\0132\031.go"
+ + "ogle.spanner.v1.KeySetB\003\340A\002\022\r\n\005limit\030\010 \001"
+ + "(\003\022\024\n\014resume_token\030\t \001(\014\022\027\n\017partition_to"
+ + "ken\030\n \001(\014\022:\n\017request_options\030\013 \001(\0132!.goo"
+ + "gle.spanner.v1.RequestOptions\"\313\001\n\027BeginT"
+ + "ransactionRequest\0227\n\007session\030\001 \001(\tB&\340A\002\372"
+ + "A \n\036spanner.googleapis.com/Session\022;\n\007op"
+ + "tions\030\002 \001(\0132%.google.spanner.v1.Transact"
+ + "ionOptionsB\003\340A\002\022:\n\017request_options\030\003 \001(\013"
+ + "2!.google.spanner.v1.RequestOptions\"\303\002\n\r"
+ + "CommitRequest\0227\n\007session\030\001 \001(\tB&\340A\002\372A \n\036"
+ + "spanner.googleapis.com/Session\022\030\n\016transa"
+ + "ction_id\030\002 \001(\014H\000\022G\n\026single_use_transacti"
+ + "on\030\003 \001(\0132%.google.spanner.v1.Transaction"
+ + "OptionsH\000\022.\n\tmutations\030\004 \003(\0132\033.google.sp"
+ + "anner.v1.Mutation\022\033\n\023return_commit_stats"
+ + "\030\005 \001(\010\022:\n\017request_options\030\006 \001(\0132!.google"
+ + ".spanner.v1.RequestOptionsB\r\n\013transactio"
+ + "n\"g\n\017RollbackRequest\0227\n\007session\030\001 \001(\tB&\340"
+ + "A\002\372A \n\036spanner.googleapis.com/Session\022\033\n"
+ + "\016transaction_id\030\002 \001(\014B\003\340A\0022\300\026\n\007Spanner\022\246"
+ + "\001\n\rCreateSession\022\'.google.spanner.v1.Cre"
+ + "ateSessionRequest\032\032.google.spanner.v1.Se"
+ + "ssion\"P\202\323\344\223\002?\":/v1/{database=projects/*/"
+ + "instances/*/databases/*}/sessions:\001*\332A\010d"
+ + "atabase\022\340\001\n\023BatchCreateSessions\022-.google"
+ + ".spanner.v1.BatchCreateSessionsRequest\032."
+ + ".google.spanner.v1.BatchCreateSessionsRe"
+ + "sponse\"j\202\323\344\223\002K\"F/v1/{database=projects/*"
+ + "/instances/*/databases/*}/sessions:batch"
+ + "Create:\001*\332A\026database,session_count\022\227\001\n\nG"
+ + "etSession\022$.google.spanner.v1.GetSession"
+ + "Request\032\032.google.spanner.v1.Session\"G\202\323\344"
+ + "\223\002:\0228/v1/{name=projects/*/instances/*/da"
+ + "tabases/*/sessions/*}\332A\004name\022\256\001\n\014ListSes"
+ + "sions\022&.google.spanner.v1.ListSessionsRe"
+ + "quest\032\'.google.spanner.v1.ListSessionsRe"
+ + "sponse\"M\202\323\344\223\002<\022:/v1/{database=projects/*"
+ + "/instances/*/databases/*}/sessions\332A\010dat"
+ + "abase\022\231\001\n\rDeleteSession\022\'.google.spanner"
+ + ".v1.DeleteSessionRequest\032\026.google.protob"
+ + "uf.Empty\"G\202\323\344\223\002:*8/v1/{name=projects/*/i"
+ + "nstances/*/databases/*/sessions/*}\332A\004nam"
+ + "e\022\243\001\n\nExecuteSql\022$.google.spanner.v1.Exe"
+ + "cuteSqlRequest\032\034.google.spanner.v1.Resul"
+ + "tSet\"Q\202\323\344\223\002K\"F/v1/{session=projects/*/in"
+ + "stances/*/databases/*/sessions/*}:execut"
+ + "eSql:\001*\022\276\001\n\023ExecuteStreamingSql\022$.google"
+ + ".spanner.v1.ExecuteSqlRequest\032#.google.s"
+ + "panner.v1.PartialResultSet\"Z\202\323\344\223\002T\"O/v1/"
+ + "{session=projects/*/instances/*/database"
+ + "s/*/sessions/*}:executeStreamingSql:\001*0\001"
+ + "\022\300\001\n\017ExecuteBatchDml\022).google.spanner.v1"
+ + ".ExecuteBatchDmlRequest\032*.google.spanner"
+ + ".v1.ExecuteBatchDmlResponse\"V\202\323\344\223\002P\"K/v1"
+ + "/{session=projects/*/instances/*/databas"
+ + "es/*/sessions/*}:executeBatchDml:\001*\022\221\001\n\004"
+ + "Read\022\036.google.spanner.v1.ReadRequest\032\034.g"
+ + "oogle.spanner.v1.ResultSet\"K\202\323\344\223\002E\"@/v1/"
+ + "{session=projects/*/instances/*/database"
+ + "s/*/sessions/*}:read:\001*\022\254\001\n\rStreamingRea"
+ + "d\022\036.google.spanner.v1.ReadRequest\032#.goog"
+ + "le.spanner.v1.PartialResultSet\"T\202\323\344\223\002N\"I"
+ + "/v1/{session=projects/*/instances/*/data"
+ + "bases/*/sessions/*}:streamingRead:\001*0\001\022\311"
+ + "\001\n\020BeginTransaction\022*.google.spanner.v1."
+ + "BeginTransactionRequest\032\036.google.spanner"
+ + ".v1.Transaction\"i\202\323\344\223\002Q\"L/v1/{session=pr"
+ "ojects/*/instances/*/databases/*/session"
- + "s/*}:read:\001*\022\254\001\n\rStreamingRead\022\036.google."
- + "spanner.v1.ReadRequest\032#.google.spanner."
- + "v1.PartialResultSet\"T\202\323\344\223\002N\"I/v1/{sessio"
- + "n=projects/*/instances/*/databases/*/ses"
- + "sions/*}:streamingRead:\001*0\001\022\311\001\n\020BeginTra"
- + "nsaction\022*.google.spanner.v1.BeginTransa"
- + "ctionRequest\032\036.google.spanner.v1.Transac"
- + "tion\"i\202\323\344\223\002Q\"L/v1/{session=projects/*/in"
- + "stances/*/databases/*/sessions/*}:beginT"
- + "ransaction:\001*\332A\017session,options\022\353\001\n\006Comm"
- + "it\022 .google.spanner.v1.CommitRequest\032!.g"
- + "oogle.spanner.v1.CommitResponse\"\233\001\202\323\344\223\002G"
- + "\"B/v1/{session=projects/*/instances/*/da"
- + "tabases/*/sessions/*}:commit:\001*\332A sessio"
- + "n,transaction_id,mutations\332A(session,sin"
- + "gle_use_transaction,mutations\022\260\001\n\010Rollba"
- + "ck\022\".google.spanner.v1.RollbackRequest\032\026"
- + ".google.protobuf.Empty\"h\202\323\344\223\002I\"D/v1/{ses"
+ + "s/*}:beginTransaction:\001*\332A\017session,optio"
+ + "ns\022\353\001\n\006Commit\022 .google.spanner.v1.Commit"
+ + "Request\032!.google.spanner.v1.CommitRespon"
+ + "se\"\233\001\202\323\344\223\002G\"B/v1/{session=projects/*/ins"
+ + "tances/*/databases/*/sessions/*}:commit:"
+ + "\001*\332A session,transaction_id,mutations\332A("
+ + "session,single_use_transaction,mutations"
+ + "\022\260\001\n\010Rollback\022\".google.spanner.v1.Rollba"
+ + "ckRequest\032\026.google.protobuf.Empty\"h\202\323\344\223\002"
+ + "I\"D/v1/{session=projects/*/instances/*/d"
+ + "atabases/*/sessions/*}:rollback:\001*\332A\026ses"
+ + "sion,transaction_id\022\267\001\n\016PartitionQuery\022("
+ + ".google.spanner.v1.PartitionQueryRequest"
+ + "\032$.google.spanner.v1.PartitionResponse\"U"
+ + "\202\323\344\223\002O\"J/v1/{session=projects/*/instance"
+ + "s/*/databases/*/sessions/*}:partitionQue"
+ + "ry:\001*\022\264\001\n\rPartitionRead\022\'.google.spanner"
+ + ".v1.PartitionReadRequest\032$.google.spanne"
+ + "r.v1.PartitionResponse\"T\202\323\344\223\002N\"I/v1/{ses"
+ "sion=projects/*/instances/*/databases/*/"
- + "sessions/*}:rollback:\001*\332A\026session,transa"
- + "ction_id\022\267\001\n\016PartitionQuery\022(.google.spa"
- + "nner.v1.PartitionQueryRequest\032$.google.s"
- + "panner.v1.PartitionResponse\"U\202\323\344\223\002O\"J/v1"
- + "/{session=projects/*/instances/*/databas"
- + "es/*/sessions/*}:partitionQuery:\001*\022\264\001\n\rP"
- + "artitionRead\022\'.google.spanner.v1.Partiti"
- + "onReadRequest\032$.google.spanner.v1.Partit"
- + "ionResponse\"T\202\323\344\223\002N\"I/v1/{session=projec"
- + "ts/*/instances/*/databases/*/sessions/*}"
- + ":partitionRead:\001*\032w\312A\026spanner.googleapis"
- + ".com\322A[https://www.googleapis.com/auth/c"
- + "loud-platform,https://www.googleapis.com"
- + "/auth/spanner.dataB\224\002\n\025com.google.spanne"
- + "r.v1B\014SpannerProtoP\001Z8google.golang.org/"
- + "genproto/googleapis/spanner/v1;spanner\252\002"
- + "\027Google.Cloud.Spanner.V1\312\002\027Google\\Cloud\\"
- + "Spanner\\V1\352\002\032Google::Cloud::Spanner::V1\352"
- + "A_\n\037spanner.googleapis.com/Database\022