google-cloud-spanner 1.2.0 → 1.3.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.
Files changed (44) hide show
  1. checksums.yaml +4 -4
  2. data/lib/google-cloud-spanner.rb +25 -0
  3. data/lib/google/cloud/spanner.rb +71 -11
  4. data/lib/google/cloud/spanner/batch_client.rb +355 -0
  5. data/lib/google/cloud/spanner/batch_snapshot.rb +588 -0
  6. data/lib/google/cloud/spanner/client.rb +27 -20
  7. data/lib/google/cloud/spanner/commit.rb +6 -5
  8. data/lib/google/cloud/spanner/convert.rb +39 -0
  9. data/lib/google/cloud/spanner/credentials.rb +7 -7
  10. data/lib/google/cloud/spanner/data.rb +5 -5
  11. data/lib/google/cloud/spanner/database.rb +13 -7
  12. data/lib/google/cloud/spanner/database/job.rb +7 -2
  13. data/lib/google/cloud/spanner/database/list.rb +1 -1
  14. data/lib/google/cloud/spanner/fields.rb +16 -12
  15. data/lib/google/cloud/spanner/instance.rb +25 -13
  16. data/lib/google/cloud/spanner/instance/config.rb +2 -2
  17. data/lib/google/cloud/spanner/instance/config/list.rb +1 -1
  18. data/lib/google/cloud/spanner/instance/job.rb +7 -2
  19. data/lib/google/cloud/spanner/instance/list.rb +1 -1
  20. data/lib/google/cloud/spanner/partition.rb +208 -0
  21. data/lib/google/cloud/spanner/pool.rb +6 -6
  22. data/lib/google/cloud/spanner/project.rb +59 -16
  23. data/lib/google/cloud/spanner/results.rb +12 -5
  24. data/lib/google/cloud/spanner/service.rb +85 -61
  25. data/lib/google/cloud/spanner/session.rb +45 -9
  26. data/lib/google/cloud/spanner/snapshot.rb +10 -2
  27. data/lib/google/cloud/spanner/status.rb +6 -5
  28. data/lib/google/cloud/spanner/transaction.rb +11 -3
  29. data/lib/google/cloud/spanner/v1/doc/google/protobuf/duration.rb +1 -1
  30. data/lib/google/cloud/spanner/v1/doc/google/protobuf/struct.rb +1 -1
  31. data/lib/google/cloud/spanner/v1/doc/google/protobuf/timestamp.rb +1 -1
  32. data/lib/google/cloud/spanner/v1/doc/google/spanner/v1/keys.rb +1 -1
  33. data/lib/google/cloud/spanner/v1/doc/google/spanner/v1/mutation.rb +1 -1
  34. data/lib/google/cloud/spanner/v1/doc/google/spanner/v1/query_plan.rb +1 -1
  35. data/lib/google/cloud/spanner/v1/doc/google/spanner/v1/result_set.rb +1 -1
  36. data/lib/google/cloud/spanner/v1/doc/google/spanner/v1/spanner.rb +138 -6
  37. data/lib/google/cloud/spanner/v1/doc/google/spanner/v1/transaction.rb +1 -1
  38. data/lib/google/cloud/spanner/v1/doc/overview.rb +6 -5
  39. data/lib/google/cloud/spanner/v1/spanner_client.rb +257 -33
  40. data/lib/google/cloud/spanner/v1/spanner_client_config.json +10 -0
  41. data/lib/google/cloud/spanner/version.rb +1 -1
  42. data/lib/google/spanner/v1/spanner_pb.rb +35 -0
  43. data/lib/google/spanner/v1/spanner_services_pb.rb +20 -2
  44. metadata +12 -9
@@ -86,6 +86,16 @@
86
86
  "timeout_millis": 30000,
87
87
  "retry_codes_name": "idempotent",
88
88
  "retry_params_name": "default"
89
+ },
90
+ "PartitionQuery": {
91
+ "timeout_millis": 3600000,
92
+ "retry_codes_name": "idempotent",
93
+ "retry_params_name": "default"
94
+ },
95
+ "PartitionRead": {
96
+ "timeout_millis": 30000,
97
+ "retry_codes_name": "idempotent",
98
+ "retry_params_name": "default"
89
99
  }
90
100
  }
91
101
  }
@@ -16,7 +16,7 @@
16
16
  module Google
17
17
  module Cloud
18
18
  module Spanner
19
- VERSION = "1.2.0"
19
+ VERSION = "1.3.1".freeze
20
20
  end
21
21
  end
22
22
  end
