google-cloud-bigtable 0.6.2 → 1.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (82) hide show
  1. checksums.yaml +4 -4
  2. data/AUTHENTICATION.md +4 -26
  3. data/CHANGELOG.md +85 -0
  4. data/CONTRIBUTING.md +1 -1
  5. data/OVERVIEW.md +388 -19
  6. data/lib/google-cloud-bigtable.rb +19 -22
  7. data/lib/google/bigtable/admin/v2/bigtable_table_admin_services_pb.rb +1 -1
  8. data/lib/google/bigtable/v2/bigtable_pb.rb +3 -0
  9. data/lib/google/bigtable/v2/bigtable_services_pb.rb +1 -1
  10. data/lib/google/cloud/bigtable.rb +11 -17
  11. data/lib/google/cloud/bigtable/admin.rb +2 -2
  12. data/lib/google/cloud/bigtable/admin/v2.rb +2 -2
  13. data/lib/google/cloud/bigtable/admin/v2/bigtable_instance_admin_client.rb +1 -1
  14. data/lib/google/cloud/bigtable/admin/v2/bigtable_table_admin_client.rb +2 -2
  15. data/lib/google/cloud/bigtable/admin/v2/credentials.rb +1 -1
  16. data/lib/google/cloud/bigtable/admin/v2/doc/google/bigtable/admin/v2/bigtable_instance_admin.rb +1 -1
  17. data/lib/google/cloud/bigtable/admin/v2/doc/google/bigtable/admin/v2/bigtable_table_admin.rb +1 -1
  18. data/lib/google/cloud/bigtable/admin/v2/doc/google/bigtable/admin/v2/instance.rb +1 -1
  19. data/lib/google/cloud/bigtable/admin/v2/doc/google/bigtable/admin/v2/table.rb +1 -1
  20. data/lib/google/cloud/bigtable/admin/v2/doc/google/iam/v1/iam_policy.rb +1 -1
  21. data/lib/google/cloud/bigtable/admin/v2/doc/google/iam/v1/options.rb +1 -1
  22. data/lib/google/cloud/bigtable/admin/v2/doc/google/iam/v1/policy.rb +7 -6
  23. data/lib/google/cloud/bigtable/admin/v2/doc/google/longrunning/operations.rb +2 -2
  24. data/lib/google/cloud/bigtable/admin/v2/doc/google/protobuf/any.rb +1 -1
  25. data/lib/google/cloud/bigtable/admin/v2/doc/google/protobuf/duration.rb +1 -1
  26. data/lib/google/cloud/bigtable/admin/v2/doc/google/protobuf/empty.rb +1 -1
  27. data/lib/google/cloud/bigtable/admin/v2/doc/google/protobuf/field_mask.rb +1 -1
  28. data/lib/google/cloud/bigtable/admin/v2/doc/google/protobuf/timestamp.rb +1 -1
  29. data/lib/google/cloud/bigtable/admin/v2/doc/google/rpc/status.rb +7 -55
  30. data/lib/google/cloud/bigtable/admin/v2/doc/google/type/expr.rb +1 -1
  31. data/lib/google/cloud/bigtable/app_profile.rb +162 -96
  32. data/lib/google/cloud/bigtable/app_profile/job.rb +5 -8
  33. data/lib/google/cloud/bigtable/app_profile/list.rb +18 -12
  34. data/lib/google/cloud/bigtable/chunk_processor.rb +24 -36
  35. data/lib/google/cloud/bigtable/cluster.rb +45 -18
  36. data/lib/google/cloud/bigtable/cluster/job.rb +3 -7
  37. data/lib/google/cloud/bigtable/cluster/list.rb +22 -20
  38. data/lib/google/cloud/bigtable/column_family.rb +18 -231
  39. data/lib/google/cloud/bigtable/column_family_map.rb +426 -0
  40. data/lib/google/cloud/bigtable/column_range.rb +15 -7
  41. data/lib/google/cloud/bigtable/convert.rb +12 -4
  42. data/lib/google/cloud/bigtable/errors.rb +4 -1
  43. data/lib/google/cloud/bigtable/gc_rule.rb +188 -69
  44. data/lib/google/cloud/bigtable/instance.rb +209 -189
  45. data/lib/google/cloud/bigtable/instance/cluster_map.rb +17 -13
  46. data/lib/google/cloud/bigtable/instance/job.rb +6 -5
  47. data/lib/google/cloud/bigtable/instance/list.rb +18 -13
  48. data/lib/google/cloud/bigtable/longrunning_job.rb +7 -1
  49. data/lib/google/cloud/bigtable/mutation_entry.rb +36 -39
  50. data/lib/google/cloud/bigtable/mutation_operations.rb +90 -73
  51. data/lib/google/cloud/bigtable/policy.rb +9 -5
  52. data/lib/google/cloud/bigtable/project.rb +87 -196
  53. data/lib/google/cloud/bigtable/read_modify_write_rule.rb +15 -10
  54. data/lib/google/cloud/bigtable/read_operations.rb +42 -59
  55. data/lib/google/cloud/bigtable/routing_policy.rb +172 -0
  56. data/lib/google/cloud/bigtable/row.rb +32 -21
  57. data/lib/google/cloud/bigtable/row_filter.rb +80 -35
  58. data/lib/google/cloud/bigtable/row_filter/chain_filter.rb +119 -68
  59. data/lib/google/cloud/bigtable/row_filter/condition_filter.rb +8 -2
  60. data/lib/google/cloud/bigtable/row_filter/interleave_filter.rb +117 -66
  61. data/lib/google/cloud/bigtable/row_filter/simple_filter.rb +24 -9
  62. data/lib/google/cloud/bigtable/row_range.rb +5 -0
  63. data/lib/google/cloud/bigtable/rows_mutator.rb +14 -21
  64. data/lib/google/cloud/bigtable/rows_reader.rb +23 -18
  65. data/lib/google/cloud/bigtable/sample_row_key.rb +6 -3
  66. data/lib/google/cloud/bigtable/service.rb +200 -253
  67. data/lib/google/cloud/bigtable/status.rb +76 -0
  68. data/lib/google/cloud/bigtable/table.rb +158 -262
  69. data/lib/google/cloud/bigtable/table/cluster_state.rb +17 -6
  70. data/lib/google/cloud/bigtable/table/list.rb +16 -9
  71. data/lib/google/cloud/bigtable/v2.rb +2 -2
  72. data/lib/google/cloud/bigtable/v2/bigtable_client.rb +13 -13
  73. data/lib/google/cloud/bigtable/v2/credentials.rb +1 -1
  74. data/lib/google/cloud/bigtable/v2/doc/google/bigtable/v2/bigtable.rb +17 -14
  75. data/lib/google/cloud/bigtable/v2/doc/google/bigtable/v2/data.rb +1 -1
  76. data/lib/google/cloud/bigtable/v2/doc/google/protobuf/any.rb +1 -1
  77. data/lib/google/cloud/bigtable/v2/doc/google/protobuf/wrappers.rb +1 -1
  78. data/lib/google/cloud/bigtable/v2/doc/google/rpc/status.rb +7 -55
  79. data/lib/google/cloud/bigtable/value_range.rb +19 -13
  80. data/lib/google/cloud/bigtable/version.rb +1 -1
  81. metadata +67 -25
  82. data/lib/google/cloud/bigtable/table/column_family_map.rb +0 -70
