google-cloud-spanner 0.21.0
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 +7 -0
- data/lib/google-cloud-spanner.rb +106 -0
- data/lib/google/cloud/spanner.rb +382 -0
- data/lib/google/cloud/spanner/admin/database/v1.rb +17 -0
- data/lib/google/cloud/spanner/admin/database/v1/database_admin_client.rb +703 -0
- data/lib/google/cloud/spanner/admin/database/v1/database_admin_client_config.json +73 -0
- data/lib/google/cloud/spanner/admin/database/v1/doc/google/iam/v1/policy.rb +139 -0
- data/lib/google/cloud/spanner/admin/database/v1/doc/google/protobuf/any.rb +114 -0
- data/lib/google/cloud/spanner/admin/database/v1/doc/google/rpc/status.rb +83 -0
- data/lib/google/cloud/spanner/admin/database/v1/doc/google/spanner/admin/database/v1/spanner_database_admin.rb +188 -0
- data/lib/google/cloud/spanner/admin/instance/v1.rb +17 -0
- data/lib/google/cloud/spanner/admin/instance/v1/doc/google/iam/v1/policy.rb +139 -0
- data/lib/google/cloud/spanner/admin/instance/v1/doc/google/protobuf/any.rb +114 -0
- data/lib/google/cloud/spanner/admin/instance/v1/doc/google/protobuf/field_mask.rb +223 -0
- data/lib/google/cloud/spanner/admin/instance/v1/doc/google/rpc/status.rb +83 -0
- data/lib/google/cloud/spanner/admin/instance/v1/doc/google/spanner/admin/instance/v1/spanner_instance_admin.rb +268 -0
- data/lib/google/cloud/spanner/admin/instance/v1/instance_admin_client.rb +868 -0
- data/lib/google/cloud/spanner/admin/instance/v1/instance_admin_client_config.json +78 -0
- data/lib/google/cloud/spanner/client.rb +1034 -0
- data/lib/google/cloud/spanner/commit.rb +351 -0
- data/lib/google/cloud/spanner/convert.rb +311 -0
- data/lib/google/cloud/spanner/credentials.rb +32 -0
- data/lib/google/cloud/spanner/data.rb +199 -0
- data/lib/google/cloud/spanner/database.rb +377 -0
- data/lib/google/cloud/spanner/database/job.rb +179 -0
- data/lib/google/cloud/spanner/database/list.rb +171 -0
- data/lib/google/cloud/spanner/errors.rb +73 -0
- data/lib/google/cloud/spanner/fields.rb +252 -0
- data/lib/google/cloud/spanner/instance.rb +472 -0
- data/lib/google/cloud/spanner/instance/config.rb +99 -0
- data/lib/google/cloud/spanner/instance/config/list.rb +171 -0
- data/lib/google/cloud/spanner/instance/job.rb +197 -0
- data/lib/google/cloud/spanner/instance/list.rb +167 -0
- data/lib/google/cloud/spanner/policy.rb +201 -0
- data/lib/google/cloud/spanner/pool.rb +279 -0
- data/lib/google/cloud/spanner/project.rb +480 -0
- data/lib/google/cloud/spanner/range.rb +99 -0
- data/lib/google/cloud/spanner/results.rb +280 -0
- data/lib/google/cloud/spanner/service.rb +458 -0
- data/lib/google/cloud/spanner/session.rb +565 -0
- data/lib/google/cloud/spanner/snapshot.rb +260 -0
- data/lib/google/cloud/spanner/transaction.rb +533 -0
- data/lib/google/cloud/spanner/v1.rb +17 -0
- data/lib/google/cloud/spanner/v1/doc/google/protobuf/duration.rb +77 -0
- data/lib/google/cloud/spanner/v1/doc/google/protobuf/struct.rb +73 -0
- data/lib/google/cloud/spanner/v1/doc/google/protobuf/timestamp.rb +81 -0
- data/lib/google/cloud/spanner/v1/doc/google/spanner/v1/keys.rb +148 -0
- data/lib/google/cloud/spanner/v1/doc/google/spanner/v1/mutation.rb +80 -0
- data/lib/google/cloud/spanner/v1/doc/google/spanner/v1/query_plan.rb +120 -0
- data/lib/google/cloud/spanner/v1/doc/google/spanner/v1/result_set.rb +175 -0
- data/lib/google/cloud/spanner/v1/doc/google/spanner/v1/spanner.rb +206 -0
- data/lib/google/cloud/spanner/v1/doc/google/spanner/v1/transaction.rb +351 -0
- data/lib/google/cloud/spanner/v1/spanner_client.rb +850 -0
- data/lib/google/cloud/spanner/v1/spanner_client_config.json +78 -0
- data/lib/google/cloud/spanner/version.rb +22 -0
- data/lib/google/spanner/admin/database/v1/spanner_database_admin_pb.rb +85 -0
- data/lib/google/spanner/admin/database/v1/spanner_database_admin_services_pb.rb +95 -0
- data/lib/google/spanner/admin/instance/v1/spanner_instance_admin_pb.rb +106 -0
- data/lib/google/spanner/admin/instance/v1/spanner_instance_admin_services_pb.rb +180 -0
- data/lib/google/spanner/v1/keys_pb.rb +33 -0
- data/lib/google/spanner/v1/mutation_pb.rb +38 -0
- data/lib/google/spanner/v1/query_plan_pb.rb +47 -0
- data/lib/google/spanner/v1/result_set_pb.rb +43 -0
- data/lib/google/spanner/v1/spanner_pb.rb +90 -0
- data/lib/google/spanner/v1/spanner_services_pb.rb +131 -0
- data/lib/google/spanner/v1/transaction_pb.rb +51 -0
- data/lib/google/spanner/v1/type_pb.rb +43 -0
- metadata +309 -0
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
2
|
+
# source: google/spanner/v1/keys.proto
|
|
3
|
+
|
|
4
|
+
require 'google/protobuf'
|
|
5
|
+
|
|
6
|
+
require 'google/api/annotations_pb'
|
|
7
|
+
require 'google/protobuf/struct_pb'
|
|
8
|
+
Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
9
|
+
add_message "google.spanner.v1.KeyRange" do
|
|
10
|
+
oneof :start_key_type do
|
|
11
|
+
optional :start_closed, :message, 1, "google.protobuf.ListValue"
|
|
12
|
+
optional :start_open, :message, 2, "google.protobuf.ListValue"
|
|
13
|
+
end
|
|
14
|
+
oneof :end_key_type do
|
|
15
|
+
optional :end_closed, :message, 3, "google.protobuf.ListValue"
|
|
16
|
+
optional :end_open, :message, 4, "google.protobuf.ListValue"
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
add_message "google.spanner.v1.KeySet" do
|
|
20
|
+
repeated :keys, :message, 1, "google.protobuf.ListValue"
|
|
21
|
+
repeated :ranges, :message, 2, "google.spanner.v1.KeyRange"
|
|
22
|
+
optional :all, :bool, 3
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
module Google
|
|
27
|
+
module Spanner
|
|
28
|
+
module V1
|
|
29
|
+
KeyRange = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.KeyRange").msgclass
|
|
30
|
+
KeySet = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.KeySet").msgclass
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
2
|
+
# source: google/spanner/v1/mutation.proto
|
|
3
|
+
|
|
4
|
+
require 'google/protobuf'
|
|
5
|
+
|
|
6
|
+
require 'google/api/annotations_pb'
|
|
7
|
+
require 'google/protobuf/struct_pb'
|
|
8
|
+
require 'google/spanner/v1/keys_pb'
|
|
9
|
+
Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
10
|
+
add_message "google.spanner.v1.Mutation" do
|
|
11
|
+
oneof :operation do
|
|
12
|
+
optional :insert, :message, 1, "google.spanner.v1.Mutation.Write"
|
|
13
|
+
optional :update, :message, 2, "google.spanner.v1.Mutation.Write"
|
|
14
|
+
optional :insert_or_update, :message, 3, "google.spanner.v1.Mutation.Write"
|
|
15
|
+
optional :replace, :message, 4, "google.spanner.v1.Mutation.Write"
|
|
16
|
+
optional :delete, :message, 5, "google.spanner.v1.Mutation.Delete"
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
add_message "google.spanner.v1.Mutation.Write" do
|
|
20
|
+
optional :table, :string, 1
|
|
21
|
+
repeated :columns, :string, 2
|
|
22
|
+
repeated :values, :message, 3, "google.protobuf.ListValue"
|
|
23
|
+
end
|
|
24
|
+
add_message "google.spanner.v1.Mutation.Delete" do
|
|
25
|
+
optional :table, :string, 1
|
|
26
|
+
optional :key_set, :message, 2, "google.spanner.v1.KeySet"
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
module Google
|
|
31
|
+
module Spanner
|
|
32
|
+
module V1
|
|
33
|
+
Mutation = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.Mutation").msgclass
|
|
34
|
+
Mutation::Write = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.Mutation.Write").msgclass
|
|
35
|
+
Mutation::Delete = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.Mutation.Delete").msgclass
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
end
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
2
|
+
# source: google/spanner/v1/query_plan.proto
|
|
3
|
+
|
|
4
|
+
require 'google/protobuf'
|
|
5
|
+
|
|
6
|
+
require 'google/api/annotations_pb'
|
|
7
|
+
require 'google/protobuf/struct_pb'
|
|
8
|
+
Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
9
|
+
add_message "google.spanner.v1.PlanNode" do
|
|
10
|
+
optional :index, :int32, 1
|
|
11
|
+
optional :kind, :enum, 2, "google.spanner.v1.PlanNode.Kind"
|
|
12
|
+
optional :display_name, :string, 3
|
|
13
|
+
repeated :child_links, :message, 4, "google.spanner.v1.PlanNode.ChildLink"
|
|
14
|
+
optional :short_representation, :message, 5, "google.spanner.v1.PlanNode.ShortRepresentation"
|
|
15
|
+
optional :metadata, :message, 6, "google.protobuf.Struct"
|
|
16
|
+
optional :execution_stats, :message, 7, "google.protobuf.Struct"
|
|
17
|
+
end
|
|
18
|
+
add_message "google.spanner.v1.PlanNode.ChildLink" do
|
|
19
|
+
optional :child_index, :int32, 1
|
|
20
|
+
optional :type, :string, 2
|
|
21
|
+
optional :variable, :string, 3
|
|
22
|
+
end
|
|
23
|
+
add_message "google.spanner.v1.PlanNode.ShortRepresentation" do
|
|
24
|
+
optional :description, :string, 1
|
|
25
|
+
map :subqueries, :string, :int32, 2
|
|
26
|
+
end
|
|
27
|
+
add_enum "google.spanner.v1.PlanNode.Kind" do
|
|
28
|
+
value :KIND_UNSPECIFIED, 0
|
|
29
|
+
value :RELATIONAL, 1
|
|
30
|
+
value :SCALAR, 2
|
|
31
|
+
end
|
|
32
|
+
add_message "google.spanner.v1.QueryPlan" do
|
|
33
|
+
repeated :plan_nodes, :message, 1, "google.spanner.v1.PlanNode"
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
module Google
|
|
38
|
+
module Spanner
|
|
39
|
+
module V1
|
|
40
|
+
PlanNode = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.PlanNode").msgclass
|
|
41
|
+
PlanNode::ChildLink = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.PlanNode.ChildLink").msgclass
|
|
42
|
+
PlanNode::ShortRepresentation = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.PlanNode.ShortRepresentation").msgclass
|
|
43
|
+
PlanNode::Kind = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.PlanNode.Kind").enummodule
|
|
44
|
+
QueryPlan = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.QueryPlan").msgclass
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
end
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
2
|
+
# source: google/spanner/v1/result_set.proto
|
|
3
|
+
|
|
4
|
+
require 'google/protobuf'
|
|
5
|
+
|
|
6
|
+
require 'google/api/annotations_pb'
|
|
7
|
+
require 'google/protobuf/struct_pb'
|
|
8
|
+
require 'google/spanner/v1/query_plan_pb'
|
|
9
|
+
require 'google/spanner/v1/transaction_pb'
|
|
10
|
+
require 'google/spanner/v1/type_pb'
|
|
11
|
+
Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
12
|
+
add_message "google.spanner.v1.ResultSet" do
|
|
13
|
+
optional :metadata, :message, 1, "google.spanner.v1.ResultSetMetadata"
|
|
14
|
+
repeated :rows, :message, 2, "google.protobuf.ListValue"
|
|
15
|
+
optional :stats, :message, 3, "google.spanner.v1.ResultSetStats"
|
|
16
|
+
end
|
|
17
|
+
add_message "google.spanner.v1.PartialResultSet" do
|
|
18
|
+
optional :metadata, :message, 1, "google.spanner.v1.ResultSetMetadata"
|
|
19
|
+
repeated :values, :message, 2, "google.protobuf.Value"
|
|
20
|
+
optional :chunked_value, :bool, 3
|
|
21
|
+
optional :resume_token, :bytes, 4
|
|
22
|
+
optional :stats, :message, 5, "google.spanner.v1.ResultSetStats"
|
|
23
|
+
end
|
|
24
|
+
add_message "google.spanner.v1.ResultSetMetadata" do
|
|
25
|
+
optional :row_type, :message, 1, "google.spanner.v1.StructType"
|
|
26
|
+
optional :transaction, :message, 2, "google.spanner.v1.Transaction"
|
|
27
|
+
end
|
|
28
|
+
add_message "google.spanner.v1.ResultSetStats" do
|
|
29
|
+
optional :query_plan, :message, 1, "google.spanner.v1.QueryPlan"
|
|
30
|
+
optional :query_stats, :message, 2, "google.protobuf.Struct"
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
module Google
|
|
35
|
+
module Spanner
|
|
36
|
+
module V1
|
|
37
|
+
ResultSet = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.ResultSet").msgclass
|
|
38
|
+
PartialResultSet = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.PartialResultSet").msgclass
|
|
39
|
+
ResultSetMetadata = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.ResultSetMetadata").msgclass
|
|
40
|
+
ResultSetStats = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.ResultSetStats").msgclass
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
end
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
2
|
+
# source: google/spanner/v1/spanner.proto
|
|
3
|
+
|
|
4
|
+
require 'google/protobuf'
|
|
5
|
+
|
|
6
|
+
require 'google/api/annotations_pb'
|
|
7
|
+
require 'google/api/auth_pb'
|
|
8
|
+
require 'google/protobuf/empty_pb'
|
|
9
|
+
require 'google/protobuf/struct_pb'
|
|
10
|
+
require 'google/protobuf/timestamp_pb'
|
|
11
|
+
require 'google/spanner/v1/keys_pb'
|
|
12
|
+
require 'google/spanner/v1/mutation_pb'
|
|
13
|
+
require 'google/spanner/v1/result_set_pb'
|
|
14
|
+
require 'google/spanner/v1/transaction_pb'
|
|
15
|
+
require 'google/spanner/v1/type_pb'
|
|
16
|
+
Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
17
|
+
add_message "google.spanner.v1.CreateSessionRequest" do
|
|
18
|
+
optional :database, :string, 1
|
|
19
|
+
end
|
|
20
|
+
add_message "google.spanner.v1.Session" do
|
|
21
|
+
optional :name, :string, 1
|
|
22
|
+
end
|
|
23
|
+
add_message "google.spanner.v1.GetSessionRequest" do
|
|
24
|
+
optional :name, :string, 1
|
|
25
|
+
end
|
|
26
|
+
add_message "google.spanner.v1.DeleteSessionRequest" do
|
|
27
|
+
optional :name, :string, 1
|
|
28
|
+
end
|
|
29
|
+
add_message "google.spanner.v1.ExecuteSqlRequest" do
|
|
30
|
+
optional :session, :string, 1
|
|
31
|
+
optional :transaction, :message, 2, "google.spanner.v1.TransactionSelector"
|
|
32
|
+
optional :sql, :string, 3
|
|
33
|
+
optional :params, :message, 4, "google.protobuf.Struct"
|
|
34
|
+
map :param_types, :string, :message, 5, "google.spanner.v1.Type"
|
|
35
|
+
optional :resume_token, :bytes, 6
|
|
36
|
+
optional :query_mode, :enum, 7, "google.spanner.v1.ExecuteSqlRequest.QueryMode"
|
|
37
|
+
end
|
|
38
|
+
add_enum "google.spanner.v1.ExecuteSqlRequest.QueryMode" do
|
|
39
|
+
value :NORMAL, 0
|
|
40
|
+
value :PLAN, 1
|
|
41
|
+
value :PROFILE, 2
|
|
42
|
+
end
|
|
43
|
+
add_message "google.spanner.v1.ReadRequest" do
|
|
44
|
+
optional :session, :string, 1
|
|
45
|
+
optional :transaction, :message, 2, "google.spanner.v1.TransactionSelector"
|
|
46
|
+
optional :table, :string, 3
|
|
47
|
+
optional :index, :string, 4
|
|
48
|
+
repeated :columns, :string, 5
|
|
49
|
+
optional :key_set, :message, 6, "google.spanner.v1.KeySet"
|
|
50
|
+
optional :limit, :int64, 8
|
|
51
|
+
optional :resume_token, :bytes, 9
|
|
52
|
+
end
|
|
53
|
+
add_message "google.spanner.v1.BeginTransactionRequest" do
|
|
54
|
+
optional :session, :string, 1
|
|
55
|
+
optional :options, :message, 2, "google.spanner.v1.TransactionOptions"
|
|
56
|
+
end
|
|
57
|
+
add_message "google.spanner.v1.CommitRequest" do
|
|
58
|
+
optional :session, :string, 1
|
|
59
|
+
repeated :mutations, :message, 4, "google.spanner.v1.Mutation"
|
|
60
|
+
oneof :transaction do
|
|
61
|
+
optional :transaction_id, :bytes, 2
|
|
62
|
+
optional :single_use_transaction, :message, 3, "google.spanner.v1.TransactionOptions"
|
|
63
|
+
end
|
|
64
|
+
end
|
|
65
|
+
add_message "google.spanner.v1.CommitResponse" do
|
|
66
|
+
optional :commit_timestamp, :message, 1, "google.protobuf.Timestamp"
|
|
67
|
+
end
|
|
68
|
+
add_message "google.spanner.v1.RollbackRequest" do
|
|
69
|
+
optional :session, :string, 1
|
|
70
|
+
optional :transaction_id, :bytes, 2
|
|
71
|
+
end
|
|
72
|
+
end
|
|
73
|
+
|
|
74
|
+
module Google
|
|
75
|
+
module Spanner
|
|
76
|
+
module V1
|
|
77
|
+
CreateSessionRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.CreateSessionRequest").msgclass
|
|
78
|
+
Session = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.Session").msgclass
|
|
79
|
+
GetSessionRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.GetSessionRequest").msgclass
|
|
80
|
+
DeleteSessionRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.DeleteSessionRequest").msgclass
|
|
81
|
+
ExecuteSqlRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.ExecuteSqlRequest").msgclass
|
|
82
|
+
ExecuteSqlRequest::QueryMode = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.ExecuteSqlRequest.QueryMode").enummodule
|
|
83
|
+
ReadRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.ReadRequest").msgclass
|
|
84
|
+
BeginTransactionRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.BeginTransactionRequest").msgclass
|
|
85
|
+
CommitRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.CommitRequest").msgclass
|
|
86
|
+
CommitResponse = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.CommitResponse").msgclass
|
|
87
|
+
RollbackRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.RollbackRequest").msgclass
|
|
88
|
+
end
|
|
89
|
+
end
|
|
90
|
+
end
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
2
|
+
# Source: google/spanner/v1/spanner.proto for package 'google.spanner.v1'
|
|
3
|
+
# Original file comments:
|
|
4
|
+
# Copyright 2017 Google Inc.
|
|
5
|
+
#
|
|
6
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
+
# you may not use this file except in compliance with the License.
|
|
8
|
+
# You may obtain a copy of the License at
|
|
9
|
+
#
|
|
10
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
+
#
|
|
12
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
13
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
+
# See the License for the specific language governing permissions and
|
|
16
|
+
# limitations under the License.
|
|
17
|
+
#
|
|
18
|
+
|
|
19
|
+
require 'grpc'
|
|
20
|
+
require 'google/spanner/v1/spanner_pb'
|
|
21
|
+
|
|
22
|
+
module Google
|
|
23
|
+
module Spanner
|
|
24
|
+
module V1
|
|
25
|
+
module Spanner
|
|
26
|
+
# Cloud Spanner API
|
|
27
|
+
#
|
|
28
|
+
# The Cloud Spanner API can be used to manage sessions and execute
|
|
29
|
+
# transactions on data stored in Cloud Spanner databases.
|
|
30
|
+
class Service
|
|
31
|
+
|
|
32
|
+
include GRPC::GenericService
|
|
33
|
+
|
|
34
|
+
self.marshal_class_method = :encode
|
|
35
|
+
self.unmarshal_class_method = :decode
|
|
36
|
+
self.service_name = 'google.spanner.v1.Spanner'
|
|
37
|
+
|
|
38
|
+
# Creates a new session. A session can be used to perform
|
|
39
|
+
# transactions that read and/or modify data in a Cloud Spanner database.
|
|
40
|
+
# Sessions are meant to be reused for many consecutive
|
|
41
|
+
# transactions.
|
|
42
|
+
#
|
|
43
|
+
# Sessions can only execute one transaction at a time. To execute
|
|
44
|
+
# multiple concurrent read-write/write-only transactions, create
|
|
45
|
+
# multiple sessions. Note that standalone reads and queries use a
|
|
46
|
+
# transaction internally, and count toward the one transaction
|
|
47
|
+
# limit.
|
|
48
|
+
#
|
|
49
|
+
# Cloud Spanner limits the number of sessions that can exist at any given
|
|
50
|
+
# time; thus, it is a good idea to delete idle and/or unneeded sessions.
|
|
51
|
+
# Aside from explicit deletes, Cloud Spanner can delete sessions for which no
|
|
52
|
+
# operations are sent for more than an hour. If a session is deleted,
|
|
53
|
+
# requests to it return `NOT_FOUND`.
|
|
54
|
+
#
|
|
55
|
+
# Idle sessions can be kept alive by sending a trivial SQL query
|
|
56
|
+
# periodically, e.g., `"SELECT 1"`.
|
|
57
|
+
rpc :CreateSession, CreateSessionRequest, Session
|
|
58
|
+
# Gets a session. Returns `NOT_FOUND` if the session does not exist.
|
|
59
|
+
# This is mainly useful for determining whether a session is still
|
|
60
|
+
# alive.
|
|
61
|
+
rpc :GetSession, GetSessionRequest, Session
|
|
62
|
+
# Ends a session, releasing server resources associated with it.
|
|
63
|
+
rpc :DeleteSession, DeleteSessionRequest, Google::Protobuf::Empty
|
|
64
|
+
# Executes an SQL query, returning all rows in a single reply. This
|
|
65
|
+
# method cannot be used to return a result set larger than 10 MiB;
|
|
66
|
+
# if the query yields more data than that, the query fails with
|
|
67
|
+
# a `FAILED_PRECONDITION` error.
|
|
68
|
+
#
|
|
69
|
+
# Queries inside read-write transactions might return `ABORTED`. If
|
|
70
|
+
# this occurs, the application should restart the transaction from
|
|
71
|
+
# the beginning. See [Transaction][google.spanner.v1.Transaction] for more details.
|
|
72
|
+
#
|
|
73
|
+
# Larger result sets can be fetched in streaming fashion by calling
|
|
74
|
+
# [ExecuteStreamingSql][google.spanner.v1.Spanner.ExecuteStreamingSql] instead.
|
|
75
|
+
rpc :ExecuteSql, ExecuteSqlRequest, ResultSet
|
|
76
|
+
# Like [ExecuteSql][google.spanner.v1.Spanner.ExecuteSql], except returns the result
|
|
77
|
+
# set as a stream. Unlike [ExecuteSql][google.spanner.v1.Spanner.ExecuteSql], there
|
|
78
|
+
# is no limit on the size of the returned result set. However, no
|
|
79
|
+
# individual row in the result set can exceed 100 MiB, and no
|
|
80
|
+
# column value can exceed 10 MiB.
|
|
81
|
+
rpc :ExecuteStreamingSql, ExecuteSqlRequest, stream(PartialResultSet)
|
|
82
|
+
# Reads rows from the database using key lookups and scans, as a
|
|
83
|
+
# simple key/value style alternative to
|
|
84
|
+
# [ExecuteSql][google.spanner.v1.Spanner.ExecuteSql]. This method cannot be used to
|
|
85
|
+
# return a result set larger than 10 MiB; if the read matches more
|
|
86
|
+
# data than that, the read fails with a `FAILED_PRECONDITION`
|
|
87
|
+
# error.
|
|
88
|
+
#
|
|
89
|
+
# Reads inside read-write transactions might return `ABORTED`. If
|
|
90
|
+
# this occurs, the application should restart the transaction from
|
|
91
|
+
# the beginning. See [Transaction][google.spanner.v1.Transaction] for more details.
|
|
92
|
+
#
|
|
93
|
+
# Larger result sets can be yielded in streaming fashion by calling
|
|
94
|
+
# [StreamingRead][google.spanner.v1.Spanner.StreamingRead] instead.
|
|
95
|
+
rpc :Read, ReadRequest, ResultSet
|
|
96
|
+
# Like [Read][google.spanner.v1.Spanner.Read], except returns the result set as a
|
|
97
|
+
# stream. Unlike [Read][google.spanner.v1.Spanner.Read], there is no limit on the
|
|
98
|
+
# size of the returned result set. However, no individual row in
|
|
99
|
+
# the result set can exceed 100 MiB, and no column value can exceed
|
|
100
|
+
# 10 MiB.
|
|
101
|
+
rpc :StreamingRead, ReadRequest, stream(PartialResultSet)
|
|
102
|
+
# Begins a new transaction. This step can often be skipped:
|
|
103
|
+
# [Read][google.spanner.v1.Spanner.Read], [ExecuteSql][google.spanner.v1.Spanner.ExecuteSql] and
|
|
104
|
+
# [Commit][google.spanner.v1.Spanner.Commit] can begin a new transaction as a
|
|
105
|
+
# side-effect.
|
|
106
|
+
rpc :BeginTransaction, BeginTransactionRequest, Transaction
|
|
107
|
+
# Commits a transaction. The request includes the mutations to be
|
|
108
|
+
# applied to rows in the database.
|
|
109
|
+
#
|
|
110
|
+
# `Commit` might return an `ABORTED` error. This can occur at any time;
|
|
111
|
+
# commonly, the cause is conflicts with concurrent
|
|
112
|
+
# transactions. However, it can also happen for a variety of other
|
|
113
|
+
# reasons. If `Commit` returns `ABORTED`, the caller should re-attempt
|
|
114
|
+
# the transaction from the beginning, re-using the same session.
|
|
115
|
+
rpc :Commit, CommitRequest, CommitResponse
|
|
116
|
+
# Rolls back a transaction, releasing any locks it holds. It is a good
|
|
117
|
+
# idea to call this for any transaction that includes one or more
|
|
118
|
+
# [Read][google.spanner.v1.Spanner.Read] or [ExecuteSql][google.spanner.v1.Spanner.ExecuteSql] requests and
|
|
119
|
+
# ultimately decides not to commit.
|
|
120
|
+
#
|
|
121
|
+
# `Rollback` returns `OK` if it successfully aborts the transaction, the
|
|
122
|
+
# transaction was already aborted, or the transaction is not
|
|
123
|
+
# found. `Rollback` never returns `ABORTED`.
|
|
124
|
+
rpc :Rollback, RollbackRequest, Google::Protobuf::Empty
|
|
125
|
+
end
|
|
126
|
+
|
|
127
|
+
Stub = Service.rpc_stub_class
|
|
128
|
+
end
|
|
129
|
+
end
|
|
130
|
+
end
|
|
131
|
+
end
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
2
|
+
# source: google/spanner/v1/transaction.proto
|
|
3
|
+
|
|
4
|
+
require 'google/protobuf'
|
|
5
|
+
|
|
6
|
+
require 'google/api/annotations_pb'
|
|
7
|
+
require 'google/protobuf/duration_pb'
|
|
8
|
+
require 'google/protobuf/timestamp_pb'
|
|
9
|
+
Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
10
|
+
add_message "google.spanner.v1.TransactionOptions" do
|
|
11
|
+
oneof :mode do
|
|
12
|
+
optional :read_write, :message, 1, "google.spanner.v1.TransactionOptions.ReadWrite"
|
|
13
|
+
optional :read_only, :message, 2, "google.spanner.v1.TransactionOptions.ReadOnly"
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
add_message "google.spanner.v1.TransactionOptions.ReadWrite" do
|
|
17
|
+
end
|
|
18
|
+
add_message "google.spanner.v1.TransactionOptions.ReadOnly" do
|
|
19
|
+
optional :return_read_timestamp, :bool, 6
|
|
20
|
+
oneof :timestamp_bound do
|
|
21
|
+
optional :strong, :bool, 1
|
|
22
|
+
optional :min_read_timestamp, :message, 2, "google.protobuf.Timestamp"
|
|
23
|
+
optional :max_staleness, :message, 3, "google.protobuf.Duration"
|
|
24
|
+
optional :read_timestamp, :message, 4, "google.protobuf.Timestamp"
|
|
25
|
+
optional :exact_staleness, :message, 5, "google.protobuf.Duration"
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
add_message "google.spanner.v1.Transaction" do
|
|
29
|
+
optional :id, :bytes, 1
|
|
30
|
+
optional :read_timestamp, :message, 2, "google.protobuf.Timestamp"
|
|
31
|
+
end
|
|
32
|
+
add_message "google.spanner.v1.TransactionSelector" do
|
|
33
|
+
oneof :selector do
|
|
34
|
+
optional :single_use, :message, 1, "google.spanner.v1.TransactionOptions"
|
|
35
|
+
optional :id, :bytes, 2
|
|
36
|
+
optional :begin, :message, 3, "google.spanner.v1.TransactionOptions"
|
|
37
|
+
end
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
module Google
|
|
42
|
+
module Spanner
|
|
43
|
+
module V1
|
|
44
|
+
TransactionOptions = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.TransactionOptions").msgclass
|
|
45
|
+
TransactionOptions::ReadWrite = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.TransactionOptions.ReadWrite").msgclass
|
|
46
|
+
TransactionOptions::ReadOnly = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.TransactionOptions.ReadOnly").msgclass
|
|
47
|
+
Transaction = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.Transaction").msgclass
|
|
48
|
+
TransactionSelector = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.TransactionSelector").msgclass
|
|
49
|
+
end
|
|
50
|
+
end
|
|
51
|
+
end
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
2
|
+
# source: google/spanner/v1/type.proto
|
|
3
|
+
|
|
4
|
+
require 'google/protobuf'
|
|
5
|
+
|
|
6
|
+
require 'google/api/annotations_pb'
|
|
7
|
+
Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
8
|
+
add_message "google.spanner.v1.Type" do
|
|
9
|
+
optional :code, :enum, 1, "google.spanner.v1.TypeCode"
|
|
10
|
+
optional :array_element_type, :message, 2, "google.spanner.v1.Type"
|
|
11
|
+
optional :struct_type, :message, 3, "google.spanner.v1.StructType"
|
|
12
|
+
end
|
|
13
|
+
add_message "google.spanner.v1.StructType" do
|
|
14
|
+
repeated :fields, :message, 1, "google.spanner.v1.StructType.Field"
|
|
15
|
+
end
|
|
16
|
+
add_message "google.spanner.v1.StructType.Field" do
|
|
17
|
+
optional :name, :string, 1
|
|
18
|
+
optional :type, :message, 2, "google.spanner.v1.Type"
|
|
19
|
+
end
|
|
20
|
+
add_enum "google.spanner.v1.TypeCode" do
|
|
21
|
+
value :TYPE_CODE_UNSPECIFIED, 0
|
|
22
|
+
value :BOOL, 1
|
|
23
|
+
value :INT64, 2
|
|
24
|
+
value :FLOAT64, 3
|
|
25
|
+
value :TIMESTAMP, 4
|
|
26
|
+
value :DATE, 5
|
|
27
|
+
value :STRING, 6
|
|
28
|
+
value :BYTES, 7
|
|
29
|
+
value :ARRAY, 8
|
|
30
|
+
value :STRUCT, 9
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
module Google
|
|
35
|
+
module Spanner
|
|
36
|
+
module V1
|
|
37
|
+
Type = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.Type").msgclass
|
|
38
|
+
StructType = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.StructType").msgclass
|
|
39
|
+
StructType::Field = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.StructType.Field").msgclass
|
|
40
|
+
TypeCode = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.v1.TypeCode").enummodule
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
end
|