bullmq 5.21.2 → 5.23.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.
Files changed (92) hide show
  1. package/README.md +21 -21
  2. package/dist/cjs/classes/flow-producer.js +1 -0
  3. package/dist/cjs/classes/flow-producer.js.map +1 -1
  4. package/dist/cjs/classes/job-scheduler.js +14 -0
  5. package/dist/cjs/classes/job-scheduler.js.map +1 -1
  6. package/dist/cjs/classes/job.js +61 -41
  7. package/dist/cjs/classes/job.js.map +1 -1
  8. package/dist/cjs/classes/queue-base.js +54 -0
  9. package/dist/cjs/classes/queue-base.js.map +1 -1
  10. package/dist/cjs/classes/queue-events.js.map +1 -1
  11. package/dist/cjs/classes/queue.js +172 -76
  12. package/dist/cjs/classes/queue.js.map +1 -1
  13. package/dist/cjs/classes/worker.js +232 -128
  14. package/dist/cjs/classes/worker.js.map +1 -1
  15. package/dist/cjs/commands/includes/moveParentFromWaitingChildrenToFailed.lua +2 -2
  16. package/dist/cjs/commands/includes/removeDeduplicationKeyIfNeeded.lua +14 -0
  17. package/dist/cjs/commands/moveStalledJobsToWait-9.lua +3 -3
  18. package/dist/cjs/commands/moveToFinished-14.lua +2 -2
  19. package/dist/cjs/commands/updateJobOption-1.lua +26 -0
  20. package/dist/cjs/enums/index.js +1 -0
  21. package/dist/cjs/enums/index.js.map +1 -1
  22. package/dist/cjs/enums/telemetry-attributes.js +45 -0
  23. package/dist/cjs/enums/telemetry-attributes.js.map +1 -0
  24. package/dist/cjs/interfaces/index.js +1 -0
  25. package/dist/cjs/interfaces/index.js.map +1 -1
  26. package/dist/cjs/interfaces/queue-options.js.map +1 -1
  27. package/dist/cjs/interfaces/telemetry.js +3 -0
  28. package/dist/cjs/interfaces/telemetry.js.map +1 -0
  29. package/dist/cjs/scripts/index.js +1 -0
  30. package/dist/cjs/scripts/index.js.map +1 -1
  31. package/dist/cjs/scripts/moveStalledJobsToWait-9.js +9 -9
  32. package/dist/cjs/scripts/moveToFinished-14.js +8 -8
  33. package/dist/cjs/scripts/updateJobOption-1.js +30 -0
  34. package/dist/cjs/scripts/updateJobOption-1.js.map +1 -0
  35. package/dist/cjs/tsconfig-cjs.tsbuildinfo +1 -1
  36. package/dist/cjs/version.js +1 -1
  37. package/dist/esm/classes/flow-producer.js +1 -0
  38. package/dist/esm/classes/flow-producer.js.map +1 -1
  39. package/dist/esm/classes/job-scheduler.d.ts +2 -1
  40. package/dist/esm/classes/job-scheduler.js +14 -0
  41. package/dist/esm/classes/job-scheduler.js.map +1 -1
  42. package/dist/esm/classes/job.d.ts +2 -0
  43. package/dist/esm/classes/job.js +61 -41
  44. package/dist/esm/classes/job.js.map +1 -1
  45. package/dist/esm/classes/queue-base.d.ts +19 -1
  46. package/dist/esm/classes/queue-base.js +54 -0
  47. package/dist/esm/classes/queue-base.js.map +1 -1
  48. package/dist/esm/classes/queue-events.js.map +1 -1
  49. package/dist/esm/classes/queue.d.ts +6 -0
  50. package/dist/esm/classes/queue.js +172 -76
  51. package/dist/esm/classes/queue.js.map +1 -1
  52. package/dist/esm/classes/worker.d.ts +2 -1
  53. package/dist/esm/classes/worker.js +232 -128
  54. package/dist/esm/classes/worker.js.map +1 -1
  55. package/dist/esm/commands/includes/moveParentFromWaitingChildrenToFailed.lua +2 -2
  56. package/dist/esm/commands/includes/removeDeduplicationKeyIfNeeded.lua +14 -0
  57. package/dist/esm/commands/moveStalledJobsToWait-9.lua +3 -3
  58. package/dist/esm/commands/moveToFinished-14.lua +2 -2
  59. package/dist/esm/commands/updateJobOption-1.lua +26 -0
  60. package/dist/esm/enums/index.d.ts +1 -0
  61. package/dist/esm/enums/index.js +1 -0
  62. package/dist/esm/enums/index.js.map +1 -1
  63. package/dist/esm/enums/telemetry-attributes.d.ts +39 -0
  64. package/dist/esm/enums/telemetry-attributes.js +42 -0
  65. package/dist/esm/enums/telemetry-attributes.js.map +1 -0
  66. package/dist/esm/interfaces/base-job-options.d.ts +4 -0
  67. package/dist/esm/interfaces/index.d.ts +1 -0
  68. package/dist/esm/interfaces/index.js +1 -0
  69. package/dist/esm/interfaces/index.js.map +1 -1
  70. package/dist/esm/interfaces/queue-options.d.ts +9 -0
  71. package/dist/esm/interfaces/queue-options.js.map +1 -1
  72. package/dist/esm/interfaces/repeatable-job.d.ts +1 -1
  73. package/dist/esm/interfaces/telemetry.d.ts +150 -0
  74. package/dist/esm/interfaces/telemetry.js +2 -0
  75. package/dist/esm/interfaces/telemetry.js.map +1 -0
  76. package/dist/esm/interfaces/worker-options.d.ts +13 -0
  77. package/dist/esm/scripts/index.d.ts +1 -0
  78. package/dist/esm/scripts/index.js +1 -0
  79. package/dist/esm/scripts/index.js.map +1 -1
  80. package/dist/esm/scripts/moveStalledJobsToWait-9.js +9 -9
  81. package/dist/esm/scripts/moveToFinished-14.js +8 -8
  82. package/dist/esm/scripts/updateJobOption-1.d.ts +5 -0
  83. package/dist/esm/scripts/updateJobOption-1.js +27 -0
  84. package/dist/esm/scripts/updateJobOption-1.js.map +1 -0
  85. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  86. package/dist/esm/types/job-options.d.ts +4 -0
  87. package/dist/esm/types/minimal-queue.d.ts +1 -1
  88. package/dist/esm/version.d.ts +1 -1
  89. package/dist/esm/version.js +1 -1
  90. package/package.json +2 -2
  91. package/dist/cjs/commands/includes/removeDebounceKeyIfNeeded.lua +0 -14
  92. package/dist/esm/commands/includes/removeDebounceKeyIfNeeded.lua +0 -14
