google-cloud-spanner-v1 1.10.0 → 1.10.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/google/cloud/spanner/v1/spanner/client.rb +152 -156
- data/lib/google/cloud/spanner/v1/version.rb +1 -1
- data/lib/google/spanner/v1/spanner_pb.rb +1 -1
- data/lib/google/spanner/v1/spanner_services_pb.rb +41 -35
- data/proto_docs/google/spanner/v1/keys.rb +2 -2
- data/proto_docs/google/spanner/v1/mutation.rb +31 -23
- data/proto_docs/google/spanner/v1/query_plan.rb +21 -18
- data/proto_docs/google/spanner/v1/spanner.rb +155 -169
- data/proto_docs/google/spanner/v1/transaction.rb +3 -2
- metadata +3 -3
@@ -40,13 +40,13 @@ module Google
|
|
40
40
|
# Required. The database in which the new sessions are created.
|
41
41
|
# @!attribute [rw] session_template
|
42
42
|
# @return [::Google::Cloud::Spanner::V1::Session]
|
43
|
-
# Parameters to
|
43
|
+
# Parameters to apply to each created session.
|
44
44
|
# @!attribute [rw] session_count
|
45
45
|
# @return [::Integer]
|
46
46
|
# Required. The number of sessions to be created in this batch call.
|
47
|
-
# The API
|
47
|
+
# The API can return fewer than the requested number of sessions. If a
|
48
48
|
# specific number of sessions are desired, the client can make additional
|
49
|
-
# calls to BatchCreateSessions (adjusting
|
49
|
+
# calls to `BatchCreateSessions` (adjusting
|
50
50
|
# {::Google::Cloud::Spanner::V1::BatchCreateSessionsRequest#session_count session_count}
|
51
51
|
# as necessary).
|
52
52
|
class BatchCreateSessionsRequest
|
@@ -84,20 +84,21 @@ module Google
|
|
84
84
|
# Output only. The timestamp when the session is created.
|
85
85
|
# @!attribute [r] approximate_last_use_time
|
86
86
|
# @return [::Google::Protobuf::Timestamp]
|
87
|
-
# Output only. The approximate timestamp when the session is last used. It
|
87
|
+
# Output only. The approximate timestamp when the session is last used. It's
|
88
88
|
# typically earlier than the actual last use time.
|
89
89
|
# @!attribute [rw] creator_role
|
90
90
|
# @return [::String]
|
91
91
|
# The database role which created this session.
|
92
92
|
# @!attribute [rw] multiplexed
|
93
93
|
# @return [::Boolean]
|
94
|
-
# Optional. If true
|
95
|
-
#
|
96
|
-
#
|
97
|
-
#
|
98
|
-
#
|
99
|
-
# {::Google::Cloud::Spanner::V1::Spanner::Client#batch_create_sessions BatchCreateSessions}
|
100
|
-
#
|
94
|
+
# Optional. If `true`, specifies a multiplexed session. Use a multiplexed
|
95
|
+
# session for multiple, concurrent read-only operations. Don't use them for
|
96
|
+
# read-write transactions, partitioned reads, or partitioned queries. Use
|
97
|
+
# {::Google::Cloud::Spanner::V1::Spanner::Client#create_session `sessions.create`} to create
|
98
|
+
# multiplexed sessions. Don't use
|
99
|
+
# {::Google::Cloud::Spanner::V1::Spanner::Client#batch_create_sessions BatchCreateSessions} to
|
100
|
+
# create a multiplexed session. You can't delete or list multiplexed
|
101
|
+
# sessions.
|
101
102
|
class Session
|
102
103
|
include ::Google::Protobuf::MessageExts
|
103
104
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -183,47 +184,47 @@ module Google
|
|
183
184
|
# @return [::String]
|
184
185
|
# A per-request tag which can be applied to queries or reads, used for
|
185
186
|
# statistics collection.
|
186
|
-
# Both request_tag and transaction_tag can be specified for a read or
|
187
|
-
# that belongs to a transaction.
|
188
|
-
# This field is ignored for requests where it's not applicable (
|
189
|
-
# CommitRequest).
|
187
|
+
# Both `request_tag` and `transaction_tag` can be specified for a read or
|
188
|
+
# query that belongs to a transaction.
|
189
|
+
# This field is ignored for requests where it's not applicable (for example,
|
190
|
+
# `CommitRequest`).
|
190
191
|
# Legal characters for `request_tag` values are all printable characters
|
191
192
|
# (ASCII 32 - 126) and the length of a request_tag is limited to 50
|
192
193
|
# characters. Values that exceed this limit are truncated.
|
193
|
-
# Any leading underscore (_) characters
|
194
|
+
# Any leading underscore (_) characters are removed from the string.
|
194
195
|
# @!attribute [rw] transaction_tag
|
195
196
|
# @return [::String]
|
196
197
|
# A tag used for statistics collection about this transaction.
|
197
|
-
# Both request_tag and transaction_tag can be specified for a read or
|
198
|
-
# that belongs to a transaction.
|
198
|
+
# Both `request_tag` and `transaction_tag` can be specified for a read or
|
199
|
+
# query that belongs to a transaction.
|
199
200
|
# The value of transaction_tag should be the same for all requests belonging
|
200
201
|
# to the same transaction.
|
201
|
-
# If this request doesn't belong to any transaction, transaction_tag
|
202
|
+
# If this request doesn't belong to any transaction, `transaction_tag` is
|
202
203
|
# ignored.
|
203
204
|
# Legal characters for `transaction_tag` values are all printable characters
|
204
|
-
# (ASCII 32 - 126) and the length of a transaction_tag is limited to 50
|
205
|
+
# (ASCII 32 - 126) and the length of a `transaction_tag` is limited to 50
|
205
206
|
# characters. Values that exceed this limit are truncated.
|
206
|
-
# Any leading underscore (_) characters
|
207
|
+
# Any leading underscore (_) characters are removed from the string.
|
207
208
|
class RequestOptions
|
208
209
|
include ::Google::Protobuf::MessageExts
|
209
210
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
210
211
|
|
211
|
-
# The relative priority for requests. Note that priority
|
212
|
+
# The relative priority for requests. Note that priority isn't applicable
|
212
213
|
# for {::Google::Cloud::Spanner::V1::Spanner::Client#begin_transaction BeginTransaction}.
|
213
214
|
#
|
214
|
-
# The priority acts as a hint to the Cloud Spanner scheduler and
|
215
|
+
# The priority acts as a hint to the Cloud Spanner scheduler and doesn't
|
215
216
|
# guarantee priority or order of execution. For example:
|
216
217
|
#
|
217
218
|
# * Some parts of a write operation always execute at `PRIORITY_HIGH`,
|
218
|
-
# regardless of the specified priority. This
|
219
|
+
# regardless of the specified priority. This can cause you to see an
|
219
220
|
# increase in high priority workload even when executing a low priority
|
220
221
|
# request. This can also potentially cause a priority inversion where a
|
221
|
-
# lower priority request
|
222
|
+
# lower priority request is fulfilled ahead of a higher priority
|
222
223
|
# request.
|
223
224
|
# * If a transaction contains multiple operations with different priorities,
|
224
|
-
# Cloud Spanner
|
225
|
-
# operations first. There
|
226
|
-
# order of operations.
|
225
|
+
# Cloud Spanner doesn't guarantee to process the higher priority
|
226
|
+
# operations first. There might be other constraints to satisfy, such as
|
227
|
+
# the order of operations.
|
227
228
|
module Priority
|
228
229
|
# `PRIORITY_UNSPECIFIED` is equivalent to `PRIORITY_HIGH`.
|
229
230
|
PRIORITY_UNSPECIFIED = 0
|
@@ -239,24 +240,24 @@ module Google
|
|
239
240
|
end
|
240
241
|
end
|
241
242
|
|
242
|
-
# The DirectedReadOptions can be used to indicate which replicas or regions
|
243
|
+
# The `DirectedReadOptions` can be used to indicate which replicas or regions
|
243
244
|
# should be used for non-transactional reads or queries.
|
244
245
|
#
|
245
|
-
# DirectedReadOptions
|
246
|
-
# otherwise the API
|
246
|
+
# `DirectedReadOptions` can only be specified for a read-only transaction,
|
247
|
+
# otherwise the API returns an `INVALID_ARGUMENT` error.
|
247
248
|
# @!attribute [rw] include_replicas
|
248
249
|
# @return [::Google::Cloud::Spanner::V1::DirectedReadOptions::IncludeReplicas]
|
249
|
-
# Include_replicas indicates the order of replicas (as they appear in
|
250
|
-
# this list) to process the request. If auto_failover_disabled is set to
|
251
|
-
# true and all replicas are exhausted without finding a healthy replica,
|
252
|
-
# Spanner
|
253
|
-
#
|
250
|
+
# `Include_replicas` indicates the order of replicas (as they appear in
|
251
|
+
# this list) to process the request. If `auto_failover_disabled` is set to
|
252
|
+
# `true` and all replicas are exhausted without finding a healthy replica,
|
253
|
+
# Spanner waits for a replica in the list to become available, requests
|
254
|
+
# might fail due to `DEADLINE_EXCEEDED` errors.
|
254
255
|
#
|
255
256
|
# Note: The following fields are mutually exclusive: `include_replicas`, `exclude_replicas`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
256
257
|
# @!attribute [rw] exclude_replicas
|
257
258
|
# @return [::Google::Cloud::Spanner::V1::DirectedReadOptions::ExcludeReplicas]
|
258
|
-
# Exclude_replicas indicates that specified replicas should be excluded
|
259
|
-
# from serving requests. Spanner
|
259
|
+
# `Exclude_replicas` indicates that specified replicas should be excluded
|
260
|
+
# from serving requests. Spanner doesn't route requests to the replicas
|
260
261
|
# in this list.
|
261
262
|
#
|
262
263
|
# Note: The following fields are mutually exclusive: `exclude_replicas`, `include_replicas`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
@@ -275,16 +276,16 @@ module Google
|
|
275
276
|
# Some examples of using replica_selectors are:
|
276
277
|
#
|
277
278
|
# * `location:us-east1` --> The "us-east1" replica(s) of any available type
|
278
|
-
#
|
279
|
-
# * `type:READ_ONLY` --> The "READ_ONLY" type replica(s) in nearest
|
280
|
-
# available location
|
279
|
+
# is used to process the request.
|
280
|
+
# * `type:READ_ONLY` --> The "READ_ONLY" type replica(s) in the nearest
|
281
|
+
# available location are used to process the
|
281
282
|
# request.
|
282
283
|
# * `location:us-east1 type:READ_ONLY` --> The "READ_ONLY" type replica(s)
|
283
|
-
# in location "us-east1"
|
284
|
+
# in location "us-east1" is used to process
|
284
285
|
# the request.
|
285
286
|
# @!attribute [rw] location
|
286
287
|
# @return [::String]
|
287
|
-
# The location or region of the serving requests,
|
288
|
+
# The location or region of the serving requests, for example, "us-east1".
|
288
289
|
# @!attribute [rw] type
|
289
290
|
# @return [::Google::Cloud::Spanner::V1::DirectedReadOptions::ReplicaSelection::Type]
|
290
291
|
# The type of replica.
|
@@ -305,16 +306,16 @@ module Google
|
|
305
306
|
end
|
306
307
|
end
|
307
308
|
|
308
|
-
# An IncludeReplicas contains a repeated set of ReplicaSelection which
|
309
|
+
# An `IncludeReplicas` contains a repeated set of `ReplicaSelection` which
|
309
310
|
# indicates the order in which replicas should be considered.
|
310
311
|
# @!attribute [rw] replica_selections
|
311
312
|
# @return [::Array<::Google::Cloud::Spanner::V1::DirectedReadOptions::ReplicaSelection>]
|
312
313
|
# The directed read replica selector.
|
313
314
|
# @!attribute [rw] auto_failover_disabled
|
314
315
|
# @return [::Boolean]
|
315
|
-
# If true
|
316
|
-
# include_replicas list when all of the specified replicas are
|
317
|
-
# or unhealthy. Default value is `false`.
|
316
|
+
# If `true`, Spanner doesn't route requests to a replica outside the
|
317
|
+
# <`include_replicas` list when all of the specified replicas are
|
318
|
+
# unavailable or unhealthy. Default value is `false`.
|
318
319
|
class IncludeReplicas
|
319
320
|
include ::Google::Protobuf::MessageExts
|
320
321
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -344,7 +345,7 @@ module Google
|
|
344
345
|
# transaction with strong concurrency.
|
345
346
|
#
|
346
347
|
# Standard DML statements require a read-write transaction. To protect
|
347
|
-
# against replays, single-use transactions are not supported.
|
348
|
+
# against replays, single-use transactions are not supported. The caller
|
348
349
|
# must either supply an existing transaction ID or begin a new transaction.
|
349
350
|
#
|
350
351
|
# Partitioned DML requires an existing Partitioned DML transaction ID.
|
@@ -360,20 +361,20 @@ module Google
|
|
360
361
|
# to the naming requirements of identifiers as specified at
|
361
362
|
# https://cloud.google.com/spanner/docs/lexical#identifiers.
|
362
363
|
#
|
363
|
-
# Parameters can appear anywhere that a literal value is expected.
|
364
|
+
# Parameters can appear anywhere that a literal value is expected. The same
|
364
365
|
# parameter name can be used more than once, for example:
|
365
366
|
#
|
366
367
|
# `"WHERE id > @msg_id AND id < @msg_id + 100"`
|
367
368
|
#
|
368
|
-
# It
|
369
|
+
# It's an error to execute a SQL statement with unbound parameters.
|
369
370
|
# @!attribute [rw] param_types
|
370
371
|
# @return [::Google::Protobuf::Map{::String => ::Google::Cloud::Spanner::V1::Type}]
|
371
|
-
# It
|
372
|
-
# from a JSON value.
|
372
|
+
# It isn't always possible for Cloud Spanner to infer the right SQL type
|
373
|
+
# from a JSON value. For example, values of type `BYTES` and values
|
373
374
|
# of type `STRING` both appear in
|
374
375
|
# {::Google::Cloud::Spanner::V1::ExecuteSqlRequest#params params} as JSON strings.
|
375
376
|
#
|
376
|
-
# In these cases,
|
377
|
+
# In these cases, you can use `param_types` to specify the exact
|
377
378
|
# SQL type for some or all of the SQL statement parameters. See the
|
378
379
|
# definition of {::Google::Cloud::Spanner::V1::Type Type} for more information
|
379
380
|
# about SQL types.
|
@@ -395,20 +396,20 @@ module Google
|
|
395
396
|
# {::Google::Cloud::Spanner::V1::ExecuteSqlRequest::QueryMode::NORMAL QueryMode.NORMAL}.
|
396
397
|
# @!attribute [rw] partition_token
|
397
398
|
# @return [::String]
|
398
|
-
# If present, results
|
399
|
-
# previously created using PartitionQuery
|
399
|
+
# If present, results are restricted to the specified partition
|
400
|
+
# previously created using `PartitionQuery`. There must be an exact
|
400
401
|
# match for the values of fields common to this message and the
|
401
|
-
# PartitionQueryRequest message used to create this partition_token
|
402
|
+
# `PartitionQueryRequest` message used to create this `partition_token`.
|
402
403
|
# @!attribute [rw] seqno
|
403
404
|
# @return [::Integer]
|
404
405
|
# A per-transaction sequence number used to identify this request. This field
|
405
406
|
# makes each request idempotent such that if the request is received multiple
|
406
|
-
# times, at most one
|
407
|
+
# times, at most one succeeds.
|
407
408
|
#
|
408
409
|
# The sequence number must be monotonically increasing within the
|
409
410
|
# transaction. If a request arrives for the first time with an out-of-order
|
410
|
-
# sequence number, the transaction
|
411
|
-
# handled requests
|
411
|
+
# sequence number, the transaction can be aborted. Replays of previously
|
412
|
+
# handled requests yield the same response as the first execution.
|
412
413
|
#
|
413
414
|
# Required for DML statements. Ignored for queries.
|
414
415
|
# @!attribute [rw] query_options
|
@@ -425,19 +426,19 @@ module Google
|
|
425
426
|
# If this is for a partitioned query and this field is set to `true`, the
|
426
427
|
# request is executed with Spanner Data Boost independent compute resources.
|
427
428
|
#
|
428
|
-
# If the field is set to `true` but the request
|
429
|
+
# If the field is set to `true` but the request doesn't set
|
429
430
|
# `partition_token`, the API returns an `INVALID_ARGUMENT` error.
|
430
431
|
# @!attribute [rw] last_statement
|
431
432
|
# @return [::Boolean]
|
432
|
-
# Optional. If set to true
|
433
|
-
#
|
434
|
-
#
|
435
|
-
# transaction (including reads and queries)
|
433
|
+
# Optional. If set to `true`, this statement marks the end of the
|
434
|
+
# transaction. After this statement executes, you must commit or abort the
|
435
|
+
# transaction. Attempts to execute any other requests against this
|
436
|
+
# transaction (including reads and queries) are rejected.
|
436
437
|
#
|
437
|
-
# For DML statements, setting this option
|
438
|
-
# be deferred until commit time (
|
439
|
-
# Given this, successful execution of a DML statement
|
440
|
-
# until a subsequent Commit call completes successfully.
|
438
|
+
# For DML statements, setting this option might cause some error reporting to
|
439
|
+
# be deferred until commit time (for example, validation of unique
|
440
|
+
# constraints). Given this, successful execution of a DML statement shouldn't
|
441
|
+
# be assumed until a subsequent `Commit` call completes successfully.
|
441
442
|
class ExecuteSqlRequest
|
442
443
|
include ::Google::Protobuf::MessageExts
|
443
444
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -457,7 +458,7 @@ module Google
|
|
457
458
|
# overrides the default optimizer version for query execution.
|
458
459
|
#
|
459
460
|
# The list of supported optimizer versions can be queried from
|
460
|
-
# SPANNER_SYS.SUPPORTED_OPTIMIZER_VERSIONS
|
461
|
+
# `SPANNER_SYS.SUPPORTED_OPTIMIZER_VERSIONS`.
|
461
462
|
#
|
462
463
|
# Executing a SQL statement with an invalid optimizer version fails with
|
463
464
|
# an `INVALID_ARGUMENT` error.
|
@@ -477,13 +478,13 @@ module Google
|
|
477
478
|
# Specifying `latest` as a value instructs Cloud Spanner to use the latest
|
478
479
|
# generated statistics package. If not specified, Cloud Spanner uses
|
479
480
|
# the statistics package set at the database level options, or the latest
|
480
|
-
# package if the database option
|
481
|
+
# package if the database option isn't set.
|
481
482
|
#
|
482
483
|
# The statistics package requested by the query has to be exempt from
|
483
484
|
# garbage collection. This can be achieved with the following DDL
|
484
485
|
# statement:
|
485
486
|
#
|
486
|
-
# ```
|
487
|
+
# ```sql
|
487
488
|
# ALTER STATISTICS <package_name> SET OPTIONS (allow_gc=false)
|
488
489
|
# ```
|
489
490
|
#
|
@@ -518,7 +519,7 @@ module Google
|
|
518
519
|
|
519
520
|
# This mode returns the query plan, overall execution statistics,
|
520
521
|
# operator level execution statistics along with the results. This has a
|
521
|
-
# performance overhead compared to the other modes. It
|
522
|
+
# performance overhead compared to the other modes. It isn't recommended
|
522
523
|
# to use this mode for production traffic.
|
523
524
|
PROFILE = 2
|
524
525
|
|
@@ -555,26 +556,26 @@ module Google
|
|
555
556
|
# @return [::Integer]
|
556
557
|
# Required. A per-transaction sequence number used to identify this request.
|
557
558
|
# This field makes each request idempotent such that if the request is
|
558
|
-
# received multiple times, at most one
|
559
|
+
# received multiple times, at most one succeeds.
|
559
560
|
#
|
560
561
|
# The sequence number must be monotonically increasing within the
|
561
562
|
# transaction. If a request arrives for the first time with an out-of-order
|
562
|
-
# sequence number, the transaction
|
563
|
-
# handled requests
|
563
|
+
# sequence number, the transaction might be aborted. Replays of previously
|
564
|
+
# handled requests yield the same response as the first execution.
|
564
565
|
# @!attribute [rw] request_options
|
565
566
|
# @return [::Google::Cloud::Spanner::V1::RequestOptions]
|
566
567
|
# Common options for this request.
|
567
568
|
# @!attribute [rw] last_statements
|
568
569
|
# @return [::Boolean]
|
569
|
-
# Optional. If set to true
|
570
|
-
#
|
571
|
-
#
|
572
|
-
#
|
570
|
+
# Optional. If set to `true`, this request marks the end of the transaction.
|
571
|
+
# After these statements execute, you must commit or abort the transaction.
|
572
|
+
# Attempts to execute any other requests against this transaction
|
573
|
+
# (including reads and queries) are rejected.
|
573
574
|
#
|
574
|
-
# Setting this option
|
575
|
-
# commit time (
|
576
|
-
# execution of statements
|
577
|
-
# call completes successfully.
|
575
|
+
# Setting this option might cause some error reporting to be deferred until
|
576
|
+
# commit time (for example, validation of unique constraints). Given this,
|
577
|
+
# successful execution of statements shouldn't be assumed until a subsequent
|
578
|
+
# `Commit` call completes successfully.
|
578
579
|
class ExecuteBatchDmlRequest
|
579
580
|
include ::Google::Protobuf::MessageExts
|
580
581
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -591,16 +592,16 @@ module Google
|
|
591
592
|
# parameter name (for example, `@firstName`). Parameter names can contain
|
592
593
|
# letters, numbers, and underscores.
|
593
594
|
#
|
594
|
-
# Parameters can appear anywhere that a literal value is expected.
|
595
|
+
# Parameters can appear anywhere that a literal value is expected. The
|
595
596
|
# same parameter name can be used more than once, for example:
|
596
597
|
#
|
597
598
|
# `"WHERE id > @msg_id AND id < @msg_id + 100"`
|
598
599
|
#
|
599
|
-
# It
|
600
|
+
# It's an error to execute a SQL statement with unbound parameters.
|
600
601
|
# @!attribute [rw] param_types
|
601
602
|
# @return [::Google::Protobuf::Map{::String => ::Google::Cloud::Spanner::V1::Type}]
|
602
|
-
# It
|
603
|
-
# from a JSON value.
|
603
|
+
# It isn't always possible for Cloud Spanner to infer the right SQL type
|
604
|
+
# from a JSON value. For example, values of type `BYTES` and values
|
604
605
|
# of type `STRING` both appear in
|
605
606
|
# {::Google::Cloud::Spanner::V1::ExecuteBatchDmlRequest::Statement#params params} as
|
606
607
|
# JSON strings.
|
@@ -672,38 +673,34 @@ module Google
|
|
672
673
|
# Otherwise, the error status of the first failed statement.
|
673
674
|
# @!attribute [rw] precommit_token
|
674
675
|
# @return [::Google::Cloud::Spanner::V1::MultiplexedSessionPrecommitToken]
|
675
|
-
# Optional. A precommit token
|
676
|
-
# is on a multiplexed session.
|
677
|
-
#
|
678
|
-
# attempt should be passed to the
|
676
|
+
# Optional. A precommit token is included if the read-write transaction
|
677
|
+
# is on a multiplexed session. Pass the precommit token with the highest
|
678
|
+
# sequence number from this transaction attempt should be passed to the
|
679
679
|
# {::Google::Cloud::Spanner::V1::Spanner::Client#commit Commit} request for this transaction.
|
680
|
-
# This feature is not yet supported and will result in an UNIMPLEMENTED
|
681
|
-
# error.
|
682
680
|
class ExecuteBatchDmlResponse
|
683
681
|
include ::Google::Protobuf::MessageExts
|
684
682
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
685
683
|
end
|
686
684
|
|
687
|
-
# Options for a PartitionQueryRequest and
|
688
|
-
# PartitionReadRequest.
|
685
|
+
# Options for a `PartitionQueryRequest` and `PartitionReadRequest`.
|
689
686
|
# @!attribute [rw] partition_size_bytes
|
690
687
|
# @return [::Integer]
|
691
|
-
# **Note:** This hint is currently ignored by PartitionQuery and
|
692
|
-
# PartitionRead requests.
|
688
|
+
# **Note:** This hint is currently ignored by `PartitionQuery` and
|
689
|
+
# `PartitionRead` requests.
|
693
690
|
#
|
694
|
-
# The desired data size for each partition generated.
|
695
|
-
# option is currently 1 GiB.
|
696
|
-
# partition
|
691
|
+
# The desired data size for each partition generated. The default for this
|
692
|
+
# option is currently 1 GiB. This is only a hint. The actual size of each
|
693
|
+
# partition can be smaller or larger than this size request.
|
697
694
|
# @!attribute [rw] max_partitions
|
698
695
|
# @return [::Integer]
|
699
|
-
# **Note:** This hint is currently ignored by PartitionQuery and
|
700
|
-
# PartitionRead requests.
|
696
|
+
# **Note:** This hint is currently ignored by `PartitionQuery` and
|
697
|
+
# `PartitionRead` requests.
|
701
698
|
#
|
702
|
-
# The desired maximum number of partitions to return.
|
703
|
-
# be set to the number of workers available.
|
704
|
-
# is currently 10,000. The maximum value is currently 200,000.
|
705
|
-
# a hint.
|
706
|
-
# than this maximum count request.
|
699
|
+
# The desired maximum number of partitions to return. For example, this
|
700
|
+
# might be set to the number of workers available. The default for this
|
701
|
+
# option is currently 10,000. The maximum value is currently 200,000. This
|
702
|
+
# is only a hint. The actual number of partitions returned can be smaller or
|
703
|
+
# larger than this maximum count request.
|
707
704
|
class PartitionOptions
|
708
705
|
include ::Google::Protobuf::MessageExts
|
709
706
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -715,22 +712,23 @@ module Google
|
|
715
712
|
# Required. The session used to create the partitions.
|
716
713
|
# @!attribute [rw] transaction
|
717
714
|
# @return [::Google::Cloud::Spanner::V1::TransactionSelector]
|
718
|
-
# Read
|
719
|
-
# transactions are not.
|
715
|
+
# Read-only snapshot transactions are supported, read and write and
|
716
|
+
# single-use transactions are not.
|
720
717
|
# @!attribute [rw] sql
|
721
718
|
# @return [::String]
|
722
|
-
# Required. The query request to generate partitions for. The request
|
723
|
-
#
|
719
|
+
# Required. The query request to generate partitions for. The request fails
|
720
|
+
# if the query isn't root partitionable. For a query to be root
|
724
721
|
# partitionable, it needs to satisfy a few conditions. For example, if the
|
725
722
|
# query execution plan contains a distributed union operator, then it must be
|
726
723
|
# the first operator in the plan. For more information about other
|
727
724
|
# conditions, see [Read data in
|
728
725
|
# parallel](https://cloud.google.com/spanner/docs/reads#read_data_in_parallel).
|
729
726
|
#
|
730
|
-
# The query request must not contain DML commands, such as INSERT
|
731
|
-
# DELETE
|
732
|
-
# {::Google::Cloud::Spanner::V1::Spanner::Client#execute_streaming_sql ExecuteStreamingSql} with
|
733
|
-
# PartitionedDml transaction for large, partition-friendly DML
|
727
|
+
# The query request must not contain DML commands, such as `INSERT`,
|
728
|
+
# `UPDATE`, or `DELETE`. Use
|
729
|
+
# {::Google::Cloud::Spanner::V1::Spanner::Client#execute_streaming_sql `ExecuteStreamingSql`} with
|
730
|
+
# a `PartitionedDml` transaction for large, partition-friendly DML
|
731
|
+
# operations.
|
734
732
|
# @!attribute [rw] params
|
735
733
|
# @return [::Google::Protobuf::Struct]
|
736
734
|
# Parameter names and values that bind to placeholders in the SQL string.
|
@@ -739,16 +737,16 @@ module Google
|
|
739
737
|
# parameter name (for example, `@firstName`). Parameter names can contain
|
740
738
|
# letters, numbers, and underscores.
|
741
739
|
#
|
742
|
-
# Parameters can appear anywhere that a literal value is expected.
|
740
|
+
# Parameters can appear anywhere that a literal value is expected. The same
|
743
741
|
# parameter name can be used more than once, for example:
|
744
742
|
#
|
745
743
|
# `"WHERE id > @msg_id AND id < @msg_id + 100"`
|
746
744
|
#
|
747
|
-
# It
|
745
|
+
# It's an error to execute a SQL statement with unbound parameters.
|
748
746
|
# @!attribute [rw] param_types
|
749
747
|
# @return [::Google::Protobuf::Map{::String => ::Google::Cloud::Spanner::V1::Type}]
|
750
|
-
# It
|
751
|
-
# from a JSON value.
|
748
|
+
# It isn't always possible for Cloud Spanner to infer the right SQL type
|
749
|
+
# from a JSON value. For example, values of type `BYTES` and values
|
752
750
|
# of type `STRING` both appear in
|
753
751
|
# {::Google::Cloud::Spanner::V1::PartitionQueryRequest#params params} as JSON strings.
|
754
752
|
#
|
@@ -806,7 +804,7 @@ module Google
|
|
806
804
|
# {::Google::Cloud::Spanner::V1::PartitionReadRequest#key_set key_set} instead names
|
807
805
|
# index keys in {::Google::Cloud::Spanner::V1::PartitionReadRequest#index index}.
|
808
806
|
#
|
809
|
-
# It
|
807
|
+
# It isn't an error for the `key_set` to name rows that don't
|
810
808
|
# exist in the database. Read yields nothing for nonexistent rows.
|
811
809
|
# @!attribute [rw] partition_options
|
812
810
|
# @return [::Google::Cloud::Spanner::V1::PartitionOptions]
|
@@ -820,9 +818,9 @@ module Google
|
|
820
818
|
# PartitionResponse.
|
821
819
|
# @!attribute [rw] partition_token
|
822
820
|
# @return [::String]
|
823
|
-
# This token can be passed to Read
|
824
|
-
# ExecuteStreamingSql requests to restrict the results to those identified
|
825
|
-
# this partition token.
|
821
|
+
# This token can be passed to `Read`, `StreamingRead`, `ExecuteSql`, or
|
822
|
+
# `ExecuteStreamingSql` requests to restrict the results to those identified
|
823
|
+
# by this partition token.
|
826
824
|
class Partition
|
827
825
|
include ::Google::Protobuf::MessageExts
|
828
826
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -877,16 +875,16 @@ module Google
|
|
877
875
|
# If the {::Google::Cloud::Spanner::V1::ReadRequest#partition_token partition_token}
|
878
876
|
# field is empty, rows are yielded in table primary key order (if
|
879
877
|
# {::Google::Cloud::Spanner::V1::ReadRequest#index index} is empty) or index key order
|
880
|
-
# (if {::Google::Cloud::Spanner::V1::ReadRequest#index index} is non-empty).
|
881
|
-
# {::Google::Cloud::Spanner::V1::ReadRequest#partition_token partition_token} field
|
882
|
-
#
|
878
|
+
# (if {::Google::Cloud::Spanner::V1::ReadRequest#index index} is non-empty). If the
|
879
|
+
# {::Google::Cloud::Spanner::V1::ReadRequest#partition_token partition_token} field
|
880
|
+
# isn't empty, rows are yielded in an unspecified order.
|
883
881
|
#
|
884
|
-
# It
|
882
|
+
# It isn't an error for the `key_set` to name rows that don't
|
885
883
|
# exist in the database. Read yields nothing for nonexistent rows.
|
886
884
|
# @!attribute [rw] limit
|
887
885
|
# @return [::Integer]
|
888
886
|
# If greater than zero, only the first `limit` rows are yielded. If `limit`
|
889
|
-
# is zero, the default is no limit. A limit
|
887
|
+
# is zero, the default is no limit. A limit can't be specified if
|
890
888
|
# `partition_token` is set.
|
891
889
|
# @!attribute [rw] resume_token
|
892
890
|
# @return [::String]
|
@@ -898,8 +896,8 @@ module Google
|
|
898
896
|
# that yielded this token.
|
899
897
|
# @!attribute [rw] partition_token
|
900
898
|
# @return [::String]
|
901
|
-
# If present, results
|
902
|
-
# previously created using PartitionRead
|
899
|
+
# If present, results are restricted to the specified partition
|
900
|
+
# previously created using `PartitionRead`. There must be an exact
|
903
901
|
# match for the values of fields common to this message and the
|
904
902
|
# PartitionReadRequest message used to create this partition_token.
|
905
903
|
# @!attribute [rw] request_options
|
@@ -913,17 +911,18 @@ module Google
|
|
913
911
|
# If this is for a partitioned read and this field is set to `true`, the
|
914
912
|
# request is executed with Spanner Data Boost independent compute resources.
|
915
913
|
#
|
916
|
-
# If the field is set to `true` but the request
|
914
|
+
# If the field is set to `true` but the request doesn't set
|
917
915
|
# `partition_token`, the API returns an `INVALID_ARGUMENT` error.
|
918
916
|
# @!attribute [rw] order_by
|
919
917
|
# @return [::Google::Cloud::Spanner::V1::ReadRequest::OrderBy]
|
920
918
|
# Optional. Order for the returned rows.
|
921
919
|
#
|
922
|
-
# By default, Spanner
|
923
|
-
# PartitionRead requests. For applications that
|
920
|
+
# By default, Spanner returns result rows in primary key order except for
|
921
|
+
# PartitionRead requests. For applications that don't require rows to be
|
924
922
|
# returned in primary key (`ORDER_BY_PRIMARY_KEY`) order, setting
|
925
923
|
# `ORDER_BY_NO_ORDER` option allows Spanner to optimize row retrieval,
|
926
|
-
# resulting in lower latencies in certain cases (
|
924
|
+
# resulting in lower latencies in certain cases (for example, bulk point
|
925
|
+
# lookups).
|
927
926
|
# @!attribute [rw] lock_hint
|
928
927
|
# @return [::Google::Cloud::Spanner::V1::ReadRequest::LockHint]
|
929
928
|
# Optional. Lock Hint for the request, it can only be used with read-write
|
@@ -936,13 +935,13 @@ module Google
|
|
936
935
|
module OrderBy
|
937
936
|
# Default value.
|
938
937
|
#
|
939
|
-
# ORDER_BY_UNSPECIFIED is equivalent to ORDER_BY_PRIMARY_KEY
|
938
|
+
# `ORDER_BY_UNSPECIFIED` is equivalent to `ORDER_BY_PRIMARY_KEY`.
|
940
939
|
ORDER_BY_UNSPECIFIED = 0
|
941
940
|
|
942
941
|
# Read rows are returned in primary key order.
|
943
942
|
#
|
944
943
|
# In the event that this option is used in conjunction with the
|
945
|
-
# `partition_token` field, the API
|
944
|
+
# `partition_token` field, the API returns an `INVALID_ARGUMENT` error.
|
946
945
|
ORDER_BY_PRIMARY_KEY = 1
|
947
946
|
|
948
947
|
# Read rows are returned in any order.
|
@@ -953,7 +952,7 @@ module Google
|
|
953
952
|
module LockHint
|
954
953
|
# Default value.
|
955
954
|
#
|
956
|
-
# LOCK_HINT_UNSPECIFIED is equivalent to LOCK_HINT_SHARED
|
955
|
+
# `LOCK_HINT_UNSPECIFIED` is equivalent to `LOCK_HINT_SHARED`.
|
957
956
|
LOCK_HINT_UNSPECIFIED = 0
|
958
957
|
|
959
958
|
# Acquire shared locks.
|
@@ -984,8 +983,8 @@ module Google
|
|
984
983
|
# serialized. Each transaction waits its turn to acquire the lock and
|
985
984
|
# avoids getting into deadlock situations.
|
986
985
|
#
|
987
|
-
# Because the exclusive lock hint is just a hint, it
|
988
|
-
# considered equivalent to a mutex. In other words, you
|
986
|
+
# Because the exclusive lock hint is just a hint, it shouldn't be
|
987
|
+
# considered equivalent to a mutex. In other words, you shouldn't use
|
989
988
|
# Spanner exclusive locks as a mutual exclusion mechanism for the execution
|
990
989
|
# of code outside of Spanner.
|
991
990
|
#
|
@@ -1010,17 +1009,15 @@ module Google
|
|
1010
1009
|
# @return [::Google::Cloud::Spanner::V1::RequestOptions]
|
1011
1010
|
# Common options for this request.
|
1012
1011
|
# Priority is ignored for this request. Setting the priority in this
|
1013
|
-
# request_options struct
|
1012
|
+
# `request_options` struct doesn't do anything. To set the priority for a
|
1014
1013
|
# transaction, set it on the reads and writes that are part of this
|
1015
1014
|
# transaction instead.
|
1016
1015
|
# @!attribute [rw] mutation_key
|
1017
1016
|
# @return [::Google::Cloud::Spanner::V1::Mutation]
|
1018
1017
|
# Optional. Required for read-write transactions on a multiplexed session
|
1019
|
-
# that commit mutations but
|
1020
|
-
#
|
1021
|
-
#
|
1022
|
-
# This feature is not yet supported and will result in an UNIMPLEMENTED
|
1023
|
-
# error.
|
1018
|
+
# that commit mutations but don't perform any reads or queries. You must
|
1019
|
+
# randomly select one of the mutations from the mutation set and send it as a
|
1020
|
+
# part of this request.
|
1024
1021
|
class BeginTransactionRequest
|
1025
1022
|
include ::Google::Protobuf::MessageExts
|
1026
1023
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -1042,7 +1039,7 @@ module Google
|
|
1042
1039
|
# temporary transaction is non-idempotent. That is, if the
|
1043
1040
|
# `CommitRequest` is sent to Cloud Spanner more than once (for
|
1044
1041
|
# instance, due to retries in the application, or in the
|
1045
|
-
# transport library), it
|
1042
|
+
# transport library), it's possible that the mutations are
|
1046
1043
|
# executed more than once. If this is undesirable, use
|
1047
1044
|
# {::Google::Cloud::Spanner::V1::Spanner::Client#begin_transaction BeginTransaction} and
|
1048
1045
|
# {::Google::Cloud::Spanner::V1::Spanner::Client#commit Commit} instead.
|
@@ -1055,27 +1052,25 @@ module Google
|
|
1055
1052
|
# this list.
|
1056
1053
|
# @!attribute [rw] return_commit_stats
|
1057
1054
|
# @return [::Boolean]
|
1058
|
-
# If `true`, then statistics related to the transaction
|
1055
|
+
# If `true`, then statistics related to the transaction is included in
|
1059
1056
|
# the {::Google::Cloud::Spanner::V1::CommitResponse#commit_stats CommitResponse}.
|
1060
1057
|
# Default value is `false`.
|
1061
1058
|
# @!attribute [rw] max_commit_delay
|
1062
1059
|
# @return [::Google::Protobuf::Duration]
|
1063
|
-
# Optional. The amount of latency this request is
|
1064
|
-
# to improve throughput. If this field
|
1065
|
-
# are relatively latency sensitive and automatically determines an
|
1066
|
-
# appropriate delay time. You can specify a
|
1067
|
-
#
|
1060
|
+
# Optional. The amount of latency this request is configured to incur in
|
1061
|
+
# order to improve throughput. If this field isn't set, Spanner assumes
|
1062
|
+
# requests are relatively latency sensitive and automatically determines an
|
1063
|
+
# appropriate delay time. You can specify a commit delay value between 0 and
|
1064
|
+
# 500 ms.
|
1068
1065
|
# @!attribute [rw] request_options
|
1069
1066
|
# @return [::Google::Cloud::Spanner::V1::RequestOptions]
|
1070
1067
|
# Common options for this request.
|
1071
1068
|
# @!attribute [rw] precommit_token
|
1072
1069
|
# @return [::Google::Cloud::Spanner::V1::MultiplexedSessionPrecommitToken]
|
1073
1070
|
# Optional. If the read-write transaction was executed on a multiplexed
|
1074
|
-
# session, the precommit token with the highest
|
1075
|
-
#
|
1076
|
-
#
|
1077
|
-
# This feature is not yet supported and will result in an UNIMPLEMENTED
|
1078
|
-
# error.
|
1071
|
+
# session, then you must include the precommit token with the highest
|
1072
|
+
# sequence number received in this transaction attempt. Failing to do so
|
1073
|
+
# results in a `FailedPrecondition` error.
|
1079
1074
|
class CommitRequest
|
1080
1075
|
include ::Google::Protobuf::MessageExts
|
1081
1076
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -1105,18 +1100,9 @@ module Google
|
|
1105
1100
|
# Required. The groups of mutations to be applied.
|
1106
1101
|
# @!attribute [rw] exclude_txn_from_change_streams
|
1107
1102
|
# @return [::Boolean]
|
1108
|
-
# Optional.
|
1109
|
-
#
|
1110
|
-
#
|
1111
|
-
# that are tracking columns modified by these transactions.
|
1112
|
-
# * Mutations from all transactions in this batch write operation will be
|
1113
|
-
# recorded in change streams with DDL option `allow_txn_exclusion=false or
|
1114
|
-
# not set` that are tracking columns modified by these transactions.
|
1115
|
-
#
|
1116
|
-
# When `exclude_txn_from_change_streams` is set to `false` or not set,
|
1117
|
-
# mutations from all transactions in this batch write operation will be
|
1118
|
-
# recorded in all change streams that are tracking columns modified by these
|
1119
|
-
# transactions.
|
1103
|
+
# Optional. If you don't set the `exclude_txn_from_change_streams` option or
|
1104
|
+
# if it's set to `false`, then any change streams monitoring columns modified
|
1105
|
+
# by transactions will capture the updates made within that transaction.
|
1120
1106
|
class BatchWriteRequest
|
1121
1107
|
include ::Google::Protobuf::MessageExts
|
1122
1108
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|