google-cloud-bigtable 1.0.1 → 1.2.2

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 (47) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +31 -0
  3. data/TROUBLESHOOTING.md +2 -8
  4. data/lib/google/bigtable/admin/v2/bigtable_instance_admin_pb.rb +3 -0
  5. data/lib/google/bigtable/admin/v2/bigtable_instance_admin_services_pb.rb +6 -3
  6. data/lib/google/bigtable/admin/v2/bigtable_table_admin_pb.rb +67 -0
  7. data/lib/google/bigtable/admin/v2/bigtable_table_admin_services_pb.rb +33 -6
  8. data/lib/google/bigtable/admin/v2/common_pb.rb +6 -1
  9. data/lib/google/bigtable/admin/v2/instance_pb.rb +2 -1
  10. data/lib/google/bigtable/admin/v2/table_pb.rb +39 -1
  11. data/lib/google/cloud/bigtable/admin.rb +4 -4
  12. data/lib/google/cloud/bigtable/admin/v2.rb +5 -4
  13. data/lib/google/cloud/bigtable/admin/v2/bigtable_instance_admin_client.rb +61 -51
  14. data/lib/google/cloud/bigtable/admin/v2/bigtable_instance_admin_client_config.json +1 -1
  15. data/lib/google/cloud/bigtable/admin/v2/bigtable_table_admin_client.rb +548 -59
  16. data/lib/google/cloud/bigtable/admin/v2/bigtable_table_admin_client_config.json +31 -1
  17. data/lib/google/cloud/bigtable/admin/v2/credentials.rb +1 -1
  18. data/lib/google/cloud/bigtable/admin/v2/doc/google/bigtable/admin/v2/bigtable_instance_admin.rb +47 -40
  19. data/lib/google/cloud/bigtable/admin/v2/doc/google/bigtable/admin/v2/bigtable_table_admin.rb +282 -54
  20. data/lib/google/cloud/bigtable/admin/v2/doc/google/bigtable/admin/v2/instance.rb +16 -18
  21. data/lib/google/cloud/bigtable/admin/v2/doc/google/bigtable/admin/v2/table.rb +120 -27
  22. data/lib/google/cloud/bigtable/admin/v2/doc/google/iam/v1/iam_policy.rb +1 -1
  23. data/lib/google/cloud/bigtable/admin/v2/doc/google/iam/v1/options.rb +1 -1
  24. data/lib/google/cloud/bigtable/admin/v2/doc/google/iam/v1/policy.rb +1 -1
  25. data/lib/google/cloud/bigtable/admin/v2/doc/google/longrunning/operations.rb +2 -2
  26. data/lib/google/cloud/bigtable/admin/v2/doc/google/protobuf/any.rb +1 -1
  27. data/lib/google/cloud/bigtable/admin/v2/doc/google/protobuf/duration.rb +1 -1
  28. data/lib/google/cloud/bigtable/admin/v2/doc/google/protobuf/empty.rb +1 -1
  29. data/lib/google/cloud/bigtable/admin/v2/doc/google/protobuf/field_mask.rb +1 -1
  30. data/lib/google/cloud/bigtable/admin/v2/doc/google/protobuf/timestamp.rb +1 -1
  31. data/lib/google/cloud/bigtable/admin/v2/doc/google/rpc/status.rb +7 -55
  32. data/lib/google/cloud/bigtable/admin/v2/doc/google/type/expr.rb +1 -1
  33. data/lib/google/cloud/bigtable/instance.rb +4 -7
  34. data/lib/google/cloud/bigtable/policy.rb +1 -1
  35. data/lib/google/cloud/bigtable/service.rb +52 -0
  36. data/lib/google/cloud/bigtable/table.rb +112 -0
  37. data/lib/google/cloud/bigtable/v2.rb +2 -2
  38. data/lib/google/cloud/bigtable/v2/bigtable_client.rb +4 -1
  39. data/lib/google/cloud/bigtable/v2/bigtable_client_config.json +7 -7
  40. data/lib/google/cloud/bigtable/v2/credentials.rb +1 -1
  41. data/lib/google/cloud/bigtable/v2/doc/google/bigtable/v2/bigtable.rb +1 -1
  42. data/lib/google/cloud/bigtable/v2/doc/google/bigtable/v2/data.rb +1 -1
  43. data/lib/google/cloud/bigtable/v2/doc/google/protobuf/any.rb +1 -1
  44. data/lib/google/cloud/bigtable/v2/doc/google/protobuf/wrappers.rb +1 -1
  45. data/lib/google/cloud/bigtable/v2/doc/google/rpc/status.rb +7 -55
  46. data/lib/google/cloud/bigtable/version.rb +1 -1
  47. metadata +4 -4