@@ -47,12 +47,41 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
47
47
  map :param_types, :string, :message, 5, "google.spanner.v1.Type"
48
48
  optional :resume_token, :bytes, 6
49
49
  optional :query_mode, :enum, 7, "google.spanner.v1.ExecuteSqlRequest.QueryMode"
50
+ optional :partition_token, :bytes, 8
50
51
  end
51
52
  add_enum "google.spanner.v1.ExecuteSqlRequest.QueryMode" do
52
53
  value :NORMAL, 0
53
54
  value :PLAN, 1
54
55
  value :PROFILE, 2
55
56
  end
57
+ add_message "google.spanner.v1.PartitionOptions" do
58
+ optional :partition_size_bytes, :int64, 1
59
+ optional :max_partitions, :int64, 2
60
+ end
61
+ add_message "google.spanner.v1.PartitionQueryRequest" do
62
+ optional :session, :string, 1
63
+ optional :transaction, :message, 2, "google.spanner.v1.TransactionSelector"
64
+ optional :sql, :string, 3
65
+ optional :params, :message, 4, "google.protobuf.Struct"
66
+ map :param_types, :string, :message, 5, "google.spanner.v1.Type"
67
+ optional :partition_options, :message, 6, "google.spanner.v1.PartitionOptions"
68
+ end
69
+ add_message "google.spanner.v1.PartitionReadRequest" do
70
+ optional :session, :string, 1
71
+ optional :transaction, :message, 2, "google.spanner.v1.TransactionSelector"
72
+ optional :table, :string, 3
73
+ optional :index, :string, 4
74
+ repeated :columns, :string, 5
75
+ optional :key_set, :message, 6, "google.spanner.v1.KeySet"
76
+ optional :partition_options, :message, 9, "google.spanner.v1.PartitionOptions"
77
+ end
78
+ add_message "google.spanner.v1.Partition" do
79
+ optional :partition_token, :bytes, 1
80
+ end
81
+ add_message "google.spanner.v1.PartitionResponse" do
82
+ repeated :partitions, :message, 1, "google.spanner.v1.Partition"
83
+ optional :transaction, :message, 2, "google.spanner.v1.Transaction"
84
+ end
56
85
  add_message "google.spanner.v1.ReadRequest" do
57
86
  optional :session, :string, 1
58
87
  optional :transaction, :message, 2, "google.spanner.v1.TransactionSelector"
@@ -62,6 +91,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
62
91
  optional :key_set, :message, 6, "google.spanner.v1.KeySet"
63
92
  optional :limit, :int64, 8
64
93
  optional :resume_token, :bytes, 9
94
+ optional :partition_token, :bytes, 10
65
95
  end
66
96
  add_message "google.spanner.v1.BeginTransactionRequest" do
67
97
  optional :session, :string, 1
@@ -95,6 +125,11 @@ module Google
95
125
  DeleteSessionRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.DeleteSessionRequest").msgclass
96
126
  ExecuteSqlRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.ExecuteSqlRequest").msgclass
97
127
  ExecuteSqlRequest::QueryMode = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.ExecuteSqlRequest.QueryMode").enummodule
128
+ PartitionOptions = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.PartitionOptions").msgclass
129
+ PartitionQueryRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.PartitionQueryRequest").msgclass
130
+ PartitionReadRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.PartitionReadRequest").msgclass
131
+ Partition = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.Partition").msgclass
132
+ PartitionResponse = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.PartitionResponse").msgclass
98
133
  ReadRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.ReadRequest").msgclass
99
134
  BeginTransactionRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.BeginTransactionRequest").msgclass
100
135
  CommitRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.CommitRequest").msgclass
@@ -1,13 +1,13 @@
1
1
  # Generated by the protocol buffer compiler. DO NOT EDIT!
2
2
  # Source: google/spanner/v1/spanner.proto for package 'google.spanner.v1'
3
3
  # Original file comments:
4
- # Copyright 2017 Google Inc.
4
+ # Copyright 2018 Google Inc.
5
5
  #
6
6
  # Licensed under the Apache License, Version 2.0 (the "License");
7
7
  # you may not use this file except in compliance with the License.
8
8
  # You may obtain a copy of the License at
9
9
  #
10
- # https://www.apache.org/licenses/LICENSE-2.0
10
+ # http://www.apache.org/licenses/LICENSE-2.0
11
11
  #
12
12
  # Unless required by applicable law or agreed to in writing, software
13
13
  # distributed under the License is distributed on an "AS IS" BASIS,