@@ -19,6 +19,7 @@ module Google
19
19
  module Cloud
20
20
  module Bigtable
21
21
  class Table
22
+ ##
22
23
  # Table::ClusterState is the state of a table's data in a particular cluster.
23
24
  class ClusterState
24
25
  attr_reader :cluster_name
@@ -31,47 +32,57 @@ module Google
31
32
  @cluster_name = cluster_name
32
33
  end
33
34
 
35
+ ##
34
36
  # The state of replication for the table in this cluster.
35
37
  # Valid values are:
36
38
  # * `:INITIALIZING` - The cluster was recently created.
37
39
  # * `:PLANNED_MAINTENANCE` - The table is temporarily unable to serve.
38
40
  # * `:UNPLANNED_MAINTENANCE` - The table is temporarily unable to serve.
39
41
  # * `:READY` - The table can serve.
40
- # @return [Symbol]
42
+ #
43
+ # @return [Symbol] The state of replication.
41
44
  #
42
45
  def replication_state
43
46
  @grpc.replication_state
44
47
  end
45
48
 
49
+ ##
46
50
  # The cluster was recently created, and the table must finish copying
47
51
  # over pre-existing data from other clusters before it can begin
48
52
  # receiving live replication updates and serving.
49
- # @return [Boolean]
53
+ #
54
+ # @return [Boolean] `true` if the cluster is initializing.
50
55
  #