@@ -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,16 +19,15 @@ module Google
19
19
  module V2
20
20
  # A collection of Bigtable {Google::Bigtable::Admin::V2::Table Tables} and
21
21
  # the resources that serve them.
22
- # All tables in an instance are served from a single
23
- # {Google::Bigtable::Admin::V2::Cluster Cluster}.
22
+ # All tables in an instance are served from all
23
+ # {Google::Bigtable::Admin::V2::Cluster Clusters} in the instance.
24
24
  # @!attribute [rw] name
25
25
  # @return [String]
26
- # (`OutputOnly`)
27
26
  # The unique name of the instance. Values are of the form
28
- # `projects/<project>/instances/[a-z][a-z0-9\\-]+[a-z0-9]`.
27
+ # `projects/{project}/instances/[a-z][a-z0-9\\-]+[a-z0-9]`.
29
28
  # @!attribute [rw] display_name
30
29
  # @return [String]
31
- # The descriptive name for this instance as it appears in UIs.
30
+ # Required. The descriptive name for this instance as it appears in UIs.
32
31
  # Can be changed at any time, but should be kept globally unique
33
32
  # to avoid confusion.
34
33
  # @!attribute [rw] state
@@ -93,24 +92,22 @@ module Google
93
92
  # {Google::Bigtable::Admin::V2::Instance Instance}.
94
93
  # @!attribute [rw] name
95
94
  # @return [String]
96
- # (`OutputOnly`)
97
95
  # The unique name of the cluster. Values are of the form
98
- # `projects/<project>/instances/<instance>/clusters/[a-z][-a-z0-9]*`.
96
+ # `projects/{project}/instances/{instance}/clusters/[a-z][-a-z0-9]*`.
99
97
  # @!attribute [rw] location
100
98
  # @return [String]
101
99
  # (`CreationOnly`)
102
100
  # The location where this cluster's nodes and storage reside. For best
103
101
  # performance, clients should be located as close as possible to this
104
102
  # cluster. Currently only zones are supported, so values should be of the
105
- # form `projects/<project>/locations/<zone>`.
103
+ # form `projects/{project}/locations/{zone}`.
106
104
  # @!attribute [rw] state
107
105
  # @return [Google::Bigtable::Admin::V2::Cluster::State]
108
- # (`OutputOnly`)
109
106
  # The current state of the cluster.
110
107
  # @!attribute [rw] serve_nodes
111
108
  # @return [Integer]
112
- # The number of nodes allocated to this cluster. More nodes enable higher
113
- # throughput and more consistent performance.
109
+ # Required. The number of nodes allocated to this cluster. More nodes enable
110
+ # higher throughput and more consistent performance.
114
111
  # @!attribute [rw] default_storage_type
115
112
  # @return [Google::Bigtable::Admin::V2::StorageType]
116
113
  # (`CreationOnly`)
@@ -165,19 +162,20 @@ module Google
165
162
  # Optional long form description of the use case for this AppProfile.
166
163
  # @!attribute [rw] multi_cluster_routing_use_any
167
164
  # @return [Google::Bigtable::Admin::V2::AppProfile::MultiClusterRoutingUseAny]
168
- # Use a multi-cluster routing policy that may pick any cluster.
165
+ # Use a multi-cluster routing policy.
169
166
  # @!attribute [rw] single_cluster_routing
