diff --git a/google-cloud-spanner/src/main/java/com/google/cloud/spanner/v1/SpannerClient.java b/google-cloud-spanner/src/main/java/com/google/cloud/spanner/v1/SpannerClient.java index 84ed9e2924a..a40ad087b66 100644 --- a/google-cloud-spanner/src/main/java/com/google/cloud/spanner/v1/SpannerClient.java +++ b/google-cloud-spanner/src/main/java/com/google/cloud/spanner/v1/SpannerClient.java @@ -940,6 +940,7 @@ public final UnaryCallable deleteSessionCallable() * .setSeqno(109325920) * .setQueryOptions(ExecuteSqlRequest.QueryOptions.newBuilder().build()) * .setRequestOptions(RequestOptions.newBuilder().build()) + * .setDataBoostEnabled(true) * .build(); * ResultSet response = spannerClient.executeSql(request); * } @@ -987,6 +988,7 @@ public final ResultSet executeSql(ExecuteSqlRequest request) { * .setSeqno(109325920) * .setQueryOptions(ExecuteSqlRequest.QueryOptions.newBuilder().build()) * .setRequestOptions(RequestOptions.newBuilder().build()) + * .setDataBoostEnabled(true) * .build(); * ApiFuture future = spannerClient.executeSqlCallable().futureCall(request); * // Do something. @@ -1027,6 +1029,7 @@ public final UnaryCallable executeSqlCallable() { * .setSeqno(109325920) * .setQueryOptions(ExecuteSqlRequest.QueryOptions.newBuilder().build()) * .setRequestOptions(RequestOptions.newBuilder().build()) + * .setDataBoostEnabled(true) * .build(); * ServerStream stream = * spannerClient.executeStreamingSqlCallable().call(request); @@ -1162,6 +1165,7 @@ public final ExecuteBatchDmlResponse executeBatchDml(ExecuteBatchDmlRequest requ * .setResumeToken(ByteString.EMPTY) * .setPartitionToken(ByteString.EMPTY) * .setRequestOptions(RequestOptions.newBuilder().build()) + * .setDataBoostEnabled(true) * .build(); * ResultSet response = spannerClient.read(request); * } @@ -1210,6 +1214,7 @@ public final ResultSet read(ReadRequest request) { * .setResumeToken(ByteString.EMPTY) * .setPartitionToken(ByteString.EMPTY) * .setRequestOptions(RequestOptions.newBuilder().build()) + * .setDataBoostEnabled(true) * .build(); * ApiFuture future = spannerClient.readCallable().futureCall(request); * // Do something. @@ -1250,6 +1255,7 @@ public final UnaryCallable readCallable() { * .setResumeToken(ByteString.EMPTY) * .setPartitionToken(ByteString.EMPTY) * .setRequestOptions(RequestOptions.newBuilder().build()) + * .setDataBoostEnabled(true) * .build(); * ServerStream stream = spannerClient.streamingReadCallable().call(request); * for (PartialResultSet response : stream) { diff --git a/google-cloud-spanner/src/test/java/com/google/cloud/spanner/v1/SpannerClientHttpJsonTest.java b/google-cloud-spanner/src/test/java/com/google/cloud/spanner/v1/SpannerClientHttpJsonTest.java index b17546d293c..04bd5df2166 100644 --- a/google-cloud-spanner/src/test/java/com/google/cloud/spanner/v1/SpannerClientHttpJsonTest.java +++ b/google-cloud-spanner/src/test/java/com/google/cloud/spanner/v1/SpannerClientHttpJsonTest.java @@ -598,6 +598,7 @@ public void executeSqlTest() throws Exception { .setSeqno(109325920) .setQueryOptions(ExecuteSqlRequest.QueryOptions.newBuilder().build()) .setRequestOptions(RequestOptions.newBuilder().build()) + .setDataBoostEnabled(true) .build(); ResultSet actualResponse = client.executeSql(request); @@ -639,6 +640,7 @@ public void executeSqlExceptionTest() throws Exception { .setSeqno(109325920) .setQueryOptions(ExecuteSqlRequest.QueryOptions.newBuilder().build()) .setRequestOptions(RequestOptions.newBuilder().build()) + .setDataBoostEnabled(true) .build(); client.executeSql(request); Assert.fail("No exception raised"); @@ -742,6 +744,7 @@ public void readTest() throws Exception { .setResumeToken(ByteString.EMPTY) .setPartitionToken(ByteString.EMPTY) .setRequestOptions(RequestOptions.newBuilder().build()) + .setDataBoostEnabled(true) .build(); ResultSet actualResponse = client.read(request); @@ -783,6 +786,7 @@ public void readExceptionTest() throws Exception { .setResumeToken(ByteString.EMPTY) .setPartitionToken(ByteString.EMPTY) .setRequestOptions(RequestOptions.newBuilder().build()) + .setDataBoostEnabled(true) .build(); client.read(request); Assert.fail("No exception raised"); diff --git a/google-cloud-spanner/src/test/java/com/google/cloud/spanner/v1/SpannerClientTest.java b/google-cloud-spanner/src/test/java/com/google/cloud/spanner/v1/SpannerClientTest.java index 863e6007b3b..9e23c7a0523 100644 --- a/google-cloud-spanner/src/test/java/com/google/cloud/spanner/v1/SpannerClientTest.java +++ b/google-cloud-spanner/src/test/java/com/google/cloud/spanner/v1/SpannerClientTest.java @@ -554,6 +554,7 @@ public void executeSqlTest() throws Exception { .setSeqno(109325920) .setQueryOptions(ExecuteSqlRequest.QueryOptions.newBuilder().build()) .setRequestOptions(RequestOptions.newBuilder().build()) + .setDataBoostEnabled(true) .build(); ResultSet actualResponse = client.executeSql(request); @@ -574,6 +575,7 @@ public void executeSqlTest() throws Exception { Assert.assertEquals(request.getSeqno(), actualRequest.getSeqno()); Assert.assertEquals(request.getQueryOptions(), actualRequest.getQueryOptions()); Assert.assertEquals(request.getRequestOptions(), actualRequest.getRequestOptions()); + Assert.assertEquals(request.getDataBoostEnabled(), actualRequest.getDataBoostEnabled()); Assert.assertTrue( channelProvider.isHeaderSent( ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), @@ -599,6 +601,7 @@ public void executeSqlExceptionTest() throws Exception { .setSeqno(109325920) .setQueryOptions(ExecuteSqlRequest.QueryOptions.newBuilder().build()) .setRequestOptions(RequestOptions.newBuilder().build()) + .setDataBoostEnabled(true) .build(); client.executeSql(request); Assert.fail("No exception raised"); @@ -631,6 +634,7 @@ public void executeStreamingSqlTest() throws Exception { .setSeqno(109325920) .setQueryOptions(ExecuteSqlRequest.QueryOptions.newBuilder().build()) .setRequestOptions(RequestOptions.newBuilder().build()) + .setDataBoostEnabled(true) .build(); MockStreamObserver responseObserver = new MockStreamObserver<>(); @@ -661,6 +665,7 @@ public void executeStreamingSqlExceptionTest() throws Exception { .setSeqno(109325920) .setQueryOptions(ExecuteSqlRequest.QueryOptions.newBuilder().build()) .setRequestOptions(RequestOptions.newBuilder().build()) + .setDataBoostEnabled(true) .build(); MockStreamObserver responseObserver = new MockStreamObserver<>(); @@ -761,6 +766,7 @@ public void readTest() throws Exception { .setResumeToken(ByteString.EMPTY) .setPartitionToken(ByteString.EMPTY) .setRequestOptions(RequestOptions.newBuilder().build()) + .setDataBoostEnabled(true) .build(); ResultSet actualResponse = client.read(request); @@ -780,6 +786,7 @@ public void readTest() throws Exception { Assert.assertEquals(request.getResumeToken(), actualRequest.getResumeToken()); Assert.assertEquals(request.getPartitionToken(), actualRequest.getPartitionToken()); Assert.assertEquals(request.getRequestOptions(), actualRequest.getRequestOptions()); + Assert.assertEquals(request.getDataBoostEnabled(), actualRequest.getDataBoostEnabled()); Assert.assertTrue( channelProvider.isHeaderSent( ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), @@ -805,6 +812,7 @@ public void readExceptionTest() throws Exception { .setResumeToken(ByteString.EMPTY) .setPartitionToken(ByteString.EMPTY) .setRequestOptions(RequestOptions.newBuilder().build()) + .setDataBoostEnabled(true) .build(); client.read(request); Assert.fail("No exception raised"); @@ -837,6 +845,7 @@ public void streamingReadTest() throws Exception { .setResumeToken(ByteString.EMPTY) .setPartitionToken(ByteString.EMPTY) .setRequestOptions(RequestOptions.newBuilder().build()) + .setDataBoostEnabled(true) .build(); MockStreamObserver responseObserver = new MockStreamObserver<>(); @@ -867,6 +876,7 @@ public void streamingReadExceptionTest() throws Exception { .setResumeToken(ByteString.EMPTY) .setPartitionToken(ByteString.EMPTY) .setRequestOptions(RequestOptions.newBuilder().build()) + .setDataBoostEnabled(true) .build(); MockStreamObserver responseObserver = new MockStreamObserver<>(); diff --git a/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/ExecuteSqlRequest.java b/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/ExecuteSqlRequest.java index 24ddc22b399..b84ac1216e6 100644 --- a/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/ExecuteSqlRequest.java +++ b/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/ExecuteSqlRequest.java @@ -1972,6 +1972,27 @@ public com.google.spanner.v1.RequestOptionsOrBuilder getRequestOptionsOrBuilder( : requestOptions_; } + public static final int DATA_BOOST_ENABLED_FIELD_NUMBER = 15; + private boolean dataBoostEnabled_ = false; + /** + * + * + *
+   * If this is for a partitioned read and this field is set to `true`, the
+   * request will be executed via Spanner independent compute resources.
+   * If the field is set to `true` but the request does not set
+   * `partition_token`, the API will return an `INVALID_ARGUMENT` error.
+   * 
+ * + * bool data_boost_enabled = 15; + * + * @return The dataBoostEnabled. + */ + @java.lang.Override + public boolean getDataBoostEnabled() { + return dataBoostEnabled_; + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -2018,6 +2039,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (requestOptions_ != null) { output.writeMessage(11, getRequestOptions()); } + if (dataBoostEnabled_ != false) { + output.writeBool(15, dataBoostEnabled_); + } getUnknownFields().writeTo(output); } @@ -2067,6 +2091,9 @@ public int getSerializedSize() { if (requestOptions_ != null) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(11, getRequestOptions()); } + if (dataBoostEnabled_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(15, dataBoostEnabled_); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -2105,6 +2132,7 @@ public boolean equals(final java.lang.Object obj) { if (hasRequestOptions()) { if (!getRequestOptions().equals(other.getRequestOptions())) return false; } + if (getDataBoostEnabled() != other.getDataBoostEnabled()) return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -2148,6 +2176,8 @@ public int hashCode() { hash = (37 * hash) + REQUEST_OPTIONS_FIELD_NUMBER; hash = (53 * hash) + getRequestOptions().hashCode(); } + hash = (37 * hash) + DATA_BOOST_ENABLED_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getDataBoostEnabled()); hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -2335,6 +2365,7 @@ public Builder clear() { requestOptionsBuilder_.dispose(); requestOptionsBuilder_ = null; } + dataBoostEnabled_ = false; return this; } @@ -2408,6 +2439,9 @@ private void buildPartial0(com.google.spanner.v1.ExecuteSqlRequest result) { result.requestOptions_ = requestOptionsBuilder_ == null ? requestOptions_ : requestOptionsBuilder_.build(); } + if (((from_bitField0_ & 0x00000800) != 0)) { + result.dataBoostEnabled_ = dataBoostEnabled_; + } } @java.lang.Override @@ -2491,6 +2525,9 @@ public Builder mergeFrom(com.google.spanner.v1.ExecuteSqlRequest other) { if (other.hasRequestOptions()) { mergeRequestOptions(other.getRequestOptions()); } + if (other.getDataBoostEnabled() != false) { + setDataBoostEnabled(other.getDataBoostEnabled()); + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -2590,6 +2627,12 @@ public Builder mergeFrom( bitField0_ |= 0x00000400; break; } // case 90 + case 120: + { + dataBoostEnabled_ = input.readBool(); + bitField0_ |= 0x00000800; + break; + } // case 120 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -4210,6 +4253,68 @@ public com.google.spanner.v1.RequestOptionsOrBuilder getRequestOptionsOrBuilder( return requestOptionsBuilder_; } + private boolean dataBoostEnabled_; + /** + * + * + *
+     * If this is for a partitioned read and this field is set to `true`, the
+     * request will be executed via Spanner independent compute resources.
+     * If the field is set to `true` but the request does not set
+     * `partition_token`, the API will return an `INVALID_ARGUMENT` error.
+     * 
+ * + * bool data_boost_enabled = 15; + * + * @return The dataBoostEnabled. + */ + @java.lang.Override + public boolean getDataBoostEnabled() { + return dataBoostEnabled_; + } + /** + * + * + *
+     * If this is for a partitioned read and this field is set to `true`, the
+     * request will be executed via Spanner independent compute resources.
+     * If the field is set to `true` but the request does not set
+     * `partition_token`, the API will return an `INVALID_ARGUMENT` error.
+     * 
+ * + * bool data_boost_enabled = 15; + * + * @param value The dataBoostEnabled to set. + * @return This builder for chaining. + */ + public Builder setDataBoostEnabled(boolean value) { + + dataBoostEnabled_ = value; + bitField0_ |= 0x00000800; + onChanged(); + return this; + } + /** + * + * + *
+     * If this is for a partitioned read and this field is set to `true`, the
+     * request will be executed via Spanner independent compute resources.
+     * If the field is set to `true` but the request does not set
+     * `partition_token`, the API will return an `INVALID_ARGUMENT` error.
+     * 
+ * + * bool data_boost_enabled = 15; + * + * @return This builder for chaining. + */ + public Builder clearDataBoostEnabled() { + bitField0_ = (bitField0_ & ~0x00000800); + dataBoostEnabled_ = false; + onChanged(); + return this; + } + @java.lang.Override public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); diff --git a/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/ExecuteSqlRequestOrBuilder.java b/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/ExecuteSqlRequestOrBuilder.java index a0093f23f96..49efc65ed98 100644 --- a/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/ExecuteSqlRequestOrBuilder.java +++ b/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/ExecuteSqlRequestOrBuilder.java @@ -429,4 +429,20 @@ com.google.spanner.v1.Type getParamTypesOrDefault( * .google.spanner.v1.RequestOptions request_options = 11; */ com.google.spanner.v1.RequestOptionsOrBuilder getRequestOptionsOrBuilder(); + + /** + * + * + *
+   * If this is for a partitioned read and this field is set to `true`, the
+   * request will be executed via Spanner independent compute resources.
+   * If the field is set to `true` but the request does not set
+   * `partition_token`, the API will return an `INVALID_ARGUMENT` error.
+   * 
+ * + * bool data_boost_enabled = 15; + * + * @return The dataBoostEnabled. + */ + boolean getDataBoostEnabled(); } diff --git a/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/ReadRequest.java b/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/ReadRequest.java index d0dffe37c1c..036227a4aed 100644 --- a/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/ReadRequest.java +++ b/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/ReadRequest.java @@ -541,6 +541,27 @@ public com.google.spanner.v1.RequestOptionsOrBuilder getRequestOptionsOrBuilder( : requestOptions_; } + public static final int DATA_BOOST_ENABLED_FIELD_NUMBER = 16; + private boolean dataBoostEnabled_ = false; + /** + * + * + *
+   * If this is for a partitioned query and this field is set to `true`, the
+   * request will be executed via Spanner independent compute resources.
+   * If the field is set to `true` but the request does not set
+   * `partition_token`, the API will return an `INVALID_ARGUMENT` error.
+   * 
+ * + * bool data_boost_enabled = 16; + * + * @return The dataBoostEnabled. + */ + @java.lang.Override + public boolean getDataBoostEnabled() { + return dataBoostEnabled_; + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -585,6 +606,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (requestOptions_ != null) { output.writeMessage(11, getRequestOptions()); } + if (dataBoostEnabled_ != false) { + output.writeBool(16, dataBoostEnabled_); + } getUnknownFields().writeTo(output); } @@ -629,6 +653,9 @@ public int getSerializedSize() { if (requestOptions_ != null) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(11, getRequestOptions()); } + if (dataBoostEnabled_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(16, dataBoostEnabled_); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -663,6 +690,7 @@ public boolean equals(final java.lang.Object obj) { if (hasRequestOptions()) { if (!getRequestOptions().equals(other.getRequestOptions())) return false; } + if (getDataBoostEnabled() != other.getDataBoostEnabled()) return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -702,6 +730,8 @@ public int hashCode() { hash = (37 * hash) + REQUEST_OPTIONS_FIELD_NUMBER; hash = (53 * hash) + getRequestOptions().hashCode(); } + hash = (37 * hash) + DATA_BOOST_ENABLED_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getDataBoostEnabled()); hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -864,6 +894,7 @@ public Builder clear() { requestOptionsBuilder_.dispose(); requestOptionsBuilder_ = null; } + dataBoostEnabled_ = false; return this; } @@ -937,6 +968,9 @@ private void buildPartial0(com.google.spanner.v1.ReadRequest result) { result.requestOptions_ = requestOptionsBuilder_ == null ? requestOptions_ : requestOptionsBuilder_.build(); } + if (((from_bitField0_ & 0x00000400) != 0)) { + result.dataBoostEnabled_ = dataBoostEnabled_; + } } @java.lang.Override @@ -1027,6 +1061,9 @@ public Builder mergeFrom(com.google.spanner.v1.ReadRequest other) { if (other.hasRequestOptions()) { mergeRequestOptions(other.getRequestOptions()); } + if (other.getDataBoostEnabled() != false) { + setDataBoostEnabled(other.getDataBoostEnabled()); + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -1114,6 +1151,12 @@ public Builder mergeFrom( bitField0_ |= 0x00000200; break; } // case 90 + case 128: + { + dataBoostEnabled_ = input.readBool(); + bitField0_ |= 0x00000400; + break; + } // case 128 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -2477,6 +2520,68 @@ public com.google.spanner.v1.RequestOptionsOrBuilder getRequestOptionsOrBuilder( return requestOptionsBuilder_; } + private boolean dataBoostEnabled_; + /** + * + * + *
+     * If this is for a partitioned query and this field is set to `true`, the
+     * request will be executed via Spanner independent compute resources.
+     * If the field is set to `true` but the request does not set
+     * `partition_token`, the API will return an `INVALID_ARGUMENT` error.
+     * 
+ * + * bool data_boost_enabled = 16; + * + * @return The dataBoostEnabled. + */ + @java.lang.Override + public boolean getDataBoostEnabled() { + return dataBoostEnabled_; + } + /** + * + * + *
+     * If this is for a partitioned query and this field is set to `true`, the
+     * request will be executed via Spanner independent compute resources.
+     * If the field is set to `true` but the request does not set
+     * `partition_token`, the API will return an `INVALID_ARGUMENT` error.
+     * 
+ * + * bool data_boost_enabled = 16; + * + * @param value The dataBoostEnabled to set. + * @return This builder for chaining. + */ + public Builder setDataBoostEnabled(boolean value) { + + dataBoostEnabled_ = value; + bitField0_ |= 0x00000400; + onChanged(); + return this; + } + /** + * + * + *
+     * If this is for a partitioned query and this field is set to `true`, the
+     * request will be executed via Spanner independent compute resources.
+     * If the field is set to `true` but the request does not set
+     * `partition_token`, the API will return an `INVALID_ARGUMENT` error.
+     * 
+ * + * bool data_boost_enabled = 16; + * + * @return This builder for chaining. + */ + public Builder clearDataBoostEnabled() { + bitField0_ = (bitField0_ & ~0x00000400); + dataBoostEnabled_ = false; + onChanged(); + return this; + } + @java.lang.Override public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); diff --git a/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/ReadRequestOrBuilder.java b/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/ReadRequestOrBuilder.java index 5988afde18f..dee8fd7fa85 100644 --- a/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/ReadRequestOrBuilder.java +++ b/proto-google-cloud-spanner-v1/src/main/java/com/google/spanner/v1/ReadRequestOrBuilder.java @@ -344,4 +344,20 @@ public interface ReadRequestOrBuilder * .google.spanner.v1.RequestOptions request_options = 11; */ com.google.spanner.v1.RequestOptionsOrBuilder getRequestOptionsOrBuilder(); + + /** + * + * + *
+   * If this is for a partitioned query and this field is set to `true`, the
+   * request will be executed via Spanner independent compute resources.
+   * If the field is set to `true` but the request does not set
+   * `partition_token`, the API will return an `INVALID_ARGUMENT` error.
+   * 
+ * + * bool data_boost_enabled = 16; + * + * @return The dataBoostEnabled. + */ + boolean getDataBoostEnabled(); } 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 21c752c5631..25403bb2d2f 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 @@ -191,7 +191,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\n\017transaction_tag\030\003 \001(\t\"^\n\010Priority\022\030\n\024P" + "RIORITY_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\0227\n\007session\030\001 \001(\tB&" + + "\200\006\n\021ExecuteSqlRequest\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\020\n\003sql\030\003 \001(\tB\003\340A\002\022\'\n" @@ -204,157 +204,158 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\001(\003\022H\n\rquery_options\030\n \001(\01321.google.span" + "ner.v1.ExecuteSqlRequest.QueryOptions\022:\n" + "\017request_options\030\013 \001(\0132!.google.spanner." - + "v1.RequestOptions\032O\n\014QueryOptions\022\031\n\021opt" - + "imizer_version\030\001 \001(\t\022$\n\034optimizer_statis" - + "tics_package\030\002 \001(\t\032J\n\017ParamTypesEntry\022\013\n" - + "\003key\030\001 \001(\t\022&\n\005value\030\002 \001(\0132\027.google.spann" - + "er.v1.Type:\0028\001\".\n\tQueryMode\022\n\n\006NORMAL\020\000\022" - + "\010\n\004PLAN\020\001\022\013\n\007PROFILE\020\002\"\240\004\n\026ExecuteBatchD" - + "mlRequest\0227\n\007session\030\001 \001(\tB&\340A\002\372A \n\036span" - + "ner.googleapis.com/Session\022@\n\013transactio" - + "n\030\002 \001(\0132&.google.spanner.v1.TransactionS" - + "electorB\003\340A\002\022L\n\nstatements\030\003 \003(\01323.googl" - + "e.spanner.v1.ExecuteBatchDmlRequest.Stat" - + "ementB\003\340A\002\022\022\n\005seqno\030\004 \001(\003B\003\340A\002\022:\n\017reques" - + "t_options\030\005 \001(\0132!.google.spanner.v1.Requ" - + "estOptions\032\354\001\n\tStatement\022\020\n\003sql\030\001 \001(\tB\003\340" - + "A\002\022\'\n\006params\030\002 \001(\0132\027.google.protobuf.Str" - + "uct\022X\n\013param_types\030\003 \003(\0132C.google.spanne" - + "r.v1.ExecuteBatchDmlRequest.Statement.Pa" - + "ramTypesEntry\032J\n\017ParamTypesEntry\022\013\n\003key\030" - + "\001 \001(\t\022&\n\005value\030\002 \001(\0132\027.google.spanner.v1" - + ".Type:\0028\001\"p\n\027ExecuteBatchDmlResponse\0221\n\013" - + "result_sets\030\001 \003(\0132\034.google.spanner.v1.Re" - + "sultSet\022\"\n\006status\030\002 \001(\0132\022.google.rpc.Sta" - + "tus\"H\n\020PartitionOptions\022\034\n\024partition_siz" - + "e_bytes\030\001 \001(\003\022\026\n\016max_partitions\030\002 \001(\003\"\243\003" - + "\n\025PartitionQueryRequest\0227\n\007session\030\001 \001(\t" - + "B&\340A\002\372A \n\036spanner.googleapis.com/Session" - + "\022;\n\013transaction\030\002 \001(\0132&.google.spanner.v" - + "1.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.spanner.v" - + "1.PartitionQueryRequest.ParamTypesEntry\022" - + ">\n\021partition_options\030\006 \001(\0132#.google.span" - + "ner.v1.PartitionOptions\032J\n\017ParamTypesEnt" - + "ry\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\024PartitionReadReq" - + "uest\0227\n\007session\030\001 \001(\tB&\340A\002\372A \n\036spanner.g" - + "oogleapis.com/Session\022;\n\013transaction\030\002 \001" - + "(\0132&.google.spanner.v1.TransactionSelect" - + "or\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_opt" - + "ions\030\t \001(\0132#.google.spanner.v1.Partition" - + "Options\"$\n\tPartition\022\027\n\017partition_token\030" - + "\001 \001(\014\"z\n\021PartitionResponse\0220\n\npartitions" - + "\030\001 \003(\0132\034.google.spanner.v1.Partition\0223\n\013" - + "transaction\030\002 \001(\0132\036.google.spanner.v1.Tr" - + "ansaction\"\347\002\n\013ReadRequest\0227\n\007session\030\001 \001" - + "(\tB&\340A\002\372A \n\036spanner.googleapis.com/Sessi" - + "on\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.spanner.v1.Ke" - + "ySetB\003\340A\002\022\r\n\005limit\030\010 \001(\003\022\024\n\014resume_token" - + "\030\t \001(\014\022\027\n\017partition_token\030\n \001(\014\022:\n\017reque" - + "st_options\030\013 \001(\0132!.google.spanner.v1.Req" - + "uestOptions\"\313\001\n\027BeginTransactionRequest\022" - + "7\n\007session\030\001 \001(\tB&\340A\002\372A \n\036spanner.google" - + "apis.com/Session\022;\n\007options\030\002 \001(\0132%.goog" - + "le.spanner.v1.TransactionOptionsB\003\340A\002\022:\n" - + "\017request_options\030\003 \001(\0132!.google.spanner." - + "v1.RequestOptions\"\303\002\n\rCommitRequest\0227\n\007s" - + "ession\030\001 \001(\tB&\340A\002\372A \n\036spanner.googleapis" - + ".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\tmutat" - + "ions\030\004 \003(\0132\033.google.spanner.v1.Mutation\022" - + "\033\n\023return_commit_stats\030\005 \001(\010\022:\n\017request_" - + "options\030\006 \001(\0132!.google.spanner.v1.Reques" - + "tOptionsB\r\n\013transaction\"g\n\017RollbackReque" - + "st\0227\n\007session\030\001 \001(\tB&\340A\002\372A \n\036spanner.goo" - + "gleapis.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.CreateSessionRequest\032" - + "\032.google.spanner.v1.Session\"P\202\323\344\223\002?\":/v1" - + "/{database=projects/*/instances/*/databa" - + "ses/*}/sessions:\001*\332A\010database\022\340\001\n\023BatchC" - + "reateSessions\022-.google.spanner.v1.BatchC" - + "reateSessionsRequest\032..google.spanner.v1" - + ".BatchCreateSessionsResponse\"j\202\323\344\223\002K\"F/v" - + "1/{database=projects/*/instances/*/datab" - + "ases/*}/sessions:batchCreate:\001*\332A\026databa" - + "se,session_count\022\227\001\n\nGetSession\022$.google" - + ".spanner.v1.GetSessionRequest\032\032.google.s" - + "panner.v1.Session\"G\202\323\344\223\002:\0228/v1/{name=pro" - + "jects/*/instances/*/databases/*/sessions" - + "/*}\332A\004name\022\256\001\n\014ListSessions\022&.google.spa" - + "nner.v1.ListSessionsRequest\032\'.google.spa" - + "nner.v1.ListSessionsResponse\"M\202\323\344\223\002<\022:/v" - + "1/{database=projects/*/instances/*/datab" - + "ases/*}/sessions\332A\010database\022\231\001\n\rDeleteSe" - + "ssion\022\'.google.spanner.v1.DeleteSessionR" - + "equest\032\026.google.protobuf.Empty\"G\202\323\344\223\002:*8" - + "/v1/{name=projects/*/instances/*/databas" - + "es/*/sessions/*}\332A\004name\022\243\001\n\nExecuteSql\022$" - + ".google.spanner.v1.ExecuteSqlRequest\032\034.g" - + "oogle.spanner.v1.ResultSet\"Q\202\323\344\223\002K\"F/v1/" - + "{session=projects/*/instances/*/database" - + "s/*/sessions/*}:executeSql:\001*\022\276\001\n\023Execut" - + "eStreamingSql\022$.google.spanner.v1.Execut" - + "eSqlRequest\032#.google.spanner.v1.PartialR" - + "esultSet\"Z\202\323\344\223\002T\"O/v1/{session=projects/" - + "*/instances/*/databases/*/sessions/*}:ex" - + "ecuteStreamingSql:\001*0\001\022\300\001\n\017ExecuteBatchD" - + "ml\022).google.spanner.v1.ExecuteBatchDmlRe" - + "quest\032*.google.spanner.v1.ExecuteBatchDm" - + "lResponse\"V\202\323\344\223\002P\"K/v1/{session=projects" - + "/*/instances/*/databases/*/sessions/*}:e" - + "xecuteBatchDml:\001*\022\221\001\n\004Read\022\036.google.span" - + "ner.v1.ReadRequest\032\034.google.spanner.v1.R" - + "esultSet\"K\202\323\344\223\002E\"@/v1/{session=projects/" - + "*/instances/*/databases/*/sessions/*}:re" - + "ad:\001*\022\254\001\n\rStreamingRead\022\036.google.spanner" - + ".v1.ReadRequest\032#.google.spanner.v1.Part" - + "ialResultSet\"T\202\323\344\223\002N\"I/v1/{session=proje" - + "cts/*/instances/*/databases/*/sessions/*" - + "}:streamingRead:\001*0\001\022\311\001\n\020BeginTransactio" - + "n\022*.google.spanner.v1.BeginTransactionRe" - + "quest\032\036.google.spanner.v1.Transaction\"i\202" - + "\323\344\223\002Q\"L/v1/{session=projects/*/instances" - + "/*/databases/*/sessions/*}:beginTransact" - + "ion:\001*\332A\017session,options\022\353\001\n\006Commit\022 .go" - + "ogle.spanner.v1.CommitRequest\032!.google.s" - + "panner.v1.CommitResponse\"\233\001\202\323\344\223\002G\"B/v1/{" + + "v1.RequestOptions\022\032\n\022data_boost_enabled\030" + + "\017 \001(\010\032O\n\014QueryOptions\022\031\n\021optimizer_versi" + + "on\030\001 \001(\t\022$\n\034optimizer_statistics_package" + + "\030\002 \001(\t\032J\n\017ParamTypesEntry\022\013\n\003key\030\001 \001(\t\022&" + + "\n\005value\030\002 \001(\0132\027.google.spanner.v1.Type:\002" + + "8\001\".\n\tQueryMode\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.googleap" + + "is.com/Session\022@\n\013transaction\030\002 \001(\0132&.go" + + "ogle.spanner.v1.TransactionSelectorB\003\340A\002" + + "\022L\n\nstatements\030\003 \003(\01323.google.spanner.v1" + + ".ExecuteBatchDmlRequest.StatementB\003\340A\002\022\022" + + "\n\005seqno\030\004 \001(\003B\003\340A\002\022:\n\017request_options\030\005 " + + "\001(\0132!.google.spanner.v1.RequestOptions\032\354" + + "\001\n\tStatement\022\020\n\003sql\030\001 \001(\tB\003\340A\002\022\'\n\006params" + + "\030\002 \001(\0132\027.google.protobuf.Struct\022X\n\013param" + + "_types\030\003 \003(\0132C.google.spanner.v1.Execute" + + "BatchDmlRequest.Statement.ParamTypesEntr" + + "y\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\"p\n" + + "\027ExecuteBatchDmlResponse\0221\n\013result_sets\030" + + "\001 \003(\0132\034.google.spanner.v1.ResultSet\022\"\n\006s" + + "tatus\030\002 \001(\0132\022.google.rpc.Status\"H\n\020Parti" + + "tionOptions\022\034\n\024partition_size_bytes\030\001 \001(" + + "\003\022\026\n\016max_partitions\030\002 \001(\003\"\243\003\n\025PartitionQ" + + "ueryRequest\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\020\n\003sql\030\003 \001(\tB\003\340A\002\022\'\n\006params\030\004 " + + "\001(\0132\027.google.protobuf.Struct\022M\n\013param_ty" + + "pes\030\005 \003(\01328.google.spanner.v1.PartitionQ" + + "ueryRequest.ParamTypesEntry\022>\n\021partition" + + "_options\030\006 \001(\0132#.google.spanner.v1.Parti" + + "tionOptions\032J\n\017ParamTypesEntry\022\013\n\003key\030\001 " + + "\001(\t\022&\n\005value\030\002 \001(\0132\027.google.spanner.v1.T" + + "ype:\0028\001\"\261\002\n\024PartitionReadRequest\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\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.spanner.v1.PartitionOptions\"$\n\tP" + + "artition\022\027\n\017partition_token\030\001 \001(\014\"z\n\021Par" + + "titionResponse\0220\n\npartitions\030\001 \003(\0132\034.goo" + + "gle.spanner.v1.Partition\0223\n\013transaction\030" + + "\002 \001(\0132\036.google.spanner.v1.Transaction\"\203\003" + + "\n\013ReadRequest\0227\n\007session\030\001 \001(\tB&\340A\002\372A \n\036" + + "spanner.googleapis.com/Session\022;\n\013transa" + + "ction\030\002 \001(\0132&.google.spanner.v1.Transact" + + "ionSelector\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.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\017pa" + + "rtition_token\030\n \001(\014\022:\n\017request_options\030\013" + + " \001(\0132!.google.spanner.v1.RequestOptions\022" + + "\032\n\022data_boost_enabled\030\020 \001(\010\"\313\001\n\027BeginTra" + + "nsactionRequest\0227\n\007session\030\001 \001(\tB&\340A\002\372A " + + "\n\036spanner.googleapis.com/Session\022;\n\007opti" + + "ons\030\002 \001(\0132%.google.spanner.v1.Transactio" + + "nOptionsB\003\340A\002\022:\n\017request_options\030\003 \001(\0132!" + + ".google.spanner.v1.RequestOptions\"\303\002\n\rCo" + + "mmitRequest\0227\n\007session\030\001 \001(\tB&\340A\002\372A \n\036sp" + + "anner.googleapis.com/Session\022\030\n\016transact" + + "ion_id\030\002 \001(\014H\000\022G\n\026single_use_transaction" + + "\030\003 \001(\0132%.google.spanner.v1.TransactionOp" + + "tionsH\000\022.\n\tmutations\030\004 \003(\0132\033.google.span" + + "ner.v1.Mutation\022\033\n\023return_commit_stats\030\005" + + " \001(\010\022:\n\017request_options\030\006 \001(\0132!.google.s" + + "panner.v1.RequestOptionsB\r\n\013transaction\"" + + "g\n\017RollbackRequest\0227\n\007session\030\001 \001(\tB&\340A\002" + + "\372A \n\036spanner.googleapis.com/Session\022\033\n\016t" + + "ransaction_id\030\002 \001(\014B\003\340A\0022\300\026\n\007Spanner\022\246\001\n" + + "\rCreateSession\022\'.google.spanner.v1.Creat" + + "eSessionRequest\032\032.google.spanner.v1.Sess" + + "ion\"P\202\323\344\223\002?\":/v1/{database=projects/*/in" + + "stances/*/databases/*}/sessions:\001*\332A\010dat" + + "abase\022\340\001\n\023BatchCreateSessions\022-.google.s" + + "panner.v1.BatchCreateSessionsRequest\032..g" + + "oogle.spanner.v1.BatchCreateSessionsResp" + + "onse\"j\202\323\344\223\002K\"F/v1/{database=projects/*/i" + + "nstances/*/databases/*}/sessions:batchCr" + + "eate:\001*\332A\026database,session_count\022\227\001\n\nGet" + + "Session\022$.google.spanner.v1.GetSessionRe" + + "quest\032\032.google.spanner.v1.Session\"G\202\323\344\223\002" + + ":\0228/v1/{name=projects/*/instances/*/data" + + "bases/*/sessions/*}\332A\004name\022\256\001\n\014ListSessi" + + "ons\022&.google.spanner.v1.ListSessionsRequ" + + "est\032\'.google.spanner.v1.ListSessionsResp" + + "onse\"M\202\323\344\223\002<\022:/v1/{database=projects/*/i" + + "nstances/*/databases/*}/sessions\332A\010datab" + + "ase\022\231\001\n\rDeleteSession\022\'.google.spanner.v" + + "1.DeleteSessionRequest\032\026.google.protobuf" + + ".Empty\"G\202\323\344\223\002:*8/v1/{name=projects/*/ins" + + "tances/*/databases/*/sessions/*}\332A\004name\022" + + "\243\001\n\nExecuteSql\022$.google.spanner.v1.Execu" + + "teSqlRequest\032\034.google.spanner.v1.ResultS" + + "et\"Q\202\323\344\223\002K\"F/v1/{session=projects/*/inst" + + "ances/*/databases/*/sessions/*}:executeS" + + "ql:\001*\022\276\001\n\023ExecuteStreamingSql\022$.google.s" + + "panner.v1.ExecuteSqlRequest\032#.google.spa" + + "nner.v1.PartialResultSet\"Z\202\323\344\223\002T\"O/v1/{s" + + "ession=projects/*/instances/*/databases/" + + "*/sessions/*}:executeStreamingSql:\001*0\001\022\300" + + "\001\n\017ExecuteBatchDml\022).google.spanner.v1.E" + + "xecuteBatchDmlRequest\032*.google.spanner.v" + + "1.ExecuteBatchDmlResponse\"V\202\323\344\223\002P\"K/v1/{" + "session=projects/*/instances/*/databases" - + "/*/sessions/*}:commit:\001*\332A session,trans" - + "action_id,mutations\332A(session,single_use" - + "_transaction,mutations\022\260\001\n\010Rollback\022\".go" - + "ogle.spanner.v1.RollbackRequest\032\026.google" - + ".protobuf.Empty\"h\202\323\344\223\002I\"D/v1/{session=pr" - + "ojects/*/instances/*/databases/*/session" - + "s/*}:rollback:\001*\332A\026session,transaction_i" - + "d\022\267\001\n\016PartitionQuery\022(.google.spanner.v1" - + ".PartitionQueryRequest\032$.google.spanner." - + "v1.PartitionResponse\"U\202\323\344\223\002O\"J/v1/{sessi" + + "/*/sessions/*}:executeBatchDml:\001*\022\221\001\n\004Re" + + "ad\022\036.google.spanner.v1.ReadRequest\032\034.goo" + + "gle.spanner.v1.ResultSet\"K\202\323\344\223\002E\"@/v1/{s" + + "ession=projects/*/instances/*/databases/" + + "*/sessions/*}: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/v" + + "1/{session=projects/*/instances/*/databa" + + "ses/*/sessions/*}:streamingRead:\001*0\001\022\311\001\n" + + "\020BeginTransaction\022*.google.spanner.v1.Be" + + "ginTransactionRequest\032\036.google.spanner.v" + + "1.Transaction\"i\202\323\344\223\002Q\"L/v1/{session=proj" + + "ects/*/instances/*/databases/*/sessions/" + + "*}:beginTransaction:\001*\332A\017session,options" + + "\022\353\001\n\006Commit\022 .google.spanner.v1.CommitRe" + + "quest\032!.google.spanner.v1.CommitResponse" + + "\"\233\001\202\323\344\223\002G\"B/v1/{session=projects/*/insta" + + "nces/*/databases/*/sessions/*}:commit:\001*" + + "\332A session,transaction_id,mutations\332A(se" + + "ssion,single_use_transaction,mutations\022\260" + + "\001\n\010Rollback\022\".google.spanner.v1.Rollback" + + "Request\032\026.google.protobuf.Empty\"h\202\323\344\223\002I\"" + + "D/v1/{session=projects/*/instances/*/dat" + + "abases/*/sessions/*}:rollback:\001*\332A\026sessi" + + "on,transaction_id\022\267\001\n\016PartitionQuery\022(.g" + + "oogle.spanner.v1.PartitionQueryRequest\032$" + + ".google.spanner.v1.PartitionResponse\"U\202\323" + + "\344\223\002O\"J/v1/{session=projects/*/instances/" + + "*/databases/*/sessions/*}:partitionQuery" + + ":\001*\022\264\001\n\rPartitionRead\022\'.google.spanner.v" + + "1.PartitionReadRequest\032$.google.spanner." + + "v1.PartitionResponse\"T\202\323\344\223\002N\"I/v1/{sessi" + "on=projects/*/instances/*/databases/*/se" - + "ssions/*}:partitionQuery:\001*\022\264\001\n\rPartitio" - + "nRead\022\'.google.spanner.v1.PartitionReadR" - + "equest\032$.google.spanner.v1.PartitionResp" - + "onse\"T\202\323\344\223\002N\"I/v1/{session=projects/*/in" - + "stances/*/databases/*/sessions/*}:partit" - + "ionRead:\001*\032w\312A\026spanner.googleapis.com\322A[" - + "https://www.googleapis.com/auth/cloud-pl" - + "atform,https://www.googleapis.com/auth/s" - + "panner.dataB\224\002\n\025com.google.spanner.v1B\014S" - + "pannerProtoP\001Z8google.golang.org/genprot" - + "o/googleapis/spanner/v1;spanner\252\002\027Google" - + ".Cloud.Spanner.V1\312\002\027Google\\Cloud\\Spanner" - + "\\V1\352\002\032Google::Cloud::Spanner::V1\352A_\n\037spa" - + "nner.googleapis.com/Database\022