51
56
  def initializing?
52
57
  replication_state == :INITIALIZING
53
58
  end
54
59
 
60
+ ##
55
61
  # The table is temporarily unable to serve
56
62
  # requests from this cluster due to planned internal maintenance.
57
- # @return [Boolean]
63
+ #
64
+ # @return [Boolean] `true` if the cluster is in planned maintenance.
58
65
  #
59
66
  def planned_maintenance?
60
67
  replication_state == :PLANNED_MAINTENANCE
61
68
  end
62
69
 
70
+ ##
63
71
  # The table is temporarily unable to serve requests from this
64
72
  # cluster due to unplanned or emergency maintenance.
65
- # @return [Boolean]
73
+ #
74
+ # @return [Boolean] `true` if the cluster is in unplanned maintenance.
66
75
  #
67
76
  def unplanned_maintenance?
68
77
  replication_state == :UNPLANNED_MAINTENANCE
69
78
  end
70
79
 
80
+ ##
71
81
  # The table can serve requests from this cluster.
72
82
  # Depending on replication delay, reads may not immediately
73
83
  # reflect the state of the table in other clusters.
74
- # @return [Boolean]
84
+ #
85
+ # @return [Boolean] `true` if the cluster is ready.
75
86
  #
76
87
  def ready?
77
88
  replication_state == :READY
@@ -84,7 +95,7 @@ module Google
84
95
  # @return [Google::Cloud::Bigtable::Table::ClusterState]
85
96
  #
86
97
  def self.from_grpc grpc, cluster_name
87
- new(grpc, cluster_name)
98
+ new grpc, cluster_name
88
99
  end
89
100
  end
90
101
  end
@@ -19,8 +19,10 @@ module Google
19
19
  module Cloud
20
20
  module Bigtable
21
21
  class Table
22
+ ##
22
23
  # Table::List is a special-case array with additional
23
24
  # values.
25
+ #
24
26
  class List < DelegateClass(::Array)
25
27
  # @private
26
28
  # The gRPC Service object.
@@ -33,9 +35,10 @@ module Google
33
35
  # @private
34
36
  # Creates a new Table::List with an array of table instances.
35
37
  def initialize arr = []
36
- super(arr)
38
+ super arr
37
39
  end
38
40
 
41
+ ##
39
42
  # Whether there is a next page of tables.
40
43
  #
41
44
  # @return [Boolean]
@@ -49,10 +52,12 @@ module Google
49
52
  # if tables.next?
50
53
  # next_tables = tables.next
51
54
  # end
55
+ #
52
56
  def next?
53
57
  grpc.next_page?
54
58
  end
55
59
 
60
+ ##
56
61
  # Retrieves the next page of tables.
57
62
  #
58
63
  # @return [Table::List] The list of table instances.
@@ -66,14 +71,16 @@ module Google
66
71
  # if tables.next?
67
72
  # next_tables = tables.next
68
73
  # end
74
+ #
69
75
  def next
70
76
  ensure_grpc!
71
77
 
72
78
  return nil unless next?
73
79
  grpc.next_page
74
- self.class.from_grpc(grpc, service)
80
+ self.class.from_grpc grpc, service
75
81
  end
