google-cloud-spanner-v1 0.2.3 → 0.6.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/LICENSE.md +188 -190
- data/README.md +66 -2
- data/lib/google/cloud/spanner/v1/spanner/client.rb +105 -69
- data/lib/google/cloud/spanner/v1/version.rb +1 -1
- data/lib/google/spanner/v1/commit_response_pb.rb +30 -0
- data/lib/google/spanner/v1/spanner_pb.rb +21 -4
- data/lib/google/spanner/v1/spanner_services_pb.rb +7 -1
- data/proto_docs/google/api/field_behavior.rb +6 -0
- data/proto_docs/google/protobuf/any.rb +5 -2
- data/proto_docs/google/protobuf/timestamp.rb +10 -1
- data/proto_docs/google/spanner/v1/commit_response.rb +55 -0
- data/proto_docs/google/spanner/v1/spanner.rb +130 -21
- data/proto_docs/google/spanner/v1/transaction.rb +12 -11
- data/proto_docs/google/spanner/v1/type.rb +1 -1
- metadata +21 -11
@@ -30,7 +30,7 @@ module Google
|
|
30
30
|
# transactions on data stored in Cloud Spanner databases.
|
31
31
|
class Service
|
32
32
|
|
33
|
-
include GRPC::GenericService
|
33
|
+
include ::GRPC::GenericService
|
34
34
|
|
35
35
|
self.marshal_class_method = :encode
|
36
36
|
self.unmarshal_class_method = :decode
|
@@ -134,6 +134,12 @@ module Google
|
|
134
134
|
# transactions. However, it can also happen for a variety of other
|
135
135
|
# reasons. If `Commit` returns `ABORTED`, the caller should re-attempt
|
136
136
|
# the transaction from the beginning, re-using the same session.
|
137
|
+
#
|
138
|
+
# On very rare occasions, `Commit` might return `UNKNOWN`. This can happen,
|
139
|
+
# for example, if the client job experiences a 1+ hour networking failure.
|
140
|
+
# At that point, Cloud Spanner has lost track of the transaction outcome and
|
141
|
+
# we recommend that you perform another read from the database to see the
|
142
|
+
# state of things as they are now.
|
137
143
|
rpc :Commit, ::Google::Cloud::Spanner::V1::CommitRequest, ::Google::Cloud::Spanner::V1::CommitResponse
|
138
144
|
# Rolls back a transaction, releasing any locks it holds. It is a good
|
139
145
|
# idea to call this for any transaction that includes one or more
|
@@ -54,6 +54,12 @@ module Google
|
|
54
54
|
# This indicates that the field may be set once in a request to create a
|
55
55
|
# resource, but may not be changed thereafter.
|
56
56
|
IMMUTABLE = 5
|
57
|
+
|
58
|
+
# Denotes that a (repeated) field is an unordered list.
|
59
|
+
# This indicates that the service may provide the elements of the list
|
60
|
+
# in any arbitrary order, rather than the order the user originally
|
61
|
+
# provided. Additionally, the list's order may or may not be stable.
|
62
|
+
UNORDERED_LIST = 6
|
57
63
|
end
|
58
64
|
end
|
59
65
|
end
|
@@ -57,10 +57,13 @@ module Google
|
|
57
57
|
# Example 4: Pack and unpack a message in Go
|
58
58
|
#
|
59
59
|
# foo := &pb.Foo{...}
|
60
|
-
# any, err :=
|
60
|
+
# any, err := anypb.New(foo)
|
61
|
+
# if err != nil {
|
62
|
+
# ...
|
63
|
+
# }
|
61
64
|
# ...
|
62
65
|
# foo := &pb.Foo{}
|
63
|
-
# if err :=
|
66
|
+
# if err := any.UnmarshalTo(foo); err != nil {
|
64
67
|
# ...
|
65
68
|
# }
|
66
69
|
#
|
@@ -70,7 +70,16 @@ module Google
|
|
70
70
|
# .setNanos((int) ((millis % 1000) * 1000000)).build();
|
71
71
|
#
|
72
72
|
#
|
73
|
-
# Example 5: Compute Timestamp from
|
73
|
+
# Example 5: Compute Timestamp from Java `Instant.now()`.
|
74
|
+
#
|
75
|
+
# Instant now = Instant.now();
|
76
|
+
#
|
77
|
+
# Timestamp timestamp =
|
78
|
+
# Timestamp.newBuilder().setSeconds(now.getEpochSecond())
|
79
|
+
# .setNanos(now.getNano()).build();
|
80
|
+
#
|
81
|
+
#
|
82
|
+
# Example 6: Compute Timestamp from current time in Python.
|
74
83
|
#
|
75
84
|
# timestamp = Timestamp()
|
76
85
|
# timestamp.GetCurrentTime()
|
@@ -0,0 +1,55 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Copyright 2021 Google LLC
|
4
|
+
#
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
+
# you may not use this file except in compliance with the License.
|
7
|
+
# You may obtain a copy of the License at
|
8
|
+
#
|
9
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
#
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
# See the License for the specific language governing permissions and
|
15
|
+
# limitations under the License.
|
16
|
+
|
17
|
+
# Auto-generated by gapic-generator-ruby. DO NOT EDIT!
|
18
|
+
|
19
|
+
|
20
|
+
module Google
|
21
|
+
module Cloud
|
22
|
+
module Spanner
|
23
|
+
module V1
|
24
|
+
# The response for {::Google::Cloud::Spanner::V1::Spanner::Client#commit Commit}.
|
25
|
+
# @!attribute [rw] commit_timestamp
|
26
|
+
# @return [::Google::Protobuf::Timestamp]
|
27
|
+
# The Cloud Spanner timestamp at which the transaction committed.
|
28
|
+
# @!attribute [rw] commit_stats
|
29
|
+
# @return [::Google::Cloud::Spanner::V1::CommitResponse::CommitStats]
|
30
|
+
# The statistics about this Commit. Not returned by default.
|
31
|
+
# For more information, see
|
32
|
+
# {::Google::Cloud::Spanner::V1::CommitRequest#return_commit_stats CommitRequest.return_commit_stats}.
|
33
|
+
class CommitResponse
|
34
|
+
include ::Google::Protobuf::MessageExts
|
35
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
36
|
+
|
37
|
+
# Additional statistics about a commit.
|
38
|
+
# @!attribute [rw] mutation_count
|
39
|
+
# @return [::Integer]
|
40
|
+
# The total number of mutations for the transaction. Knowing the
|
41
|
+
# `mutation_count` value can help you maximize the number of mutations
|
42
|
+
# in a transaction and minimize the number of API round trips. You can
|
43
|
+
# also monitor this value to prevent transactions from exceeding the system
|
44
|
+
# [limit](http://cloud.google.com/spanner/quotas#limits_for_creating_reading_updating_and_deleting_data).
|
45
|
+
# If the number of mutations exceeds the limit, the server returns
|
46
|
+
# [INVALID_ARGUMENT](http://cloud.google.com/spanner/docs/reference/rest/v1/Code#ENUM_VALUES.INVALID_ARGUMENT).
|
47
|
+
class CommitStats
|
48
|
+
include ::Google::Protobuf::MessageExts
|
49
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
@@ -62,10 +62,9 @@ module Google
|
|
62
62
|
end
|
63
63
|
|
64
64
|
# A session in the Cloud Spanner API.
|
65
|
-
# @!attribute [
|
65
|
+
# @!attribute [r] name
|
66
66
|
# @return [::String]
|
67
|
-
# The name of the session. This is always system-assigned
|
68
|
-
# when creating a session are ignored.
|
67
|
+
# Output only. The name of the session. This is always system-assigned.
|
69
68
|
# @!attribute [rw] labels
|
70
69
|
# @return [::Google::Protobuf::Map{::String => ::String}]
|
71
70
|
# The labels for the session.
|
@@ -77,10 +76,10 @@ module Google
|
|
77
76
|
# * No more than 64 labels can be associated with a given session.
|
78
77
|
#
|
79
78
|
# See https://goo.gl/xmQnxf for more information on and examples of labels.
|
80
|
-
# @!attribute [
|
79
|
+
# @!attribute [r] create_time
|
81
80
|
# @return [::Google::Protobuf::Timestamp]
|
82
81
|
# Output only. The timestamp when the session is created.
|
83
|
-
# @!attribute [
|
82
|
+
# @!attribute [r] approximate_last_use_time
|
84
83
|
# @return [::Google::Protobuf::Timestamp]
|
85
84
|
# Output only. The approximate timestamp when the session is last used. It is
|
86
85
|
# typically earlier than the actual last use time.
|
@@ -160,6 +159,68 @@ module Google
|
|
160
159
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
161
160
|
end
|
162
161
|
|
162
|
+
# Common request options for various APIs.
|
163
|
+
# @!attribute [rw] priority
|
164
|
+
# @return [::Google::Cloud::Spanner::V1::RequestOptions::Priority]
|
165
|
+
# Priority for the request.
|
166
|
+
# @!attribute [rw] request_tag
|
167
|
+
# @return [::String]
|
168
|
+
# A per-request tag which can be applied to queries or reads, used for
|
169
|
+
# statistics collection.
|
170
|
+
# Both request_tag and transaction_tag can be specified for a read or query
|
171
|
+
# that belongs to a transaction.
|
172
|
+
# This field is ignored for requests where it's not applicable (e.g.
|
173
|
+
# CommitRequest).
|
174
|
+
# Legal characters for `request_tag` values are all printable characters
|
175
|
+
# (ASCII 32 - 126) and the length of a request_tag is limited to 50
|
176
|
+
# characters. Values that exceed this limit are truncated.
|
177
|
+
# @!attribute [rw] transaction_tag
|
178
|
+
# @return [::String]
|
179
|
+
# A tag used for statistics collection about this transaction.
|
180
|
+
# Both request_tag and transaction_tag can be specified for a read or query
|
181
|
+
# that belongs to a transaction.
|
182
|
+
# The value of transaction_tag should be the same for all requests belonging
|
183
|
+
# to the same transaction.
|
184
|
+
# If this request doesn’t belong to any transaction, transaction_tag will be
|
185
|
+
# ignored.
|
186
|
+
# Legal characters for `transaction_tag` values are all printable characters
|
187
|
+
# (ASCII 32 - 126) and the length of a transaction_tag is limited to 50
|
188
|
+
# characters. Values that exceed this limit are truncated.
|
189
|
+
class RequestOptions
|
190
|
+
include ::Google::Protobuf::MessageExts
|
191
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
192
|
+
|
193
|
+
# The relative priority for requests. Note that priority is not applicable
|
194
|
+
# for {::Google::Cloud::Spanner::V1::Spanner::Client#begin_transaction BeginTransaction}.
|
195
|
+
#
|
196
|
+
# The priority acts as a hint to the Cloud Spanner scheduler and does not
|
197
|
+
# guarantee priority or order of execution. For example:
|
198
|
+
#
|
199
|
+
# * Some parts of a write operation always execute at `PRIORITY_HIGH`,
|
200
|
+
# regardless of the specified priority. This may cause you to see an
|
201
|
+
# increase in high priority workload even when executing a low priority
|
202
|
+
# request. This can also potentially cause a priority inversion where a
|
203
|
+
# lower priority request will be fulfilled ahead of a higher priority
|
204
|
+
# request.
|
205
|
+
# * If a transaction contains multiple operations with different priorities,
|
206
|
+
# Cloud Spanner does not guarantee to process the higher priority
|
207
|
+
# operations first. There may be other constraints to satisfy, such as
|
208
|
+
# order of operations.
|
209
|
+
module Priority
|
210
|
+
# `PRIORITY_UNSPECIFIED` is equivalent to `PRIORITY_HIGH`.
|
211
|
+
PRIORITY_UNSPECIFIED = 0
|
212
|
+
|
213
|
+
# This specifies that the request is low priority.
|
214
|
+
PRIORITY_LOW = 1
|
215
|
+
|
216
|
+
# This specifies that the request is medium priority.
|
217
|
+
PRIORITY_MEDIUM = 2
|
218
|
+
|
219
|
+
# This specifies that the request is high priority.
|
220
|
+
PRIORITY_HIGH = 3
|
221
|
+
end
|
222
|
+
end
|
223
|
+
|
163
224
|
# The request for {::Google::Cloud::Spanner::V1::Spanner::Client#execute_sql ExecuteSql} and
|
164
225
|
# {::Google::Cloud::Spanner::V1::Spanner::Client#execute_streaming_sql ExecuteStreamingSql}.
|
165
226
|
# @!attribute [rw] session
|
@@ -185,8 +246,9 @@ module Google
|
|
185
246
|
# Parameter names and values that bind to placeholders in the SQL string.
|
186
247
|
#
|
187
248
|
# A parameter placeholder consists of the `@` character followed by the
|
188
|
-
# parameter name (for example, `@firstName`). Parameter names
|
189
|
-
#
|
249
|
+
# parameter name (for example, `@firstName`). Parameter names must conform
|
250
|
+
# to the naming requirements of identifiers as specified at
|
251
|
+
# https://cloud.google.com/spanner/docs/lexical#identifiers.
|
190
252
|
#
|
191
253
|
# Parameters can appear anywhere that a literal value is expected. The same
|
192
254
|
# parameter name can be used more than once, for example:
|
@@ -238,6 +300,9 @@ module Google
|
|
238
300
|
# @!attribute [rw] query_options
|
239
301
|
# @return [::Google::Cloud::Spanner::V1::ExecuteSqlRequest::QueryOptions]
|
240
302
|
# Query optimizer configuration to use for the given query.
|
303
|
+
# @!attribute [rw] request_options
|
304
|
+
# @return [::Google::Cloud::Spanner::V1::RequestOptions]
|
305
|
+
# Common options for this request.
|
241
306
|
class ExecuteSqlRequest
|
242
307
|
include ::Google::Protobuf::MessageExts
|
243
308
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -250,17 +315,49 @@ module Google
|
|
250
315
|
# This parameter allows individual queries to pick different query
|
251
316
|
# optimizer versions.
|
252
317
|
#
|
253
|
-
# Specifying
|
318
|
+
# Specifying `latest` as a value instructs Cloud Spanner to use the
|
254
319
|
# latest supported query optimizer version. If not specified, Cloud Spanner
|
255
|
-
# uses optimizer version set at the database level options. Any other
|
320
|
+
# uses the optimizer version set at the database level options. Any other
|
256
321
|
# positive integer (from the list of supported optimizer versions)
|
257
322
|
# overrides the default optimizer version for query execution.
|
323
|
+
#
|
258
324
|
# The list of supported optimizer versions can be queried from
|
259
|
-
# SPANNER_SYS.SUPPORTED_OPTIMIZER_VERSIONS.
|
260
|
-
#
|
261
|
-
#
|
325
|
+
# SPANNER_SYS.SUPPORTED_OPTIMIZER_VERSIONS.
|
326
|
+
#
|
327
|
+
# Executing a SQL statement with an invalid optimizer version fails with
|
328
|
+
# an `INVALID_ARGUMENT` error.
|
329
|
+
#
|
330
|
+
# See
|
331
|
+
# https://cloud.google.com/spanner/docs/query-optimizer/manage-query-optimizer
|
332
|
+
# for more information on managing the query optimizer.
|
262
333
|
#
|
263
334
|
# The `optimizer_version` statement hint has precedence over this setting.
|
335
|
+
# @!attribute [rw] optimizer_statistics_package
|
336
|
+
# @return [::String]
|
337
|
+
# An option to control the selection of optimizer statistics package.
|
338
|
+
#
|
339
|
+
# This parameter allows individual queries to use a different query
|
340
|
+
# optimizer statistics package.
|
341
|
+
#
|
342
|
+
# Specifying `latest` as a value instructs Cloud Spanner to use the latest
|
343
|
+
# generated statistics package. If not specified, Cloud Spanner uses
|
344
|
+
# the statistics package set at the database level options, or the latest
|
345
|
+
# package if the database option is not set.
|
346
|
+
#
|
347
|
+
# The statistics package requested by the query has to be exempt from
|
348
|
+
# garbage collection. This can be achieved with the following DDL
|
349
|
+
# statement:
|
350
|
+
#
|
351
|
+
# ```
|
352
|
+
# ALTER STATISTICS <package_name> SET OPTIONS (allow_gc=false)
|
353
|
+
# ```
|
354
|
+
#
|
355
|
+
# The list of available statistics packages can be queried from
|
356
|
+
# `INFORMATION_SCHEMA.SPANNER_STATISTICS`.
|
357
|
+
#
|
358
|
+
# Executing a SQL statement with an invalid optimizer statistics package
|
359
|
+
# or with a statistics package that allows garbage collection fails with
|
360
|
+
# an `INVALID_ARGUMENT` error.
|
264
361
|
class QueryOptions
|
265
362
|
include ::Google::Protobuf::MessageExts
|
266
363
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -319,6 +416,9 @@ module Google
|
|
319
416
|
# transaction. If a request arrives for the first time with an out-of-order
|
320
417
|
# sequence number, the transaction may be aborted. Replays of previously
|
321
418
|
# handled requests will yield the same response as the first execution.
|
419
|
+
# @!attribute [rw] request_options
|
420
|
+
# @return [::Google::Cloud::Spanner::V1::RequestOptions]
|
421
|
+
# Common options for this request.
|
322
422
|
class ExecuteBatchDmlRequest
|
323
423
|
include ::Google::Protobuf::MessageExts
|
324
424
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -610,6 +710,9 @@ module Google
|
|
610
710
|
# previously created using PartitionRead(). There must be an exact
|
611
711
|
# match for the values of fields common to this message and the
|
612
712
|
# PartitionReadRequest message used to create this partition_token.
|
713
|
+
# @!attribute [rw] request_options
|
714
|
+
# @return [::Google::Cloud::Spanner::V1::RequestOptions]
|
715
|
+
# Common options for this request.
|
613
716
|
class ReadRequest
|
614
717
|
include ::Google::Protobuf::MessageExts
|
615
718
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -622,6 +725,13 @@ module Google
|
|
622
725
|
# @!attribute [rw] options
|
623
726
|
# @return [::Google::Cloud::Spanner::V1::TransactionOptions]
|
624
727
|
# Required. Options for the new transaction.
|
728
|
+
# @!attribute [rw] request_options
|
729
|
+
# @return [::Google::Cloud::Spanner::V1::RequestOptions]
|
730
|
+
# Common options for this request.
|
731
|
+
# Priority is ignored for this request. Setting the priority in this
|
732
|
+
# request_options struct will not do anything. To set the priority for a
|
733
|
+
# transaction, set it on the reads and writes that are part of this
|
734
|
+
# transaction instead.
|
625
735
|
class BeginTransactionRequest
|
626
736
|
include ::Google::Protobuf::MessageExts
|
627
737
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -650,20 +760,19 @@ module Google
|
|
650
760
|
# The mutations to be executed when this transaction commits. All
|
651
761
|
# mutations are applied atomically, in the order they appear in
|
652
762
|
# this list.
|
763
|
+
# @!attribute [rw] return_commit_stats
|
764
|
+
# @return [::Boolean]
|
765
|
+
# If `true`, then statistics related to the transaction will be included in
|
766
|
+
# the {::Google::Cloud::Spanner::V1::CommitResponse#commit_stats CommitResponse}. Default value is
|
767
|
+
# `false`.
|
768
|
+
# @!attribute [rw] request_options
|
769
|
+
# @return [::Google::Cloud::Spanner::V1::RequestOptions]
|
770
|
+
# Common options for this request.
|
653
771
|
class CommitRequest
|
654
772
|
include ::Google::Protobuf::MessageExts
|
655
773
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
656
774
|
end
|
657
775
|
|
658
|
-
# The response for {::Google::Cloud::Spanner::V1::Spanner::Client#commit Commit}.
|
659
|
-
# @!attribute [rw] commit_timestamp
|
660
|
-
# @return [::Google::Protobuf::Timestamp]
|
661
|
-
# The Cloud Spanner timestamp at which the transaction committed.
|
662
|
-
class CommitResponse
|
663
|
-
include ::Google::Protobuf::MessageExts
|
664
|
-
extend ::Google::Protobuf::MessageExts::ClassMethods
|
665
|
-
end
|
666
|
-
|
667
776
|
# The request for {::Google::Cloud::Spanner::V1::Spanner::Client#rollback Rollback}.
|
668
777
|
# @!attribute [rw] session
|
669
778
|
# @return [::String]
|
@@ -24,10 +24,11 @@ module Google
|
|
24
24
|
# # Transactions
|
25
25
|
#
|
26
26
|
#
|
27
|
-
# Each session can have at most one active transaction at a time
|
28
|
-
#
|
29
|
-
#
|
30
|
-
#
|
27
|
+
# Each session can have at most one active transaction at a time (note that
|
28
|
+
# standalone reads and queries use a transaction internally and do count
|
29
|
+
# towards the one transaction limit). After the active transaction is
|
30
|
+
# completed, the session can immediately be re-used for the next transaction.
|
31
|
+
# It is not necessary to create a new session for each transaction.
|
31
32
|
#
|
32
33
|
# # Transaction Modes
|
33
34
|
#
|
@@ -85,7 +86,7 @@ module Google
|
|
85
86
|
# {::Google::Cloud::Spanner::V1::Spanner::Client#rollback Rollback} request to abort the
|
86
87
|
# transaction.
|
87
88
|
#
|
88
|
-
#
|
89
|
+
# ## Semantics
|
89
90
|
#
|
90
91
|
# Cloud Spanner can commit the transaction if all read locks it acquired
|
91
92
|
# are still valid at commit time, and it is able to acquire write
|
@@ -98,7 +99,7 @@ module Google
|
|
98
99
|
# use Cloud Spanner locks for any sort of mutual exclusion other than
|
99
100
|
# between Cloud Spanner transactions themselves.
|
100
101
|
#
|
101
|
-
#
|
102
|
+
# ## Retrying Aborted Transactions
|
102
103
|
#
|
103
104
|
# When a transaction aborts, the application can choose to retry the
|
104
105
|
# whole transaction again. To maximize the chances of successfully
|
@@ -114,7 +115,7 @@ module Google
|
|
114
115
|
# instead, it is better to limit the total amount of wall time spent
|
115
116
|
# retrying.
|
116
117
|
#
|
117
|
-
#
|
118
|
+
# ## Idle Transactions
|
118
119
|
#
|
119
120
|
# A transaction is considered idle if it has no outstanding reads or
|
120
121
|
# SQL queries and has not started a read or SQL query within the last 10
|
@@ -164,7 +165,7 @@ module Google
|
|
164
165
|
#
|
165
166
|
# Each type of timestamp bound is discussed in detail below.
|
166
167
|
#
|
167
|
-
#
|
168
|
+
# ## Strong
|
168
169
|
#
|
169
170
|
# Strong reads are guaranteed to see the effects of all transactions
|
170
171
|
# that have committed before the start of the read. Furthermore, all
|
@@ -180,7 +181,7 @@ module Google
|
|
180
181
|
#
|
181
182
|
# See {::Google::Cloud::Spanner::V1::TransactionOptions::ReadOnly#strong TransactionOptions.ReadOnly.strong}.
|
182
183
|
#
|
183
|
-
#
|
184
|
+
# ## Exact Staleness
|
184
185
|
#
|
185
186
|
# These timestamp bounds execute reads at a user-specified
|
186
187
|
# timestamp. Reads at a timestamp are guaranteed to see a consistent
|
@@ -202,7 +203,7 @@ module Google
|
|
202
203
|
# See {::Google::Cloud::Spanner::V1::TransactionOptions::ReadOnly#read_timestamp TransactionOptions.ReadOnly.read_timestamp} and
|
203
204
|
# {::Google::Cloud::Spanner::V1::TransactionOptions::ReadOnly#exact_staleness TransactionOptions.ReadOnly.exact_staleness}.
|
204
205
|
#
|
205
|
-
#
|
206
|
+
# ## Bounded Staleness
|
206
207
|
#
|
207
208
|
# Bounded staleness modes allow Cloud Spanner to pick the read timestamp,
|
208
209
|
# subject to a user-provided staleness bound. Cloud Spanner chooses the
|
@@ -232,7 +233,7 @@ module Google
|
|
232
233
|
# See {::Google::Cloud::Spanner::V1::TransactionOptions::ReadOnly#max_staleness TransactionOptions.ReadOnly.max_staleness} and
|
233
234
|
# {::Google::Cloud::Spanner::V1::TransactionOptions::ReadOnly#min_read_timestamp TransactionOptions.ReadOnly.min_read_timestamp}.
|
234
235
|
#
|
235
|
-
#
|
236
|
+
# ## Old Read Timestamps and Garbage Collection
|
236
237
|
#
|
237
238
|
# Cloud Spanner continuously garbage collects deleted and overwritten data
|
238
239
|
# in the background to reclaim storage space. This process is known
|
@@ -59,7 +59,7 @@ module Google
|
|
59
59
|
# SQL queries, it is the column alias (e.g., `"Word"` in the
|
60
60
|
# query `"SELECT 'hello' AS Word"`), or the column name (e.g.,
|
61
61
|
# `"ColName"` in the query `"SELECT ColName FROM Table"`). Some
|
62
|
-
# columns might have an empty name (e.g.,
|
62
|
+
# columns might have an empty name (e.g., `"SELECT
|
63
63
|
# UPPER(ColName)"`). Note that a query result can contain
|
64
64
|
# multiple fields with the same name.
|
65
65
|
# @!attribute [rw] type
|
metadata
CHANGED
@@ -1,29 +1,35 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: google-cloud-spanner-v1
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.6.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Google LLC
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-06-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: gapic-common
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - "
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0.5'
|
20
|
+
- - "<"
|
18
21
|
- !ruby/object:Gem::Version
|
19
|
-
version:
|
22
|
+
version: 2.a
|
20
23
|
type: :runtime
|
21
24
|
prerelease: false
|
22
25
|
version_requirements: !ruby/object:Gem::Requirement
|
23
26
|
requirements:
|
24
|
-
- - "
|
27
|
+
- - ">="
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '0.5'
|
30
|
+
- - "<"
|
25
31
|
- !ruby/object:Gem::Version
|
26
|
-
version:
|
32
|
+
version: 2.a
|
27
33
|
- !ruby/object:Gem::Dependency
|
28
34
|
name: google-cloud-errors
|
29
35
|
requirement: !ruby/object:Gem::Requirement
|
@@ -44,14 +50,14 @@ dependencies:
|
|
44
50
|
requirements:
|
45
51
|
- - "~>"
|
46
52
|
- !ruby/object:Gem::Version
|
47
|
-
version: 1.
|
53
|
+
version: 1.25.1
|
48
54
|
type: :development
|
49
55
|
prerelease: false
|
50
56
|
version_requirements: !ruby/object:Gem::Requirement
|
51
57
|
requirements:
|
52
58
|
- - "~>"
|
53
59
|
- !ruby/object:Gem::Version
|
54
|
-
version: 1.
|
60
|
+
version: 1.25.1
|
55
61
|
- !ruby/object:Gem::Dependency
|
56
62
|
name: minitest
|
57
63
|
requirement: !ruby/object:Gem::Requirement
|
@@ -151,7 +157,9 @@ dependencies:
|
|
151
157
|
- !ruby/object:Gem::Version
|
152
158
|
version: '0.9'
|
153
159
|
description: Cloud Spanner is a managed, mission-critical, globally consistent and
|
154
|
-
scalable relational database service.
|
160
|
+
scalable relational database service. Note that google-cloud-spanner-v1 is a version-specific
|
161
|
+
client library. For most uses, we recommend installing the main client library google-cloud-spanner
|
162
|
+
instead. See the readme for more details.
|
155
163
|
email: googleapis-packages@google.com
|
156
164
|
executables: []
|
157
165
|
extensions: []
|
@@ -168,6 +176,7 @@ files:
|
|
168
176
|
- lib/google/cloud/spanner/v1/spanner/credentials.rb
|
169
177
|
- lib/google/cloud/spanner/v1/spanner/paths.rb
|
170
178
|
- lib/google/cloud/spanner/v1/version.rb
|
179
|
+
- lib/google/spanner/v1/commit_response_pb.rb
|
171
180
|
- lib/google/spanner/v1/keys_pb.rb
|
172
181
|
- lib/google/spanner/v1/mutation_pb.rb
|
173
182
|
- lib/google/spanner/v1/query_plan_pb.rb
|
@@ -185,6 +194,7 @@ files:
|
|
185
194
|
- proto_docs/google/protobuf/struct.rb
|
186
195
|
- proto_docs/google/protobuf/timestamp.rb
|
187
196
|
- proto_docs/google/rpc/status.rb
|
197
|
+
- proto_docs/google/spanner/v1/commit_response.rb
|
188
198
|
- proto_docs/google/spanner/v1/keys.rb
|
189
199
|
- proto_docs/google/spanner/v1/mutation.rb
|
190
200
|
- proto_docs/google/spanner/v1/query_plan.rb
|
@@ -204,14 +214,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
204
214
|
requirements:
|
205
215
|
- - ">="
|
206
216
|
- !ruby/object:Gem::Version
|
207
|
-
version: '2.
|
217
|
+
version: '2.5'
|
208
218
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
209
219
|
requirements:
|
210
220
|
- - ">="
|
211
221
|
- !ruby/object:Gem::Version
|
212
222
|
version: '0'
|
213
223
|
requirements: []
|
214
|
-
rubygems_version: 3.2.
|
224
|
+
rubygems_version: 3.2.17
|
215
225
|
signing_key:
|
216
226
|
specification_version: 4
|
217
227
|
summary: API Client library for the Cloud Spanner V1 API
|