170
167
  # @return [Google::Bigtable::Admin::V2::AppProfile::SingleClusterRouting]
171
168
  # Use a single-cluster routing policy.
172
169
  class AppProfile
173
- # Read/write requests may be routed to any cluster in the instance, and will
174
- # fail over to another cluster in the event of transient errors or delays.
175
- # Choosing this option sacrifices read-your-writes consistency to improve
176
- # availability.
170
+ # Read/write requests are routed to the nearest cluster in the instance, and
171
+ # will fail over to the nearest cluster that is available in the event of
172
+ # transient errors or delays. Clusters in a region are considered
173
+ # equidistant. Choosing this option sacrifices read-your-writes consistency
174
+ # to improve availability.
177
175
  class MultiClusterRoutingUseAny; end
178
176
 
179
177
  # Unconditionally routes all read/write requests to a specific cluster.
180
- # This option preserves read-your-writes consistency, but does not improve
178
+ # This option preserves read-your-writes consistency but does not improve
181
179
  # availability.
182
180
  # @!attribute [rw] cluster_id
183
181
  # @return [String]
@@ -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,18 +17,26 @@ module Google
17
17
  module Bigtable
18
18
  module Admin
19
19
  module V2
20
+ # Information about a table restore.
21
+ # @!attribute [rw] source_type
22
+ # @return [Google::Bigtable::Admin::V2::RestoreSourceType]
23
+ # The type of the restore source.
24
+ # @!attribute [rw] backup_info
25
+ # @return [Google::Bigtable::Admin::V2::BackupInfo]
26
+ # Information about the backup used to restore the table. The backup
27
+ # may no longer exist.
28
+ class RestoreInfo; end
29
+
20
30
  # A collection of user data indexed by row, column, and timestamp.
21
31
  # Each table is served using the resources of its parent cluster.
22
32
  # @!attribute [rw] name
23
33
  # @return [String]
24
- # (`OutputOnly`)
25
- # The unique name of the table. Values are of the form
34
+ # Output only. The unique name of the table. Values are of the form
26
35
  # `projects/<project>/instances/<instance>/tables/[_a-zA-Z0-9][-_.a-zA-Z0-9]*`.
27
36
  # Views: `NAME_ONLY`, `SCHEMA_VIEW`, `REPLICATION_VIEW`, `FULL`
28
37
  # @!attribute [rw] cluster_states
29
38
  # @return [Hash{String => Google::Bigtable::Admin::V2::Table::ClusterState}]
30
- # (`OutputOnly`)
31
- # Map from cluster ID to per-cluster table state.
39
+ # Output only. Map from cluster ID to per-cluster table state.
32
40
  # If it could not be determined whether or not the table has data in a
33
41
  # particular cluster (for example, if its zone is unavailable), then
34
42
  # there will be an entry for the cluster with UNKNOWN `replication_status`.
@@ -44,13 +52,16 @@ module Google
44
52
  # The granularity (i.e. `MILLIS`) at which timestamps are stored in
45
53
  # this table. Timestamps not matching the granularity will be rejected.
46
54
  # If unspecified at creation time, the value will be set to `MILLIS`.
47
- # Views: `SCHEMA_VIEW`, `FULL`
55
+ # Views: `SCHEMA_VIEW`, `FULL`.
56
+ # @!attribute [rw] restore_info
57
+ # @return [Google::Bigtable::Admin::V2::RestoreInfo]
58
+ # Output only. If this table was restored from another data source (e.g. a
59
+ # backup), this field will be populated with information about the restore.
48
60
  class Table
49
61
  # The state of a table's data in a particular cluster.
50
62
  # @!attribute [rw] replication_state
51
63
  # @return [Google::Bigtable::Admin::V2::Table::ClusterState::ReplicationState]
52
- # (`OutputOnly`)
53
- # The state of replication for the table in this cluster.
64
+ # Output only. The state of replication for the table in this cluster.
54
65
  class ClusterState
55
66
  # Table replication states.
56
67
  module ReplicationState