76
82
 
83
+ ##
77
84
  # Retrieves remaining results by repeatedly invoking {#next} until
78
85
  # {#next?} returns `false`. Calls the given block once for each
79
86
  # result, which is passed as the argument to the block.
@@ -85,16 +92,16 @@ module Google
85
92
  # over the results returned by a single API call). Use with caution.
86
93
  #
87
94
  # @yield [table] The block for accessing each table instance.
88
- # @yieldparam [Table] instance The table instance object.
95
+ # @yieldparam [Table] table The table instance object.
89
96
  #
90
97
  # @return [Enumerator]
91
98
  #
92
- # @example Iterating each instance by passing a block:
99
+ # @example Iterating each table by passing a block:
93
100
  # require "google/cloud/bigtable"
94
101
  #
95
102
  # bigtable = Google::Cloud::Bigtable.new
96
103
  #
97
- # bigtable.tables("instance-id").all do |table|
104
+ # bigtable.tables("my-instance").all do |table|
98
105
  # puts table.table_id
99
106
  # end
100
107
  #
@@ -103,19 +110,19 @@ module Google
103
110
  #
104
111
  # bigtable = Google::Cloud::Bigtable.new
105
112
  #
106
- # all_table_ids = bigtable.tables("instance-id").all.map do |table|
113
+ # all_table_ids = bigtable.tables("my-instance").all.map do |table|
107
114
  # puts table.table_id
108
115
  # end
109
116
  #
110
117
  def all
111
- return enum_for(:all) unless block_given?
118
+ return enum_for :all unless block_given?
112
119
 
113
120
  results = self
114
121
  loop do
115
122
  results.each { |r| yield r }
116
123
  break unless next?
117
124
  grpc.next_page
118
- results = self.class.from_grpc(grpc, service)
125
+ results = self.class.from_grpc grpc, service
119
126
  end
120
127
  end
121
128
 
@@ -124,7 +131,7 @@ module Google
124
131
  #
125
132
  def self.from_grpc grpc, service
126
133
  tables = List.new(Array(grpc.response.tables).map do |table|
127
- Table.from_grpc(table, service, view: :NAME_ONLY)
134
+ Table.from_grpc table, service, view: :NAME_ONLY
128
135
  end)
129
136
  tables.grpc = grpc
130
137
  tables.service = service
@@ -1,4 +1,4 @@
1
- # Copyright 2019 Google LLC
1
+ # Copyright 2020 Google LLC
2
2
  #
3
3
  # Licensed under the Apache License, Version 2.0 (the "License");
4
4
  # you may not use this file except in compliance with the License.
@@ -21,7 +21,7 @@ module Google
21
21
  # rubocop:disable LineLength
22
22
 
23
23
  ##
24
- # # Ruby Client for Cloud Bigtable API ([Beta](https://github.com/googleapis/google-cloud-ruby#versioning))
24
+ # # Ruby Client for Cloud Bigtable API ([GA](https://github.com/googleapis/google-cloud-ruby#versioning))
25
25
  #
26
26
  # [Cloud Bigtable API][Product Documentation]:
27
27
  # API for reading and writing the contents of Bigtables associated with a
@@ -1,4 +1,4 @@
1
- # Copyright 2019 Google LLC
1
+ # Copyright 2020 Google LLC
2
2
  #
3
3
  # Licensed under the Apache License, Version 2.0 (the "License");
4
4
  # you may not use this file except in compliance with the License.
@@ -250,7 +250,7 @@ module Google
250
250
  # ReadRowsResponse documentation for details.
251
251
  #
252
252
  # @param table_name [String]
253
- # The unique name of the table from which to read.
253
+ # Required. The unique name of the table from which to read.
254
254
  # Values are of the form
255
255
  # `projects/<project>/instances/<instance>/tables/<table>`.
256
256
  # @param app_profile_id [String]
@@ -308,7 +308,7 @@ module Google
308
308
  # mapreduces.
309
309
  #