@@ -124,6 +124,24 @@ module Google
124
124
  # transaction was already aborted, or the transaction is not
125
125
  # found. `Rollback` never returns `ABORTED`.
126
126
  rpc :Rollback, RollbackRequest, Google::Protobuf::Empty
127
+ # Creates a set of partition tokens that can be used to execute a query
128
+ # operation in parallel. Each of the returned partition tokens can be used
129
+ # by [ExecuteStreamingSql][google.spanner.v1.Spanner.ExecuteStreamingSql] to specify a subset
130
+ # of the query result to read. The same session and read-only transaction
131
+ # must be used by the PartitionQueryRequest used to create the
132
+ # partition tokens and the ExecuteSqlRequests that use the partition tokens.
133
+ # Partition tokens become invalid when the session used to create them
134
+ # is deleted or begins a new transaction.
135
+ rpc :PartitionQuery, PartitionQueryRequest, PartitionResponse
136
+ # Creates a set of partition tokens that can be used to execute a read
137
+ # operation in parallel. Each of the returned partition tokens can be used
138
+ # by [StreamingRead][google.spanner.v1.Spanner.StreamingRead] to specify a subset of the read
139
+ # result to read. The same session and read-only transaction must be used by
140
+ # the PartitionReadRequest used to create the partition tokens and the
141
+ # ReadRequests that use the partition tokens.
142
+ # Partition tokens become invalid when the session used to create them
143
+ # is deleted or begins a new transaction.
144
+ rpc :PartitionRead, PartitionReadRequest, PartitionResponse
127
145
  end
128
146
 
129
147
  Stub = Service.rpc_stub_class
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-cloud-spanner
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.0
4
+ version: 1.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mike Moore
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2017-12-19 00:00:00.000000000 Z
12
+ date: 2018-02-27 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: google-cloud-core
@@ -17,14 +17,14 @@ dependencies:
17
17
  requirements:
18
18
  - - "~>"
19
19
  - !ruby/object:Gem::Version
20
- version: '1.1'
20
+ version: '1.2'
21
21
  type: :runtime
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
25
  - - "~>"
26
26
  - !ruby/object:Gem::Version
27
- version: '1.1'
27
+ version: '1.2'
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: google-gax
30
30
  requirement: !ruby/object:Gem::Requirement
@@ -141,16 +141,16 @@ dependencies:
141
141
  name: rubocop
142
142
  requirement: !ruby/object:Gem::Requirement
143
143
  requirements:
144
- - - "<="
144
+ - - "~>"
145
145
  - !ruby/object:Gem::Version
146
- version: 0.35.1
146
+ version: 0.50.0
147
147
  type: :development
148
148
  prerelease: false
149
149
  version_requirements: !ruby/object:Gem::Requirement
150
150
  requirements:
151
- - - "<="
151
+ - - "~>"
152
152
  - !ruby/object:Gem::Version
153
- version: 0.35.1
153
+ version: 0.50.0
154
154
  - !ruby/object:Gem::Dependency
155
155
  name: simplecov
156
156
  requirement: !ruby/object:Gem::Requirement
@@ -225,6 +225,8 @@ files:
225
225
  - lib/google/cloud/spanner/admin/instance/v1/doc/overview.rb
226
226
  - lib/google/cloud/spanner/admin/instance/v1/instance_admin_client.rb
227
227
  - lib/google/cloud/spanner/admin/instance/v1/instance_admin_client_config.json
228
+ - lib/google/cloud/spanner/batch_client.rb
229
+ - lib/google/cloud/spanner/batch_snapshot.rb
228
230
  - lib/google/cloud/spanner/client.rb
229
231
  - lib/google/cloud/spanner/commit.rb
230
232
  - lib/google/cloud/spanner/convert.rb
@@ -240,6 +242,7 @@ files:
240
242
  - lib/google/cloud/spanner/instance/config/list.rb
241
243
  - lib/google/cloud/spanner/instance/job.rb
242
244
  - lib/google/cloud/spanner/instance/list.rb
245
+ - lib/google/cloud/spanner/partition.rb
243
246
  - lib/google/cloud/spanner/policy.rb
244
247
  - lib/google/cloud/spanner/pool.rb
245
248
  - lib/google/cloud/spanner/project.rb
@@ -296,7 +299,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
296
299
  version: '0'
297
300
  requirements: []
298
301
  rubyforge_project:
299
- rubygems_version: 2.7.3
302
+ rubygems_version: 2.7.6
300
303
  signing_key:
301
304
  specification_version: 4
302
305
  summary: API Client library for Google Cloud Spanner API