@@ -74,6 +85,11 @@ module Google
74
85
  # replication delay, reads may not immediately reflect the state of the
75
86
  # table in other clusters.
76
87
  READY = 4
88
+
89
+ # The table is fully created and ready for use after a restore, and is
90
+ # being optimized for performance. When optimizations are complete, the
91
+ # table will transition to `READY` state.
92
+ READY_OPTIMIZING = 5
77
93
  end
78
94
  end
79
95
 
@@ -99,8 +115,8 @@ module Google
99
115
  # Only populates `name` and fields related to the table's schema.
100
116
  SCHEMA_VIEW = 2
101
117
 
102
- # Only populates `name` and fields related to the table's
103
- # replication state.
118
+ # Only populates `name` and fields related to the table's replication
119
+ # state.
104
120
  REPLICATION_VIEW = 3
105
121
 
106
122
  # Populates all fields.
@@ -157,38 +173,32 @@ module Google
157
173
  # for production use. It is not subject to any SLA or deprecation policy.
158
174
  # @!attribute [rw] name
159
175
  # @return [String]
160
- # (`OutputOnly`)
161
- # The unique name of the snapshot.
176
+ # Output only. The unique name of the snapshot.
162
177
  # Values are of the form
163
178
  # `projects/<project>/instances/<instance>/clusters/<cluster>/snapshots/<snapshot>`.
164
179
  # @!attribute [rw] source_table
165
180
  # @return [Google::Bigtable::Admin::V2::Table]
166
- # (`OutputOnly`)
167
- # The source table at the time the snapshot was taken.
181
+ # Output only. The source table at the time the snapshot was taken.
168
182
  # @!attribute [rw] data_size_bytes
169
183
  # @return [Integer]
170
- # (`OutputOnly`)
171
- # The size of the data in the source table at the time the snapshot was
172
- # taken. In some cases, this value may be computed asynchronously via a
173
- # background process and a placeholder of 0 will be used in the meantime.
184
+ # Output only. The size of the data in the source table at the time the
185
+ # snapshot was taken. In some cases, this value may be computed
186
+ # asynchronously via a background process and a placeholder of 0 will be used
187
+ # in the meantime.
174
188
  # @!attribute [rw] create_time
175
189
  # @return [Google::Protobuf::Timestamp]
176
- # (`OutputOnly`)
177
- # The time when the snapshot is created.
190
+ # Output only. The time when the snapshot is created.
178
191
  # @!attribute [rw] delete_time
179
192
  # @return [Google::Protobuf::Timestamp]
180
- # (`OutputOnly`)
181
- # The time when the snapshot will be deleted. The maximum amount of time a
182
- # snapshot can stay active is 365 days. If 'ttl' is not specified,
193
+ # Output only. The time when the snapshot will be deleted. The maximum amount
194
+ # of time a snapshot can stay active is 365 days. If 'ttl' is not specified,
183
195
  # the default maximum of 365 days will be used.
184
196
  # @!attribute [rw] state
185
197
  # @return [Google::Bigtable::Admin::V2::Snapshot::State]
186
- # (`OutputOnly`)
187
- # The current state of the snapshot.
198
+ # Output only. The current state of the snapshot.
188
199
  # @!attribute [rw] description
189
200
  # @return [String]
190
- # (`OutputOnly`)
191
- # Description of the snapshot.
201
+ # Output only. Description of the snapshot.
192
202
  class Snapshot
193
203
  # Possible states of a snapshot.
194
204
  module State
@@ -204,6 +214,89 @@ module Google
204
214
  CREATING = 2
205
215
  end
206
216
  end