310
310
  # @param table_name [String]
311
- # The unique name of the table from which to sample row keys.
311
+ # Required. The unique name of the table from which to sample row keys.
312
312
  # Values are of the form
313
313
  # `projects/<project>/instances/<instance>/tables/<table>`.
314
314
  # @param app_profile_id [String]
@@ -346,13 +346,13 @@ module Google
346
346
  # unchanged unless explicitly changed by `mutation`.
347
347
  #
348
348
  # @param table_name [String]
349
- # The unique name of the table to which the mutation should be applied.
349
+ # Required. The unique name of the table to which the mutation should be applied.
350
350
  # Values are of the form
351
351
  # `projects/<project>/instances/<instance>/tables/<table>`.
352
352
  # @param row_key [String]
353
- # The key of the row to which the mutation should be applied.
353
+ # Required. The key of the row to which the mutation should be applied.
354
354
  # @param mutations [Array<Google::Bigtable::V2::Mutation | Hash>]
355
- # Changes to be atomically applied to the specified row. Entries are applied
355
+ # Required. Changes to be atomically applied to the specified row. Entries are applied
356
356
  # in order, meaning that earlier mutations can be masked by later ones.
357
357
  # Must contain at least one entry and at most 100000.
358
358
  # A hash of the same form as `Google::Bigtable::V2::Mutation`
@@ -403,9 +403,9 @@ module Google
403
403
  # atomically.
404
404
  #
405
405
  # @param table_name [String]
406
- # The unique name of the table to which the mutations should be applied.
406
+ # Required. The unique name of the table to which the mutations should be applied.
407
407
  # @param entries [Array<Google::Bigtable::V2::MutateRowsRequest::Entry | Hash>]
408
- # The row keys and corresponding mutations to be applied in bulk.
408
+ # Required. The row keys and corresponding mutations to be applied in bulk.
409
409
  # Each entry is applied as an atomic mutation, but the entries may be
410
410
  # applied in arbitrary order (even between entries for the same row).
411
411
  # At least one entry must be specified, and in total the entries can
@@ -451,12 +451,12 @@ module Google
451
451
  # Mutates a row atomically based on the output of a predicate Reader filter.
452
452
  #
453
453
  # @param table_name [String]
454
- # The unique name of the table to which the conditional mutation should be
454
+ # Required. The unique name of the table to which the conditional mutation should be
455
455
  # applied.
456
456
  # Values are of the form
457
457
  # `projects/<project>/instances/<instance>/tables/<table>`.
458
458
  # @param row_key [String]
459
- # The key of the row to which the conditional mutation should be applied.
459
+ # Required. The key of the row to which the conditional mutation should be applied.
460
460
  # @param app_profile_id [String]
461
461
  # This value specifies routing for replication. If not specified, the
462
462
  # "default" application profile will be used.
@@ -529,14 +529,14 @@ module Google
529
529
  # time. The method returns the new contents of all modified cells.
530
530
  #
531
531
  # @param table_name [String]
532
- # The unique name of the table to which the read/modify/write rules should be
532
+ # Required. The unique name of the table to which the read/modify/write rules should be
533
533
  # applied.
534
534
  # Values are of the form
535
535
  # `projects/<project>/instances/<instance>/tables/<table>`.
536
536
  # @param row_key [String]
537
- # The key of the row to which the read/modify/write rules should be applied.
537
+ # Required. The key of the row to which the read/modify/write rules should be applied.
538
538
  # @param rules [Array<Google::Bigtable::V2::ReadModifyWriteRule | Hash>]
539
- # Rules specifying how the specified row's contents are to be transformed
539
+ # Required. Rules specifying how the specified row's contents are to be transformed
540
540
  # into writes. Entries are applied in order, meaning that earlier rules will
541
541
  # affect the results of later ones.
542
542
  # A hash of the same form as `Google::Bigtable::V2::ReadModifyWriteRule`
@@ -1,4 +1,4 @@
1
- # Copyright 2019 Google LLC
1
+ # Copyright 2020 Google LLC
2
2
  #
