Skip to content

Commit 33a4a88

Browse files
authored
Merge pull request #2 from DaPulse/feature/ran/add_timeout_for_zero_batch_size
Feature/ran/add timeout for zero batch size
2 parents 8450568 + eecc743 commit 33a4a88

File tree

4 files changed

+9
-3
lines changed

4 files changed

+9
-3
lines changed

dist/consumer.d.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ export interface ConsumerOptions {
1212
waitTimeSeconds?: number;
1313
authenticationErrorTimeout?: number;
1414
pollingWaitTimeMs?: number;
15+
pollingWaitTimeMsBatchSizeZero?: number;
1516
terminateVisibilityTimeout?: boolean;
1617
sqs?: SQS;
1718
region?: string;
@@ -39,6 +40,7 @@ export declare class Consumer extends EventEmitter {
3940
private waitTimeSeconds;
4041
private authenticationErrorTimeout;
4142
private pollingWaitTimeMs;
43+
private pollingWaitTimeMsBatchSizeZero;
4244
private terminateVisibilityTimeout;
4345
private sqs;
4446
constructor(options: ConsumerOptions);

dist/consumer.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,7 @@ class Consumer extends events_1.EventEmitter {
7979
this.waitTimeSeconds = options.waitTimeSeconds || 20;
8080
this.authenticationErrorTimeout = options.authenticationErrorTimeout || 10000;
8181
this.pollingWaitTimeMs = options.pollingWaitTimeMs || 0;
82+
this.pollingWaitTimeMsBatchSizeZero = options.pollingWaitTimeMsBatchSizeZero || 5;
8283
this.sqs =
8384
options.sqs ||
8485
new SQS({
@@ -292,7 +293,7 @@ class Consumer extends events_1.EventEmitter {
292293
});
293294
}
294295
else {
295-
setTimeout(this.poll, currentPollingTimeout);
296+
setTimeout(this.poll, this.pollingWaitTimeMsBatchSizeZero);
296297
}
297298
}
298299
async processMessageBatch(messages) {

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "sqs-consumer",
3-
"version": "5.7.6",
3+
"version": "5.7.7",
44
"description": "Build SQS-based Node applications without the boilerplate",
55
"main": "dist/index.js",
66
"types": "dist/index.d.ts",

src/consumer.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,7 @@ export interface ConsumerOptions {
8989
waitTimeSeconds?: number;
9090
authenticationErrorTimeout?: number;
9191
pollingWaitTimeMs?: number;
92+
pollingWaitTimeMsBatchSizeZero?: number;
9293
terminateVisibilityTimeout?: boolean;
9394
sqs?: SQS;
9495
region?: string;
@@ -117,6 +118,7 @@ export class Consumer extends EventEmitter {
117118
private waitTimeSeconds: number;
118119
private authenticationErrorTimeout: number;
119120
private pollingWaitTimeMs: number;
121+
private pollingWaitTimeMsBatchSizeZero: number;
120122
private terminateVisibilityTimeout: boolean;
121123
private sqs: SQS;
122124

@@ -140,6 +142,7 @@ export class Consumer extends EventEmitter {
140142
this.waitTimeSeconds = options.waitTimeSeconds || 20;
141143
this.authenticationErrorTimeout = options.authenticationErrorTimeout || 10000;
142144
this.pollingWaitTimeMs = options.pollingWaitTimeMs || 0;
145+
this.pollingWaitTimeMsBatchSizeZero = options.pollingWaitTimeMsBatchSizeZero || 5;
143146

144147
this.sqs =
145148
options.sqs ||
@@ -371,7 +374,7 @@ export class Consumer extends EventEmitter {
371374
this.emit('error', err);
372375
});
373376
} else {
374-
setTimeout(this.poll, currentPollingTimeout);
377+
setTimeout(this.poll, this.pollingWaitTimeMsBatchSizeZero);
375378
}
376379
}
377380

0 commit comments

Comments
 (0)