@google-cloud/pubsub 3.5.1 → 3.6.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.
- package/CHANGELOG.md +14 -0
- package/build/protos/google/pubsub/v1/pubsub.proto +80 -7
- package/build/protos/google/pubsub/v1/schema.proto +1 -1
- package/build/protos/protos.d.ts +347 -0
- package/build/protos/protos.js +874 -0
- package/build/protos/protos.json +75 -0
- package/build/src/publisher/index.js +2 -3
- package/build/src/publisher/index.js.map +1 -1
- package/build/src/publisher/message-queues.d.ts +8 -12
- package/build/src/publisher/message-queues.js +79 -61
- package/build/src/publisher/message-queues.js.map +1 -1
- package/build/src/v1/schema_service_client_config.json +23 -10
- package/build/src/v1/subscriber_client.d.ts +3 -0
- package/build/src/v1/subscriber_client.js.map +1 -1
- package/package.json +1 -1
package/build/protos/protos.json
CHANGED
|
@@ -804,6 +804,10 @@
|
|
|
804
804
|
"type": "BigQueryConfig",
|
|
805
805
|
"id": 18
|
|
806
806
|
},
|
|
807
|
+
"cloudStorageConfig": {
|
|
808
|
+
"type": "CloudStorageConfig",
|
|
809
|
+
"id": 22
|
|
810
|
+
},
|
|
807
811
|
"ackDeadlineSeconds": {
|
|
808
812
|
"type": "int32",
|
|
809
813
|
"id": 5
|
|
@@ -982,6 +986,77 @@
|
|
|
982
986
|
}
|
|
983
987
|
}
|
|
984
988
|
},
|
|
989
|
+
"CloudStorageConfig": {
|
|
990
|
+
"oneofs": {
|
|
991
|
+
"outputFormat": {
|
|
992
|
+
"oneof": [
|
|
993
|
+
"textConfig",
|
|
994
|
+
"avroConfig"
|
|
995
|
+
]
|
|
996
|
+
}
|
|
997
|
+
},
|
|
998
|
+
"fields": {
|
|
999
|
+
"bucket": {
|
|
1000
|
+
"type": "string",
|
|
1001
|
+
"id": 1,
|
|
1002
|
+
"options": {
|
|
1003
|
+
"(google.api.field_behavior)": "REQUIRED"
|
|
1004
|
+
}
|
|
1005
|
+
},
|
|
1006
|
+
"filenamePrefix": {
|
|
1007
|
+
"type": "string",
|
|
1008
|
+
"id": 2
|
|
1009
|
+
},
|
|
1010
|
+
"filenameSuffix": {
|
|
1011
|
+
"type": "string",
|
|
1012
|
+
"id": 3
|
|
1013
|
+
},
|
|
1014
|
+
"textConfig": {
|
|
1015
|
+
"type": "TextConfig",
|
|
1016
|
+
"id": 4
|
|
1017
|
+
},
|
|
1018
|
+
"avroConfig": {
|
|
1019
|
+
"type": "AvroConfig",
|
|
1020
|
+
"id": 5
|
|
1021
|
+
},
|
|
1022
|
+
"maxDuration": {
|
|
1023
|
+
"type": "google.protobuf.Duration",
|
|
1024
|
+
"id": 6
|
|
1025
|
+
},
|
|
1026
|
+
"maxBytes": {
|
|
1027
|
+
"type": "int64",
|
|
1028
|
+
"id": 7
|
|
1029
|
+
},
|
|
1030
|
+
"state": {
|
|
1031
|
+
"type": "State",
|
|
1032
|
+
"id": 9,
|
|
1033
|
+
"options": {
|
|
1034
|
+
"(google.api.field_behavior)": "OUTPUT_ONLY"
|
|
1035
|
+
}
|
|
1036
|
+
}
|
|
1037
|
+
},
|
|
1038
|
+
"nested": {
|
|
1039
|
+
"TextConfig": {
|
|
1040
|
+
"fields": {}
|
|
1041
|
+
},
|
|
1042
|
+
"AvroConfig": {
|
|
1043
|
+
"fields": {
|
|
1044
|
+
"writeMetadata": {
|
|
1045
|
+
"type": "bool",
|
|
1046
|
+
"id": 1
|
|
1047
|
+
}
|
|
1048
|
+
}
|
|
1049
|
+
},
|
|
1050
|
+
"State": {
|
|
1051
|
+
"values": {
|
|
1052
|
+
"STATE_UNSPECIFIED": 0,
|
|
1053
|
+
"ACTIVE": 1,
|
|
1054
|
+
"PERMISSION_DENIED": 2,
|
|
1055
|
+
"NOT_FOUND": 3
|
|
1056
|
+
}
|
|
1057
|
+
}
|
|
1058
|
+
}
|
|
1059
|
+
},
|
|
985
1060
|
"ReceivedMessage": {
|
|
986
1061
|
"fields": {
|
|
987
1062
|
"ackId": {
|
|
@@ -16,7 +16,6 @@
|
|
|
16
16
|
*/
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
18
|
exports.Publisher = exports.flowControlDefaults = exports.BATCH_LIMITS = void 0;
|
|
19
|
-
const promisify_1 = require("@google-cloud/promisify");
|
|
20
19
|
const extend = require("extend");
|
|
21
20
|
const semantic_conventions_1 = require("@opentelemetry/semantic-conventions");
|
|
22
21
|
const api_1 = require("@opentelemetry/api");
|
|
@@ -75,9 +74,9 @@ class Publisher {
|
|
|
75
74
|
// event listeners after we've completed flush().
|
|
76
75
|
q.removeListener('drain', flushResolver);
|
|
77
76
|
};
|
|
78
|
-
|
|
77
|
+
q.on('drain', flushResolver);
|
|
79
78
|
})));
|
|
80
|
-
const allPublishes = Promise.all(toDrain.map(q =>
|
|
79
|
+
const allPublishes = Promise.all(toDrain.map(q => q.publishDrain()));
|
|
81
80
|
allPublishes
|
|
82
81
|
.then(() => allDrains)
|
|
83
82
|
.then(() => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/publisher/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAEH,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/publisher/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,9 +20,6 @@ import { EventEmitter } from 'events';
|
|
|
20
20
|
import { BatchPublishOptions, MessageBatch } from './message-batch';
|
|
21
21
|
import { PublishError } from './publish-error';
|
|
22
22
|
import { Publisher, PubsubMessage, PublishCallback } from './';
|
|
23
|
-
export interface PublishDone {
|
|
24
|
-
(err: ServiceError | null): void;
|
|
25
|
-
}
|
|
26
23
|
/**
|
|
27
24
|
* Queues are used to manage publishing batches of messages.
|
|
28
25
|
*
|
|
@@ -60,22 +57,21 @@ export declare abstract class MessageQueue extends EventEmitter {
|
|
|
60
57
|
*
|
|
61
58
|
* @abstract
|
|
62
59
|
*/
|
|
63
|
-
abstract publish(): void
|
|
60
|
+
abstract publish(): Promise<void>;
|
|
64
61
|
/**
|
|
65
62
|
* Method to finalize publishing. Does as many publishes as are needed
|
|
66
63
|
* to finish emptying the queues, and fires a drain event afterward.
|
|
67
64
|
*
|
|
68
65
|
* @abstract
|
|
69
66
|
*/
|
|
70
|
-
abstract publishDrain(): void
|
|
67
|
+
abstract publishDrain(): Promise<void>;
|
|
71
68
|
/**
|
|
72
69
|
* Accepts a batch of messages and publishes them to the API.
|
|
73
70
|
*
|
|
74
71
|
* @param {object[]} messages The messages to publish.
|
|
75
72
|
* @param {PublishCallback[]} callbacks The corresponding callback functions.
|
|
76
|
-
* @param {function} [callback] Callback to be fired when publish is done.
|
|
77
73
|
*/
|
|
78
|
-
_publish(messages: PubsubMessage[], callbacks: PublishCallback[]
|
|
74
|
+
_publish(messages: PubsubMessage[], callbacks: PublishCallback[]): Promise<void>;
|
|
79
75
|
}
|
|
80
76
|
/**
|
|
81
77
|
* Standard message queue used for publishing messages.
|
|
@@ -103,19 +99,19 @@ export declare class Queue extends MessageQueue {
|
|
|
103
99
|
*
|
|
104
100
|
* @emits Queue#drain when all messages are sent.
|
|
105
101
|
*/
|
|
106
|
-
publishDrain(
|
|
102
|
+
publishDrain(): Promise<void>;
|
|
107
103
|
/**
|
|
108
104
|
* Cancels any pending publishes and calls _publish immediately.
|
|
109
105
|
*
|
|
110
106
|
* Does _not_ attempt to further drain after one batch is sent.
|
|
111
107
|
*/
|
|
112
|
-
publish(
|
|
108
|
+
publish(): Promise<void>;
|
|
113
109
|
/**
|
|
114
110
|
* Cancels any pending publishes and calls _publish immediately.
|
|
115
111
|
*
|
|
116
112
|
* @emits Queue#drain when all messages are sent.
|
|
117
113
|
*/
|
|
118
|
-
_publishInternal(fullyDrain: boolean
|
|
114
|
+
_publishInternal(fullyDrain: boolean): Promise<void>;
|
|
119
115
|
}
|
|
120
116
|
/**
|
|
121
117
|
* Queue for handling ordered messages. Unlike the standard queue, this
|
|
@@ -174,13 +170,13 @@ export declare class OrderedQueue extends MessageQueue {
|
|
|
174
170
|
*
|
|
175
171
|
* @fires OrderedQueue#drain
|
|
176
172
|
*/
|
|
177
|
-
publish(
|
|
173
|
+
publish(): Promise<void>;
|
|
178
174
|
/**
|
|
179
175
|
* For ordered queues, this does exactly the same thing as `publish()`.
|
|
180
176
|
*
|
|
181
177
|
* @fires OrderedQueue#drain
|
|
182
178
|
*/
|
|
183
|
-
publishDrain(
|
|
179
|
+
publishDrain(): Promise<void>;
|
|
184
180
|
/**
|
|
185
181
|
* Tells the queue it is ok to continue publishing messages.
|
|
186
182
|
*/
|
|
@@ -19,6 +19,7 @@ exports.OrderedQueue = exports.Queue = exports.MessageQueue = void 0;
|
|
|
19
19
|
const events_1 = require("events");
|
|
20
20
|
const message_batch_1 = require("./message-batch");
|
|
21
21
|
const publish_error_1 = require("./publish-error");
|
|
22
|
+
const util_1 = require("util");
|
|
22
23
|
/**
|
|
23
24
|
* Queues are used to manage publishing batches of messages.
|
|
24
25
|
*
|
|
@@ -49,32 +50,35 @@ class MessageQueue extends events_1.EventEmitter {
|
|
|
49
50
|
*
|
|
50
51
|
* @param {object[]} messages The messages to publish.
|
|
51
52
|
* @param {PublishCallback[]} callbacks The corresponding callback functions.
|
|
52
|
-
* @param {function} [callback] Callback to be fired when publish is done.
|
|
53
53
|
*/
|
|
54
|
-
_publish(messages, callbacks
|
|
54
|
+
async _publish(messages, callbacks) {
|
|
55
55
|
const { topic, settings } = this.publisher;
|
|
56
56
|
const reqOpts = {
|
|
57
57
|
topic: topic.name,
|
|
58
58
|
messages,
|
|
59
59
|
};
|
|
60
60
|
if (messages.length === 0) {
|
|
61
|
-
if (typeof callback === 'function') {
|
|
62
|
-
callback(null);
|
|
63
|
-
}
|
|
64
61
|
return;
|
|
65
62
|
}
|
|
66
|
-
topic.request
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
63
|
+
const requestCallback = (topic.request);
|
|
64
|
+
const request = (0, util_1.promisify)(requestCallback.bind(topic));
|
|
65
|
+
try {
|
|
66
|
+
const resp = await request({
|
|
67
|
+
client: 'PublisherClient',
|
|
68
|
+
method: 'publish',
|
|
69
|
+
reqOpts,
|
|
70
|
+
gaxOpts: settings.gaxOpts,
|
|
71
|
+
});
|
|
72
|
+
if (resp) {
|
|
73
|
+
const messageIds = resp.messageIds || [];
|
|
74
|
+
callbacks.forEach((callback, i) => callback(null, messageIds[i]));
|
|
76
75
|
}
|
|
77
|
-
}
|
|
76
|
+
}
|
|
77
|
+
catch (e) {
|
|
78
|
+
const err = e;
|
|
79
|
+
callbacks.forEach(callback => callback(err));
|
|
80
|
+
throw e;
|
|
81
|
+
}
|
|
78
82
|
}
|
|
79
83
|
}
|
|
80
84
|
exports.MessageQueue = MessageQueue;
|
|
@@ -104,15 +108,24 @@ class Queue extends MessageQueue {
|
|
|
104
108
|
*/
|
|
105
109
|
add(message, callback) {
|
|
106
110
|
if (!this.batch.canFit(message)) {
|
|
107
|
-
|
|
111
|
+
// Make a background best-effort attempt to clear out the
|
|
112
|
+
// queue. If this fails, we'll basically just be overloaded
|
|
113
|
+
// for a bit.
|
|
114
|
+
this.publish().catch(() => { });
|
|
108
115
|
}
|
|
109
116
|
this.batch.add(message, callback);
|
|
110
117
|
if (this.batch.isFull()) {
|
|
111
|
-
|
|
118
|
+
// See comment above - best effort.
|
|
119
|
+
this.publish().catch(() => { });
|
|
112
120
|
}
|
|
113
121
|
else if (!this.pending) {
|
|
114
122
|
const { maxMilliseconds } = this.batchOptions;
|
|
115
|
-
this.pending = setTimeout(() =>
|
|
123
|
+
this.pending = setTimeout(() => {
|
|
124
|
+
// See comment above - we are basically making a best effort
|
|
125
|
+
// to start clearing out the queue if nothing else happens
|
|
126
|
+
// before the batch timeout.
|
|
127
|
+
this.publish().catch(() => { });
|
|
128
|
+
}, maxMilliseconds);
|
|
116
129
|
}
|
|
117
130
|
}
|
|
118
131
|
/**
|
|
@@ -122,47 +135,41 @@ class Queue extends MessageQueue {
|
|
|
122
135
|
*
|
|
123
136
|
* @emits Queue#drain when all messages are sent.
|
|
124
137
|
*/
|
|
125
|
-
publishDrain(
|
|
126
|
-
this._publishInternal(true
|
|
138
|
+
async publishDrain() {
|
|
139
|
+
await this._publishInternal(true);
|
|
127
140
|
}
|
|
128
141
|
/**
|
|
129
142
|
* Cancels any pending publishes and calls _publish immediately.
|
|
130
143
|
*
|
|
131
144
|
* Does _not_ attempt to further drain after one batch is sent.
|
|
132
145
|
*/
|
|
133
|
-
publish(
|
|
134
|
-
this._publishInternal(false
|
|
146
|
+
async publish() {
|
|
147
|
+
await this._publishInternal(false);
|
|
135
148
|
}
|
|
136
149
|
/**
|
|
137
150
|
* Cancels any pending publishes and calls _publish immediately.
|
|
138
151
|
*
|
|
139
152
|
* @emits Queue#drain when all messages are sent.
|
|
140
153
|
*/
|
|
141
|
-
_publishInternal(fullyDrain
|
|
142
|
-
const definedCallback = callback || (() => { });
|
|
154
|
+
async _publishInternal(fullyDrain) {
|
|
143
155
|
const { messages, callbacks } = this.batch;
|
|
144
156
|
this.batch = new message_batch_1.MessageBatch(this.batchOptions);
|
|
145
157
|
if (this.pending) {
|
|
146
158
|
clearTimeout(this.pending);
|
|
147
159
|
delete this.pending;
|
|
148
160
|
}
|
|
149
|
-
this._publish(messages, callbacks
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
// subsequent batches alone so that they can time out as needed.
|
|
157
|
-
if (fullyDrain) {
|
|
158
|
-
this._publishInternal(true, callback);
|
|
159
|
-
}
|
|
161
|
+
await this._publish(messages, callbacks);
|
|
162
|
+
if (this.batch.messages.length) {
|
|
163
|
+
// We only do the indefinite go-arounds when we're trying to do a
|
|
164
|
+
// final drain for flush(). In all other cases, we want to leave
|
|
165
|
+
// subsequent batches alone so that they can time out as needed.
|
|
166
|
+
if (fullyDrain) {
|
|
167
|
+
await this._publishInternal(true);
|
|
160
168
|
}
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
});
|
|
169
|
+
}
|
|
170
|
+
else {
|
|
171
|
+
this.emit('drain');
|
|
172
|
+
}
|
|
166
173
|
}
|
|
167
174
|
}
|
|
168
175
|
exports.Queue = Queue;
|
|
@@ -220,14 +227,18 @@ class OrderedQueue extends MessageQueue {
|
|
|
220
227
|
return;
|
|
221
228
|
}
|
|
222
229
|
if (!this.currentBatch.canFit(message)) {
|
|
223
|
-
|
|
230
|
+
// Make a best-effort attempt to clear out the publish queue,
|
|
231
|
+
// to make more space for the new batch. If this fails, we'll
|
|
232
|
+
// just be overfilled for a bit.
|
|
233
|
+
this.publish().catch(() => { });
|
|
224
234
|
}
|
|
225
235
|
this.currentBatch.add(message, callback);
|
|
226
236
|
// it is possible that we triggered a publish earlier, so we'll need to
|
|
227
237
|
// check again here
|
|
228
238
|
if (!this.inFlight) {
|
|
229
239
|
if (this.currentBatch.isFull()) {
|
|
230
|
-
|
|
240
|
+
// See comment above - best-effort.
|
|
241
|
+
this.publish().catch(() => { });
|
|
231
242
|
}
|
|
232
243
|
else if (!this.pending) {
|
|
233
244
|
this.beginNextPublish();
|
|
@@ -241,7 +252,12 @@ class OrderedQueue extends MessageQueue {
|
|
|
241
252
|
const maxMilliseconds = this.batchOptions.maxMilliseconds;
|
|
242
253
|
const timeWaiting = Date.now() - this.currentBatch.created;
|
|
243
254
|
const delay = Math.max(0, maxMilliseconds - timeWaiting);
|
|
244
|
-
this.pending = setTimeout(() =>
|
|
255
|
+
this.pending = setTimeout(() => {
|
|
256
|
+
// Make a best-effort attempt to start a publish request. If
|
|
257
|
+
// this fails, we'll catch it again later, eventually, when more
|
|
258
|
+
// messages try to enter the queue.
|
|
259
|
+
this.publish().catch(() => { });
|
|
260
|
+
}, delay);
|
|
245
261
|
}
|
|
246
262
|
/**
|
|
247
263
|
* Creates a new {@link MessageBatch} instance.
|
|
@@ -275,36 +291,38 @@ class OrderedQueue extends MessageQueue {
|
|
|
275
291
|
*
|
|
276
292
|
* @fires OrderedQueue#drain
|
|
277
293
|
*/
|
|
278
|
-
publish(
|
|
279
|
-
const definedCallback = callback || (() => { });
|
|
294
|
+
async publish() {
|
|
280
295
|
this.inFlight = true;
|
|
281
296
|
if (this.pending) {
|
|
282
297
|
clearTimeout(this.pending);
|
|
283
298
|
delete this.pending;
|
|
284
299
|
}
|
|
285
300
|
const { messages, callbacks } = this.batches.pop();
|
|
286
|
-
|
|
301
|
+
try {
|
|
302
|
+
await this._publish(messages, callbacks);
|
|
303
|
+
}
|
|
304
|
+
catch (e) {
|
|
305
|
+
const err = e;
|
|
287
306
|
this.inFlight = false;
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
});
|
|
307
|
+
this.handlePublishFailure(err);
|
|
308
|
+
}
|
|
309
|
+
finally {
|
|
310
|
+
this.inFlight = false;
|
|
311
|
+
}
|
|
312
|
+
if (this.batches.length) {
|
|
313
|
+
this.beginNextPublish();
|
|
314
|
+
}
|
|
315
|
+
else {
|
|
316
|
+
this.emit('drain');
|
|
317
|
+
}
|
|
300
318
|
}
|
|
301
319
|
/**
|
|
302
320
|
* For ordered queues, this does exactly the same thing as `publish()`.
|
|
303
321
|
*
|
|
304
322
|
* @fires OrderedQueue#drain
|
|
305
323
|
*/
|
|
306
|
-
publishDrain(
|
|
307
|
-
this.publish(
|
|
324
|
+
async publishDrain() {
|
|
325
|
+
await this.publish();
|
|
308
326
|
}
|
|
309
327
|
/**
|
|
310
328
|
* Tells the queue it is ok to continue publishing messages.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message-queues.js","sourceRoot":"","sources":["../../../src/publisher/message-queues.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAGH,mCAAoC;AAEpC,mDAAkE;AAClE,mDAA6C;
|
|
1
|
+
{"version":3,"file":"message-queues.js","sourceRoot":"","sources":["../../../src/publisher/message-queues.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,9 @@
|
|
|
6
6
|
"idempotent": [
|
|
7
7
|
"DEADLINE_EXCEEDED",
|
|
8
8
|
"UNAVAILABLE"
|
|
9
|
+
],
|
|
10
|
+
"unavailable": [
|
|
11
|
+
"UNAVAILABLE"
|
|
9
12
|
]
|
|
10
13
|
},
|
|
11
14
|
"retry_params": {
|
|
@@ -21,43 +24,53 @@
|
|
|
21
24
|
},
|
|
22
25
|
"methods": {
|
|
23
26
|
"CreateSchema": {
|
|
24
|
-
"
|
|
27
|
+
"timeout_millis": 60000,
|
|
28
|
+
"retry_codes_name": "unavailable",
|
|
25
29
|
"retry_params_name": "default"
|
|
26
30
|
},
|
|
27
31
|
"GetSchema": {
|
|
28
|
-
"
|
|
32
|
+
"timeout_millis": 60000,
|
|
33
|
+
"retry_codes_name": "unavailable",
|
|
29
34
|
"retry_params_name": "default"
|
|
30
35
|
},
|
|
31
36
|
"ListSchemas": {
|
|
32
|
-
"
|
|
37
|
+
"timeout_millis": 60000,
|
|
38
|
+
"retry_codes_name": "unavailable",
|
|
33
39
|
"retry_params_name": "default"
|
|
34
40
|
},
|
|
35
41
|
"ListSchemaRevisions": {
|
|
36
|
-
"
|
|
42
|
+
"timeout_millis": 60000,
|
|
43
|
+
"retry_codes_name": "unavailable",
|
|
37
44
|
"retry_params_name": "default"
|
|
38
45
|
},
|
|
39
46
|
"CommitSchema": {
|
|
40
|
-
"
|
|
47
|
+
"timeout_millis": 60000,
|
|
48
|
+
"retry_codes_name": "unavailable",
|
|
41
49
|
"retry_params_name": "default"
|
|
42
50
|
},
|
|
43
51
|
"RollbackSchema": {
|
|
44
|
-
"
|
|
52
|
+
"timeout_millis": 60000,
|
|
53
|
+
"retry_codes_name": "unavailable",
|
|
45
54
|
"retry_params_name": "default"
|
|
46
55
|
},
|
|
47
56
|
"DeleteSchemaRevision": {
|
|
48
|
-
"
|
|
57
|
+
"timeout_millis": 60000,
|
|
58
|
+
"retry_codes_name": "unavailable",
|
|
49
59
|
"retry_params_name": "default"
|
|
50
60
|
},
|
|
51
61
|
"DeleteSchema": {
|
|
52
|
-
"
|
|
62
|
+
"timeout_millis": 60000,
|
|
63
|
+
"retry_codes_name": "unavailable",
|
|
53
64
|
"retry_params_name": "default"
|
|
54
65
|
},
|
|
55
66
|
"ValidateSchema": {
|
|
56
|
-
"
|
|
67
|
+
"timeout_millis": 60000,
|
|
68
|
+
"retry_codes_name": "unavailable",
|
|
57
69
|
"retry_params_name": "default"
|
|
58
70
|
},
|
|
59
71
|
"ValidateMessage": {
|
|
60
|
-
"
|
|
72
|
+
"timeout_millis": 60000,
|
|
73
|
+
"retry_codes_name": "unavailable",
|
|
61
74
|
"retry_params_name": "default"
|
|
62
75
|
}
|
|
63
76
|
}
|
|
@@ -142,6 +142,9 @@ export declare class SubscriberClient {
|
|
|
142
142
|
* @param {google.pubsub.v1.BigQueryConfig} request.bigqueryConfig
|
|
143
143
|
* If delivery to BigQuery is used with this subscription, this field is
|
|
144
144
|
* used to configure it.
|
|
145
|
+
* @param {google.pubsub.v1.CloudStorageConfig} request.cloudStorageConfig
|
|
146
|
+
* If delivery to Google Cloud Storage is used with this subscription, this
|
|
147
|
+
* field is used to configure it.
|
|
145
148
|
* @param {number} request.ackDeadlineSeconds
|
|
146
149
|
* The approximate amount of time (on a best-effort basis) Pub/Sub waits for
|
|
147
150
|
* the subscriber to acknowledge receipt before resending the message. In the
|