3
3
  # Licensed under the Apache License, Version 2.0 (the "License");
4
4
  # you may not use this file except in compliance with the License.
@@ -1,4 +1,4 @@
1
- # Copyright 2019 Google LLC
1
+ # Copyright 2020 Google LLC
2
2
  #
3
3
  # Licensed under the Apache License, Version 2.0 (the "License");
4
4
  # you may not use this file except in compliance with the License.
@@ -19,7 +19,7 @@ module Google
19
19
  # Request message for Bigtable.ReadRows.
20
20
  # @!attribute [rw] table_name
21
21
  # @return [String]
22
- # The unique name of the table from which to read.
22
+ # Required. The unique name of the table from which to read.
23
23
  # Values are of the form
24
24
  # `projects/<project>/instances/<instance>/tables/<table>`.
25
25
  # @!attribute [rw] app_profile_id
@@ -42,6 +42,7 @@ module Google
42
42
  # Response message for Bigtable.ReadRows.
43
43
  # @!attribute [rw] chunks
44
44
  # @return [Array<Google::Bigtable::V2::ReadRowsResponse::CellChunk>]
45
+ # A collection of a row's contents as part of the read request.
45
46
  # @!attribute [rw] last_scanned_row_key
46
47
  # @return [String]
47
48
  # Optionally the server might return the row key of the last row it
@@ -117,7 +118,7 @@ module Google
117
118
  # Request message for Bigtable.SampleRowKeys.
118
119
  # @!attribute [rw] table_name
119
120
  # @return [String]
120
- # The unique name of the table from which to sample row keys.
121
+ # Required. The unique name of the table from which to sample row keys.
121
122
  # Values are of the form
122
123
  # `projects/<project>/instances/<instance>/tables/<table>`.
123
124
  # @!attribute [rw] app_profile_id
@@ -147,7 +148,7 @@ module Google
147
148
  # Request message for Bigtable.MutateRow.
148
149
  # @!attribute [rw] table_name
149
150
  # @return [String]
150
- # The unique name of the table to which the mutation should be applied.
151
+ # Required. The unique name of the table to which the mutation should be applied.
151
152
  # Values are of the form
152
153
  # `projects/<project>/instances/<instance>/tables/<table>`.
153
154
  # @!attribute [rw] app_profile_id
@@ -156,10 +157,10 @@ module Google
156
157
  # "default" application profile will be used.
157
158
  # @!attribute [rw] row_key
158
159
  # @return [String]
159
- # The key of the row to which the mutation should be applied.
160
+ # Required. The key of the row to which the mutation should be applied.
160
161
  # @!attribute [rw] mutations
161
162
  # @return [Array<Google::Bigtable::V2::Mutation>]
162
- # Changes to be atomically applied to the specified row. Entries are applied
163
+ # Required. Changes to be atomically applied to the specified row. Entries are applied
163
164
  # in order, meaning that earlier mutations can be masked by later ones.
164
165
  # Must contain at least one entry and at most 100000.
165
166
  class MutateRowRequest; end
@@ -170,25 +171,26 @@ module Google
170
171
  # Request message for BigtableService.MutateRows.
171
172
  # @!attribute [rw] table_name
172
173
  # @return [String]
173
- # The unique name of the table to which the mutations should be applied.
174
+ # Required. The unique name of the table to which the mutations should be applied.
174
175
  # @!attribute [rw] app_profile_id
175
176
  # @return [String]
176
177
  # This value specifies routing for replication. If not specified, the
177
178
  # "default" application profile will be used.
178
179
  # @!attribute [rw] entries
179
180
  # @return [Array<Google::Bigtable::V2::MutateRowsRequest::Entry>]
180
- # The row keys and corresponding mutations to be applied in bulk.
181
+ # Required. The row keys and corresponding mutations to be applied in bulk.
181
182
  # Each entry is applied as an atomic mutation, but the entries may be
182
183
  # applied in arbitrary order (even between entries for the same row).