@@ -2,6 +2,7 @@ import { v4 } from 'uuid';
2
2
  import { Job } from './job';
3
3
  import { QueueGetters } from './queue-getters';
4
4
  import { Repeat } from './repeat';
5
+ import { SpanKind, TelemetryAttributes } from '../enums';
5
6
  import { JobScheduler } from './job-scheduler';
6
7
  import { version } from '../version';
7
8
  /**
@@ -115,23 +116,31 @@ export class Queue extends QueueGetters {
115
116
  * @param opts - Job options that affects how the job is going to be processed.
116
117
  */
117
118
  async add(name, data, opts) {
118
- if (opts && opts.repeat) {
119
- if (opts.repeat.endDate) {
120
- if (+new Date(opts.repeat.endDate) < Date.now()) {
121
- throw new Error('End date must be greater than current timestamp');
119
+ return this.trace(SpanKind.PRODUCER, 'add', `${this.name}.${name}`, async (span, srcPropagationMedatada) => {
120
+ if (srcPropagationMedatada) {
121
+ opts = Object.assign(Object.assign({}, opts), { telemetryMetadata: srcPropagationMedatada });
122
+ }
123
+ if (opts && opts.repeat) {
124
+ if (opts.repeat.endDate) {
125
+ if (+new Date(opts.repeat.endDate) < Date.now()) {
126
+ throw new Error('End date must be greater than current timestamp');
127
+ }
122
128
  }
129
+ return (await this.repeat).updateRepeatableJob(name, data, Object.assign(Object.assign({}, this.jobsOpts), opts), { override: true });
123
130
  }
124
- return (await this.repeat).updateRepeatableJob(name, data, Object.assign(Object.assign({}, this.jobsOpts), opts), { override: true });
125
- }
126
- else {
127
- const jobId = opts === null || opts === void 0 ? void 0 : opts.jobId;
128
- if (jobId == '0' || (jobId === null || jobId === void 0 ? void 0 : jobId.startsWith('0:'))) {
129
- throw new Error("JobId cannot be '0' or start with 0:");
131
+ else {
132
+ const jobId = opts === null || opts === void 0 ? void 0 : opts.jobId;
133
+ if (jobId == '0' || (jobId === null || jobId === void 0 ? void 0 : jobId.startsWith('0:'))) {
134
+ throw new Error("JobId cannot be '0' or start with 0:");
135
+ }
136
+ const job = await this.Job.create(this, name, data, Object.assign(Object.assign(Object.assign({}, this.jobsOpts), opts), { jobId }));
137
+ this.emit('waiting', job);
138
+ span === null || span === void 0 ? void 0 : span.setAttributes({
139
+ [TelemetryAttributes.JobId]: job.id,
140
+ });
141
+ return job;
130
142
  }
131
- const job = await this.Job.create(this, name, data, Object.assign(Object.assign(Object.assign({}, this.jobsOpts), opts), { jobId }));
132
- this.emit('waiting', job);
133
- return job;
134
- }
143
+ });
135
144
  }
136
145
  /**
137
146
  * Adds an array of jobs to the queue. This method may be faster than adding
@@ -140,15 +149,23 @@ export class Queue extends QueueGetters {
140
149
  * @param jobs - The array of jobs to add to the queue. Each job is defined by 3
141
150
  * properties, 'name', 'data' and 'opts'. They follow the same signature as 'Queue.add'.
142
151
  */
143
- addBulk(jobs) {
144
- return this.Job.createBulk(this, jobs.map(job => {
145
- var _a;
146
- return ({
147
- name: job.name,
148
- data: job.data,
149
- opts: Object.assign(Object.assign(Object.assign({}, this.jobsOpts), job.opts), { jobId: (_a = job.opts) === null || _a === void 0 ? void 0 : _a.jobId }),
150
- });
151
- }));
152
+ async addBulk(jobs) {
153
+ return this.trace(SpanKind.PRODUCER, 'addBulk', this.name, async (span, srcPropagationMedatada) => {
154
+ if (span) {
155
+ span.setAttributes({
156
+ [TelemetryAttributes.BulkNames]: jobs.map(job => job.name),
157
+ [TelemetryAttributes.BulkCount]: jobs.length,
158
+ });
159
+ }
160
+ return await this.Job.createBulk(this, jobs.map(job => {
161
+ var _a;
162
+ return ({
163
+ name: job.name,
164
+ data: job.data,
165
+ opts: Object.assign(Object.assign(Object.assign({}, this.jobsOpts), job.opts), { jobId: (_a = job.opts) === null || _a === void 0 ? void 0 : _a.jobId, tm: span && srcPropagationMedatada }),
166
+ });
167
+ }));
168
+ });
152
169
  }
153
170
  /**
154
171
  * Upserts a scheduler.
@@ -185,20 +202,24 @@ export class Queue extends QueueGetters {
185
202
  * and in that case it will add it there instead of the wait list.
186
203
  */
187
204
  async pause() {
188
- await this.scripts.pause(true);
189
- this.emit('paused');
205
+ await this.trace(SpanKind.INTERNAL, 'pause', this.name, async () => {
206
+ await this.scripts.pause(true);
207
+ this.emit('paused');
208
+ });
190
209
  }
191
210
  /**
192
211
  * Close the queue instance.
193
212
  *
194
213
  */
195
214
  async close() {
196
- if (!this.closing) {
197
- if (this._repeat) {
198
- await this._repeat.close();
215
+ await this.trace(SpanKind.INTERNAL, 'close', this.name, async () => {
216
+ if (!this.closing) {
217
+ if (this._repeat) {
218
+ await this._repeat.close();
219
+ }
199
220
  }
200
- }
201
- return super.close();
221
+ await super.close();
222
+ });
202
223
  }
203
224
  /**
204
225
  * Resumes the processing of this queue globally.
@@ -207,8 +228,10 @@ export class Queue extends QueueGetters {
207
228
  * queue.
208
229
  */
209
230
  async resume() {
210
- await this.scripts.pause(false);
211
- this.emit('resumed');
231
+ await this.trace(SpanKind.INTERNAL, 'resume', this.name, async () => {
232
+ await this.scripts.pause(false);
233
+ this.emit('resumed');
234
+ });
212
235
  }
213
236
  /**
214
237
  * Returns true if the queue is currently paused.
@@ -238,6 +261,14 @@ export class Queue extends QueueGetters {
238
261
  async getRepeatableJobs(start, end, asc) {
239
262
  return (await this.repeat).getRepeatableJobs(start, end, asc);
240
263
  }
264
+ /**
265
+ * Get Job Scheduler by id
266
+ *
267
+ * @param id - identifier of scheduler.
268
+ */
269
+ async getJobScheduler(id) {
270
+ return (await this.jobScheduler).getJobScheduler(id);
271
+ }
241
272
  /**
242
273
  * Get all Job Schedulers
243
274
  *
@@ -265,9 +296,15 @@ export class Queue extends QueueGetters {
265
296
  * @returns
266
297
  */
267
298
  async removeRepeatable(name, repeatOpts, jobId) {
268
- const repeat = await this.repeat;
269
- const removed = await repeat.removeRepeatable(name, repeatOpts, jobId);
270
- return !removed;
299
+ return this.trace(SpanKind.INTERNAL, 'removeRepeatable', `${this.name}.${name}`, async (span) => {
300
+ span === null || span === void 0 ? void 0 : span.setAttributes({
301
+ [TelemetryAttributes.JobName]: name,
302
+ [TelemetryAttributes.JobId]: jobId,
303
+ });
304
+ const repeat = await this.repeat;
305
+ const removed = await repeat.removeRepeatable(name, repeatOpts, jobId);
306
+ return !removed;
307
+ });
271
308
  }
272
309
  /**
273
310
  *
@@ -289,8 +326,13 @@ export class Queue extends QueueGetters {
289
326
  * @param id - identifier
290
327
  */
291
328
  async removeDebounceKey(id) {
292
- const client = await this.client;
293
- return client.del(`${this.keys.de}:${id}`);
329
+ return this.trace(SpanKind.INTERNAL, 'removeDebounceKey', `${this.name}`, async (span) => {
330
+ span === null || span === void 0 ? void 0 : span.setAttributes({
331
+ [TelemetryAttributes.JobKey]: id,
332
+ });
333
+ const client = await this.client;
334
+ return await client.del(`${this.keys.de}:${id}`);
335
+ });
294
336
  }
295
337
  /**
296
338
  * Removes a deduplication key.
@@ -298,8 +340,13 @@ export class Queue extends QueueGetters {
298
340
  * @param id - identifier
299
341
  */
300
342
  async removeDeduplicationKey(id) {
301
- const client = await this.client;
302
- return client.del(`${this.keys.de}:${id}`);
343
+ return this.trace(SpanKind.INTERNAL, 'removeDeduplicationKey', `${this.name}`, async (span) => {
344
+ span === null || span === void 0 ? void 0 : span.setAttributes({
345
+ [TelemetryAttributes.DeduplicationKey]: id,
346
+ });
347
+ const client = await this.client;
348
+ return client.del(`${this.keys.de}:${id}`);
349
+ });
303
350
  }
304
351
  /**
305
352
  * Removes a repeatable job by its key. Note that the key is the one used
@@ -314,9 +361,14 @@ export class Queue extends QueueGetters {
314
361
  * @returns
315
362
  */
316
363
  async removeRepeatableByKey(key) {
317
- const repeat = await this.repeat;
318
- const removed = await repeat.removeRepeatableByKey(key);
319
- return !removed;
364
+ return this.trace(SpanKind.INTERNAL, 'removeRepeatableByKey', `${this.name}`, async (span) => {
365
+ span === null || span === void 0 ? void 0 : span.setAttributes({
366
+ [TelemetryAttributes.JobKey]: key,
367
+ });
368
+ const repeat = await this.repeat;
369
+ const removed = await repeat.removeRepeatableByKey(key);
370
+ return !removed;
371
+ });
320
372
  }
321
373
  /**
322
374
  * Removes the given job from the queue as well as all its
@@ -327,8 +379,16 @@ export class Queue extends QueueGetters {
327
379
  * @returns 1 if it managed to remove the job or 0 if the job or
328
380
  * any of its dependencies were locked.
329
381
  */
330
- remove(jobId, { removeChildren = true } = {}) {
331
- return this.scripts.remove(jobId, removeChildren);
382
+ async remove(jobId, { removeChildren = true } = {}) {
383
+ return this.trace(SpanKind.INTERNAL, 'remove', this.name, async (span) => {
384
+ span === null || span === void 0 ? void 0 : span.setAttributes({
385
+ [TelemetryAttributes.JobId]: jobId,
386
+ [TelemetryAttributes.JobOptions]: JSON.stringify({
387
+ removeChildren,
388
+ }),
389
+ });
390
+ return await this.scripts.remove(jobId, removeChildren);
391
+ });
332
392
  }
333
393
  /**
334
394
  * Updates the given job's progress.
@@ -337,7 +397,13 @@ export class Queue extends QueueGetters {
337
397
  * @param progress - Number or object to be saved as progress.
338
398
  */
339
399
  async updateJobProgress(jobId, progress) {
340
- return this.scripts.updateProgress(jobId, progress);
400
+ await this.trace(SpanKind.INTERNAL, 'updateJobProgress', this.name, async (span) => {
401
+ span === null || span === void 0 ? void 0 : span.setAttributes({
402
+ [TelemetryAttributes.JobId]: jobId,
403
+ [TelemetryAttributes.JobProgress]: JSON.stringify(progress),
404
+ });
405
+ await this.scripts.updateProgress(jobId, progress);
406
+ });
341
407
  }
342
408
  /**
343
409
  * Logs one row of job's log data.
@@ -358,8 +424,13 @@ export class Queue extends QueueGetters {
358
424
  * @param delayed - Pass true if it should also clean the
359
425
  * delayed jobs.
360
426
  */
361
- drain(delayed = false) {
362
- return this.scripts.drain(delayed);
427
+ async drain(delayed = false) {
428
+ await this.trace(SpanKind.INTERNAL, 'drain', this.name, async (span) => {
429
+ span === null || span === void 0 ? void 0 : span.setAttributes({
430
+ [TelemetryAttributes.QueueDrainDelay]: delayed,
431
+ });
432
+ await this.scripts.drain(delayed);
433
+ });
363
434
  }
364
435
  /**
365
436
  * Cleans jobs from a queue. Similar to drain but keeps jobs within a certain
@@ -372,21 +443,29 @@ export class Queue extends QueueGetters {
372
443
  * @returns Id jobs from the deleted records
373
444
  */
374
445
  async clean(grace, limit, type = 'completed') {
375
- const maxCount = limit || Infinity;
376
- const maxCountPerCall = Math.min(10000, maxCount);
377
- const timestamp = Date.now() - grace;
378
- let deletedCount = 0;
379
- const deletedJobsIds = [];
380
- while (deletedCount < maxCount) {
381
- const jobsIds = await this.scripts.cleanJobsInSet(type, timestamp, maxCountPerCall);
382
- this.emit('cleaned', jobsIds, type);
383
- deletedCount += jobsIds.length;
384
- deletedJobsIds.push(...jobsIds);
385
- if (jobsIds.length < maxCountPerCall) {
386
- break;
446
+ return this.trace(SpanKind.INTERNAL, 'clean', this.name, async (span) => {
447
+ const maxCount = limit || Infinity;
448
+ const maxCountPerCall = Math.min(10000, maxCount);
449
+ const timestamp = Date.now() - grace;
450
+ let deletedCount = 0;
451
+ const deletedJobsIds = [];
452
+ while (deletedCount < maxCount) {
453
+ const jobsIds = await this.scripts.cleanJobsInSet(type, timestamp, maxCountPerCall);
454
+ this.emit('cleaned', jobsIds, type);
455
+ deletedCount += jobsIds.length;
456
+ deletedJobsIds.push(...jobsIds);
457
+ if (jobsIds.length < maxCountPerCall) {
458
+ break;
459
+ }
387
460
  }
388
- }
389
- return deletedJobsIds;
461
+ span === null || span === void 0 ? void 0 : span.setAttributes({
462
+ [TelemetryAttributes.QueueGrace]: grace,
463
+ [TelemetryAttributes.JobType]: type,
464
+ [TelemetryAttributes.QueueCleanLimit]: maxCount,
465
+ [TelemetryAttributes.JobIds]: deletedJobsIds,
466
+ });
467
+ return deletedJobsIds;
468
+ });
390
469
  }
391
470
  /**
392
471
  * Completely destroys the queue and all of its contents irreversibly.
@@ -400,11 +479,13 @@ export class Queue extends QueueGetters {
400
479
  * @param opts - Obliterate options.
401
480
  */
402
481
  async obliterate(opts) {
403
- await this.pause();
404
- let cursor = 0;
405
- do {
406
- cursor = await this.scripts.obliterate(Object.assign({ force: false, count: 1000 }, opts));
407
- } while (cursor);
482
+ await this.trace(SpanKind.INTERNAL, 'obliterate', this.name, async () => {
483
+ await this.pause();
484
+ let cursor = 0;
485
+ do {
486
+ cursor = await this.scripts.obliterate(Object.assign({ force: false, count: 1000 }, opts));
487
+ } while (cursor);
488
+ });
408
489
  }
409
490
  /**
410
491
  * Retry all the failed or completed jobs.
@@ -417,10 +498,15 @@ export class Queue extends QueueGetters {
417
498
  * @returns
418
499
  */
419
500
  async retryJobs(opts = {}) {
420
- let cursor = 0;
421
- do {
422
- cursor = await this.scripts.retryJobs(opts.state, opts.count, opts.timestamp);
423
- } while (cursor);
501
+ await this.trace(SpanKind.PRODUCER, 'retryJobs', this.name, async (span) => {
502
+ span === null || span === void 0 ? void 0 : span.setAttributes({
503
+ [TelemetryAttributes.QueueOptions]: JSON.stringify(opts),
504
+ });
505
+ let cursor = 0;
506
+ do {
507
+ cursor = await this.scripts.retryJobs(opts.state, opts.count, opts.timestamp);
508
+ } while (cursor);
509
+ });
424
510
  }
425
511
  /**
426
512
  * Promote all the delayed jobs.
@@ -431,10 +517,15 @@ export class Queue extends QueueGetters {
431
517
  * @returns
432
518
  */
433
519
  async promoteJobs(opts = {}) {
434
- let cursor = 0;
435
- do {
436
- cursor = await this.scripts.promoteJobs(opts.count);
437
- } while (cursor);
520
+ await this.trace(SpanKind.INTERNAL, 'promoteJobs', this.name, async (span) => {
521
+ span === null || span === void 0 ? void 0 : span.setAttributes({
522
+ [TelemetryAttributes.QueueOptions]: JSON.stringify(opts),
523
+ });
524
+ let cursor = 0;
525
+ do {
526
+ cursor = await this.scripts.promoteJobs(opts.count);
527
+ } while (cursor);
528
+ });
438
529
  }
439
530
  /**
440
531
  * Trim the event stream to an approximately maxLength.
@@ -442,8 +533,13 @@ export class Queue extends QueueGetters {
442
533
  * @param maxLength -
443
534
  */
444
535
  async trimEvents(maxLength) {
445
- const client = await this.client;
446
- return client.xtrim(this.keys.events, 'MAXLEN', '~', maxLength);
536
+ return this.trace(SpanKind.INTERNAL, 'trimEvents', this.name, async (span) => {
537
+ span === null || span === void 0 ? void 0 : span.setAttributes({
538
+ [TelemetryAttributes.QueueEventMaxLength]: maxLength,
539
+ });
540
+ const client = await this.client;
541
+ return await client.xtrim(this.keys.events, 'MAXLEN', '~', maxLength);
542
+ });
447
543
  }
448
544
  /**
449
545
  * Delete old priority helper key.
@@ -1 +1 @@
1
- {"version":3,"file":"queue.js","sourceRoot":"","sources":["../../../src/classes/queue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"queue.js","sourceRoot":"","sources":["../../../src/classes/queue.ts"],"names":[],"mappings":"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"}
@@ -108,7 +108,7 @@ export declare class Worker<DataType = any, ResultType = any, NameType extends s
108
108
  private extendLocksTimer;
109
109
  private limitUntil;
110
110
  private resumeWorker;
111
- private stalledCheckTimer;
111
+ private stalledCheckStopper?;
112
112
  private waiting;
113
113
  private _repeat;
114
114
  private _jobScheduler;
@@ -212,6 +212,7 @@ export declare class Worker<DataType = any, ResultType = any, NameType extends s
212
212
  * @see {@link https://docs.bullmq.io/patterns/manually-fetching-jobs}
213
213
  */
214
214
  startStalledCheckTimer(): Promise<void>;
215
+ private stalledChecker;
215
216
  private startLockExtenderTimer;
216
217
  /**
217
218
  * Returns a promise that resolves when active jobs are cleared