217
+
218
+ # A backup of a Cloud Bigtable table.
219
+ # @!attribute [rw] name
220
+ # @return [String]
221
+ # Output only. A globally unique identifier for the backup which cannot be
222
+ # changed. Values are of the form
223
+ # `projects/{project}/instances/{instance}/clusters/{cluster}/
224
+ # backups/[_a-zA-Z0-9][-_.a-zA-Z0-9]*`
225
+ # The final segment of the name must be between 1 and 50 characters
226
+ # in length.
227
+ #
228
+ # The backup is stored in the cluster identified by the prefix of the backup
229
+ # name of the form
230
+ # `projects/{project}/instances/{instance}/clusters/{cluster}`.
231
+ # @!attribute [rw] source_table
232
+ # @return [String]
233
+ # Required. Immutable. Name of the table from which this backup was created.
234
+ # This needs to be in the same instance as the backup. Values are of the form
235
+ # `projects/{project}/instances/{instance}/tables/{source_table}`.
236
+ # @!attribute [rw] expire_time
237
+ # @return [Google::Protobuf::Timestamp]
238
+ # Required. The expiration time of the backup, with microseconds
239
+ # granularity that must be at least 6 hours and at most 30 days
240
+ # from the time the request is received. Once the `expire_time`
241
+ # has passed, Cloud Bigtable will delete the backup and free the
242
+ # resources used by the backup.
243
+ # @!attribute [rw] start_time
244
+ # @return [Google::Protobuf::Timestamp]
245
+ # Output only. `start_time` is the time that the backup was started
246
+ # (i.e. approximately the time the
247
+ # {Google::Bigtable::Admin::V2::BigtableTableAdmin::CreateBackup CreateBackup}
248
+ # request is received). The row data in this backup will be no older than
249
+ # this timestamp.
250
+ # @!attribute [rw] end_time
251
+ # @return [Google::Protobuf::Timestamp]
252
+ # Output only. `end_time` is the time that the backup was finished. The row
253
+ # data in the backup will be no newer than this timestamp.
254
+ # @!attribute [rw] size_bytes
255
+ # @return [Integer]
256
+ # Output only. Size of the backup in bytes.
257
+ # @!attribute [rw] state
258
+ # @return [Google::Bigtable::Admin::V2::Backup::State]
259
+ # Output only. The current state of the backup.
260
+ class Backup
261
+ # Indicates the current state of the backup.
262
+ module State
263
+ # Not specified.
264
+ STATE_UNSPECIFIED = 0
265
+
266
+ # The pending backup is still being created. Operations on the
267
+ # backup may fail with `FAILED_PRECONDITION` in this state.
268
+ CREATING = 1
269
+
270
+ # The backup is complete and ready for use.
271
+ READY = 2
272
+ end
273
+ end
274
+
275
+ # Information about a backup.
276
+ # @!attribute [rw] backup
277
+ # @return [String]
278
+ # Output only. Name of the backup.
279
+ # @!attribute [rw] start_time
280
+ # @return [Google::Protobuf::Timestamp]
281
+ # Output only. The time that the backup was started. Row data in the backup
282
+ # will be no older than this timestamp.
283
+ # @!attribute [rw] end_time
284
+ # @return [Google::Protobuf::Timestamp]
285
+ # Output only. This time that the backup was finished. Row data in the
286
+ # backup will be no newer than this timestamp.
287
+ # @!attribute [rw] source_table
288
+ # @return [String]
289
+ # Output only. Name of the table the backup was created from.
290
+ class BackupInfo; end
291
+
292
+ # Indicates the type of the restore source.
293
+ module RestoreSourceType
294
+ # No restore associated.
295
+ RESTORE_SOURCE_TYPE_UNSPECIFIED = 0
296
+
297
+ # A backup was used as the source of the restore.
298
+ BACKUP = 1
299
+ end
207
300
  end
208
301
  end
209
302
  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.
@@ -21,7 +21,7 @@ module Google
21
21
  # @return [String]
22
22
  # The server-assigned name, which is only unique within the same service that
23
23
  # originally returns it. If you use the default HTTP mapping, the
24
- # `name` should have the format of `operations/some/unique/name`.
24
+ # `name` should be a resource name ending with `operations/{unique_id}`.
25
25
  # @!attribute [rw] metadata
26
26
  # @return [Google::Protobuf::Any]
27
27
  # Service-specific metadata associated with the operation. It typically
@@ -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.
@@ -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
@@ -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.