183
184
  # At least one entry must be specified, and in total the entries can
184
185
  # contain at most 100000 mutations.
185
186
  class MutateRowsRequest
187
+ # A mutation for a given row.
186
188
  # @!attribute [rw] row_key
187
189
  # @return [String]
188
190
  # The key of the row to which the `mutations` should be applied.
189
191
  # @!attribute [rw] mutations
190
192
  # @return [Array<Google::Bigtable::V2::Mutation>]
191
- # Changes to be atomically applied to the specified row. Mutations are
193
+ # Required. Changes to be atomically applied to the specified row. Mutations are
192
194
  # applied in order, meaning that earlier mutations can be masked by
193
195
  # later ones.
194
196
  # You must specify at least one mutation.
@@ -200,6 +202,7 @@ module Google
200
202
  # @return [Array<Google::Bigtable::V2::MutateRowsResponse::Entry>]
201
203
  # One or more results for Entries from the batch request.
202
204
  class MutateRowsResponse
205
+ # The result of applying a passed mutation in the original request.
203
206
  # @!attribute [rw] index
204
207
  # @return [Integer]
205
208
  # The index into the original request's `entries` list of the Entry
@@ -216,7 +219,7 @@ module Google
216
219
  # Request message for Bigtable.CheckAndMutateRow.
217
220
  # @!attribute [rw] table_name
218
221
  # @return [String]
219
- # The unique name of the table to which the conditional mutation should be
222
+ # Required. The unique name of the table to which the conditional mutation should be
220
223
  # applied.
221
224
  # Values are of the form
222
225
  # `projects/<project>/instances/<instance>/tables/<table>`.
@@ -226,7 +229,7 @@ module Google
226
229
  # "default" application profile will be used.
227
230
  # @!attribute [rw] row_key
228
231
  # @return [String]
229
- # The key of the row to which the conditional mutation should be applied.
232
+ # Required. The key of the row to which the conditional mutation should be applied.
230
233
  # @!attribute [rw] predicate_filter
231
234
  # @return [Google::Bigtable::V2::RowFilter]
232
235
  # The filter to be applied to the contents of the specified row. Depending
@@ -259,7 +262,7 @@ module Google
259
262
  # Request message for Bigtable.ReadModifyWriteRow.
260
263
  # @!attribute [rw] table_name
261
264
  # @return [String]
262
- # The unique name of the table to which the read/modify/write rules should be
265
+ # Required. The unique name of the table to which the read/modify/write rules should be
263
266
  # applied.
264
267
  # Values are of the form
265
268
  # `projects/<project>/instances/<instance>/tables/<table>`.
@@ -269,10 +272,10 @@ module Google
269
272
  # "default" application profile will be used.
270
273
  # @!attribute [rw] row_key
271
274
  # @return [String]
272
- # The key of the row to which the read/modify/write rules should be applied.
275
+ # Required. The key of the row to which the read/modify/write rules should be applied.
273
276
  # @!attribute [rw] rules
274
277
  # @return [Array<Google::Bigtable::V2::ReadModifyWriteRule>]
275
- # Rules specifying how the specified row's contents are to be transformed
278
+ # Required. Rules specifying how the specified row's contents are to be transformed
276
279
  # into writes. Entries are applied in order, meaning that earlier rules will
277
280
  # affect the results of later ones.
278
281
  class ReadModifyWriteRowRequest; end
@@ -1,4 +1,4 @@
1
- # Copyright 2019 Google LLC
1
+ # Copyright 2020 Google LLC
2
2
  #
3
3
  # Licensed under the Apache License, Version 2.0 (the "License");
4
4
  # you may not use this file except in compliance with the License.
@@ -1,4 +1,4 @@
1
- # Copyright 2019 Google LLC
1
+ # Copyright 2020 Google LLC
2
2
  #
3
3
  # Licensed under the Apache License, Version 2.0 (the "License");
4
4
  # you may not use this file except in compliance with the License.
@@ -1,4 +1,4 @@
1
- # Copyright 2019 Google LLC
1
+ # Copyright 2020 Google LLC
2
2
  #
3
3
  # Licensed under the Apache License, Version 2.0 (the "License");
4
4
  # you may not use this file except in compliance with the License.
@@ -1,4 +1,4 @@
1
- # Copyright 2019 Google LLC
1
+ # Copyright 2020 Google LLC
2
2
  #
3
3
  # Licensed under the Apache License, Version 2.0 (the "License");
4
4
  # you may not use this file except in compliance with the License.
@@ -17,67 +17,19 @@ module Google
17
17
  module Rpc
18
18
  # The `Status` type defines a logical error model that is suitable for
19
19
  # different programming environments, including REST APIs and RPC APIs. It is
20
- # used by [gRPC](https://github.com/grpc). The error model is designed to be:
20
+ # used by [gRPC](https://github.com/grpc). Each `Status` message contains
21
+ # three pieces of data: error code, error message, and error details.
21
22
  #
22
- # * Simple to use and understand for most users
23
- # * Flexible enough to meet unexpected needs
24
- #
25
- # = Overview
26
- #
27
- # The `Status` message contains three pieces of data: error code, error
28
- # message, and error details. The error code should be an enum value of
29
- # {Google::Rpc::Code}, but it may accept additional error codes
30
- # if needed. The error message should be a developer-facing English message
31
- # that helps developers *understand* and *resolve* the error. If a localized
32
- # user-facing error message is needed, put the localized message in the error
33
- # details or localize it in the client. The optional error details may contain
34
- # arbitrary information about the error. There is a predefined set of error
35
- # detail types in the package `google.rpc` that can be used for common error
36
- # conditions.
37
- #
38
- # = Language mapping
39
- #
40
- # The `Status` message is the logical representation of the error model, but it
41
- # is not necessarily the actual wire format. When the `Status` message is
42
- # exposed in different client libraries and different wire protocols, it can be
43
- # mapped differently. For example, it will likely be mapped to some exceptions
44
- # in Java, but more likely mapped to some error codes in C.
45
- #
46
- # = Other uses
47
- #
48
- # The error model and the `Status` message can be used in a variety of
49
- # environments, either with or without APIs, to provide a
50
- # consistent developer experience across different environments.
51
- #
52
- # Example uses of this error model include:
53
- #
54
- # * Partial errors. If a service needs to return partial errors to the client,
55
- # it may embed the `Status` in the normal response to indicate the partial
56
- # errors.
57
- #
58
- # * Workflow errors. A typical workflow has multiple steps. Each step may
59
- # have a `Status` message for error reporting.
60
- #
61
- # * Batch operations. If a client uses batch request and batch response, the
62
- # `Status` message should be used directly inside batch response, one for
63
- # each error sub-response.
64
- #
65
- # * Asynchronous operations. If an API call embeds asynchronous operation
66
- # results in its response, the status of those operations should be
67
- # represented directly using the `Status` message.
68
- #
69
- # * Logging. If some API errors are stored in logs, the message `Status` could
70
- # be used directly after any stripping needed for security/privacy reasons.
23
+ # You can find out more about this error model and how to work with it in the
24
+ # [API Design Guide](https://cloud.google.com/apis/design/errors).
71
25
  # @!attribute [rw] code
72
26
  # @return [Integer]
73
- # The status code, which should be an enum value of
74
- # {Google::Rpc::Code}.
27
+ # The status code, which should be an enum value of {Google::Rpc::Code}.
75
28
  # @!attribute [rw] message
76
29
  # @return [String]
77
30
  # A developer-facing error message, which should be in English. Any
78
31
  # user-facing error message should be localized and sent in the
79
- # {Google::Rpc::Status#details} field, or localized
80
- # by the client.
32
+ # {Google::Rpc::Status#details} field, or localized by the client.
81
33
  # @!attribute [rw] details
82
34
  # @return [Array<Google::Protobuf::Any>]
83
35
  # A list of messages that carry the error details. There is a common set of