bullmq 5.33.1 → 5.34.1
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/dist/cjs/classes/flow-producer.js +16 -2
- package/dist/cjs/classes/flow-producer.js.map +1 -1
- package/dist/cjs/classes/job-scheduler.js +42 -9
- package/dist/cjs/classes/job-scheduler.js.map +1 -1
- package/dist/cjs/classes/job.js +72 -4
- package/dist/cjs/classes/job.js.map +1 -1
- package/dist/cjs/classes/queue-base.js.map +1 -1
- package/dist/cjs/classes/queue.js +22 -6
- package/dist/cjs/classes/queue.js.map +1 -1
- package/dist/cjs/classes/worker.js +8 -5
- package/dist/cjs/classes/worker.js.map +1 -1
- package/dist/cjs/tsconfig-cjs.tsbuildinfo +1 -1
- package/dist/cjs/utils.js +6 -51
- package/dist/cjs/utils.js.map +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/esm/classes/flow-producer.js +16 -2
- package/dist/esm/classes/flow-producer.js.map +1 -1
- package/dist/esm/classes/job-scheduler.d.ts +2 -1
- package/dist/esm/classes/job-scheduler.js +43 -10
- package/dist/esm/classes/job-scheduler.js.map +1 -1
- package/dist/esm/classes/job.d.ts +9 -2
- package/dist/esm/classes/job.js +73 -5
- package/dist/esm/classes/job.js.map +1 -1
- package/dist/esm/classes/queue-base.js.map +1 -1
- package/dist/esm/classes/queue.js +22 -6
- package/dist/esm/classes/queue.js.map +1 -1
- package/dist/esm/classes/worker.js +8 -5
- package/dist/esm/classes/worker.js.map +1 -1
- package/dist/esm/interfaces/base-job-options.d.ts +0 -4
- package/dist/esm/interfaces/job-json.d.ts +2 -0
- package/dist/esm/interfaces/repeat-options.d.ts +6 -7
- package/dist/esm/tsconfig.tsbuildinfo +1 -1
- package/dist/esm/types/job-options.d.ts +29 -1
- package/dist/esm/utils.d.ts +6 -4
- package/dist/esm/utils.js +5 -48
- package/dist/esm/utils.js.map +1 -1
- package/dist/esm/version.d.ts +1 -1
- package/dist/esm/version.js +1 -1
- package/package.json +1 -1
package/dist/cjs/utils.js
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.trace = exports.removeUndefinedFields = exports.
|
3
|
+
exports.trace = exports.removeUndefinedFields = exports.QUEUE_EVENT_SUFFIX = exports.toString = exports.errorToJSON = exports.parseObjectValues = exports.isRedisVersionLowerThan = exports.childSend = exports.asyncSend = exports.isNotConnectionError = exports.DELAY_TIME_1 = exports.DELAY_TIME_5 = exports.clientCommandMessageReg = exports.getParentKey = exports.removeAllQueueData = exports.decreaseMaxListeners = exports.isRedisCluster = exports.isRedisInstance = exports.invertObject = exports.increaseMaxListeners = exports.delay = exports.objectToFlatArray = exports.array2obj = exports.isEmpty = exports.lengthInUtf8Bytes = exports.tryCatch = exports.errorObject = void 0;
|
4
4
|
const ioredis_1 = require("ioredis");
|
5
5
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
6
6
|
// @ts-ignore
|
@@ -74,12 +74,12 @@ function increaseMaxListeners(emitter, count) {
|
|
74
74
|
emitter.setMaxListeners(maxListeners + count);
|
75
75
|
}
|
76
76
|
exports.increaseMaxListeners = increaseMaxListeners;
|
77
|
-
|
78
|
-
return Object.entries(obj).reduce((
|
79
|
-
|
80
|
-
return
|
77
|
+
function invertObject(obj) {
|
78
|
+
return Object.entries(obj).reduce((result, [key, value]) => {
|
79
|
+
result[value] = key;
|
80
|
+
return result;
|
81
81
|
}, {});
|
82
|
-
}
|
82
|
+
}
|
83
83
|
exports.invertObject = invertObject;
|
84
84
|
function isRedisInstance(obj) {
|
85
85
|
if (!obj) {
|
@@ -220,51 +220,6 @@ const toString = (value) => {
|
|
220
220
|
};
|
221
221
|
exports.toString = toString;
|
222
222
|
exports.QUEUE_EVENT_SUFFIX = ':qe';
|
223
|
-
const optsDecodeMap = {
|
224
|
-
de: 'deduplication',
|
225
|
-
fpof: 'failParentOnFailure',
|
226
|
-
idof: 'ignoreDependencyOnFailure',
|
227
|
-
kl: 'keepLogs',
|
228
|
-
rdof: 'removeDependencyOnFailure',
|
229
|
-
tm: 'telemetryMetadata',
|
230
|
-
};
|
231
|
-
const optsEncodeMap = (0, exports.invertObject)(optsDecodeMap);
|
232
|
-
optsEncodeMap.debounce = 'de';
|
233
|
-
function optsAsJSON(opts = {}) {
|
234
|
-
const optionEntries = Object.entries(opts);
|
235
|
-
const options = {};
|
236
|
-
for (const item of optionEntries) {
|
237
|
-
const [attributeName, value] = item;
|
238
|
-
if (value !== undefined) {
|
239
|
-
if (optsEncodeMap[attributeName]) {
|
240
|
-
options[optsEncodeMap[attributeName]] =
|
241
|
-
value;
|
242
|
-
}
|
243
|
-
else {
|
244
|
-
options[attributeName] = value;
|
245
|
-
}
|
246
|
-
}
|
247
|
-
}
|
248
|
-
return options;
|
249
|
-
}
|
250
|
-
exports.optsAsJSON = optsAsJSON;
|
251
|
-
function optsFromJSON(rawOpts) {
|
252
|
-
const opts = JSON.parse(rawOpts || '{}');
|
253
|
-
const optionEntries = Object.entries(opts);
|
254
|
-
const options = {};
|
255
|
-
for (const item of optionEntries) {
|
256
|
-
const [attributeName, value] = item;
|
257
|
-
if (optsDecodeMap[attributeName]) {
|
258
|
-
options[optsDecodeMap[attributeName]] =
|
259
|
-
value;
|
260
|
-
}
|
261
|
-
else {
|
262
|
-
options[attributeName] = value;
|
263
|
-
}
|
264
|
-
}
|
265
|
-
return options;
|
266
|
-
}
|
267
|
-
exports.optsFromJSON = optsFromJSON;
|
268
223
|
function removeUndefinedFields(obj) {
|
269
224
|
const newObj = {};
|
270
225
|
for (const key in obj) {
|
package/dist/cjs/utils.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":";;;AAAA,qCAAyC;AAKzC,6DAA6D;AAC7D,aAAa;AACb,+CAAkE;AASlE,iCAAiC;AAEjC,mCAAwD;
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/version.js
CHANGED
@@ -166,12 +166,26 @@ export class FlowProducer extends EventEmitter {
|
|
166
166
|
const queueOpts = queuesOpts && queuesOpts[node.queueName];
|
167
167
|
const jobsOpts = (_a = queueOpts === null || queueOpts === void 0 ? void 0 : queueOpts.defaultJobOptions) !== null && _a !== void 0 ? _a : {};
|
168
168
|
const jobId = ((_b = node.opts) === null || _b === void 0 ? void 0 : _b.jobId) || v4();
|
169
|
-
return trace(this.telemetry, SpanKind.PRODUCER, node.name, 'addNode', node.queueName, async (span,
|
169
|
+
return trace(this.telemetry, SpanKind.PRODUCER, node.name, 'addNode', node.queueName, async (span, srcPropagationMedatada) => {
|
170
|
+
var _a, _b;
|
170
171
|
span === null || span === void 0 ? void 0 : span.setAttributes({
|
171
172
|
[TelemetryAttributes.JobName]: node.name,
|
172
173
|
[TelemetryAttributes.JobId]: jobId,
|
173
174
|
});
|
174
|
-
const
|
175
|
+
const opts = node.opts;
|
176
|
+
let telemetry = opts === null || opts === void 0 ? void 0 : opts.telemetry;
|
177
|
+
if (srcPropagationMedatada && opts) {
|
178
|
+
const omitContext = (_a = opts.telemetry) === null || _a === void 0 ? void 0 : _a.omitContext;
|
179
|
+
const telemetryMetadata = ((_b = opts.telemetry) === null || _b === void 0 ? void 0 : _b.metadata) ||
|
180
|
+
(!omitContext && srcPropagationMedatada);
|
181
|
+
if (telemetryMetadata || omitContext) {
|
182
|
+
telemetry = {
|
183
|
+
metadata: telemetryMetadata,
|
184
|
+
omitContext,
|
185
|
+
};
|
186
|
+
}
|
187
|
+
}
|
188
|
+
const job = new this.Job(queue, node.name, node.data, Object.assign(Object.assign(Object.assign({}, jobsOpts), opts), { parent: parent === null || parent === void 0 ? void 0 : parent.parentOpts, telemetry }), jobId);
|
175
189
|
const parentKey = getParentKey(parent === null || parent === void 0 ? void 0 : parent.parentOpts);
|
176
190
|
if (node.children && node.children.length > 0) {
|
177
191
|
// Create the parent job, it will be a job in status "waiting-children".
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"flow-producer.js","sourceRoot":"","sources":["../../../src/classes/flow-producer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,EAAE,EAAE,EAAE,MAAM,MAAM,CAAC;AAW1B,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAChE,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAW,SAAS,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAoEzD;;;;;;;GAOG;AACH,MAAM,OAAO,YAAa,SAAQ,YAAY;IAY5C,YACS,OAAyB,EAAE,UAAU,EAAE,EAAE,EAAE,EAClD,aAAqC,eAAe;QAEpD,KAAK,EAAE,CAAC;QAHD,SAAI,GAAJ,IAAI,CAAuC;QAKlD,IAAI,CAAC,IAAI,mBACP,MAAM,EAAE,MAAM,IACX,IAAI,CACR,CAAC;QAEF,IAAI,CAAC,UAAU,GAAG,IAAI,UAAU,CAC9B,IAAI,CAAC,UAAU,EACf,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,EAChC,KAAK,EACL,IAAI,CAAC,gBAAgB,CACtB,CAAC;QAEF,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAY,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;QACzE,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YAC/B,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;gBACjB,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;aAC5B;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,SAAS,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAE5C,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,SAAS,EAAE;YACnB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;SACjC;IACH,CAAC;IAED,IAAI,CACF,KAAQ,EACR,GAAG,IAAyC;QAE5C,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,CAAC;IACpC,CAAC;IAED,GAAG,CACD,SAAY,EACZ,QAAiC;QAEjC,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,EAAE,CACA,KAAQ,EACR,QAAiC;QAEjC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CACF,KAAQ,EACR,QAAiC;QAEjC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,IAAc,GAAG;QACf,OAAO,GAAG,CAAC;IACb,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,GAAG,CAAC,IAAa,EAAE,IAAe;;QACtC,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,OAAO;SACR;QACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QAC5C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;QAE7B,MAAM,UAAU,GAAG,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,0CAAE,MAAM,CAAC;QACtC,MAAM,SAAS,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;QAC3C,MAAM,qBAAqB,GAAG,SAAS;YACrC,CAAC,CAAC,GAAG,SAAS,eAAe;YAC7B,CAAC,CAAC,SAAS,CAAC;QAEd,OAAO,KAAK,CACV,IAAI,CAAC,SAAS,EACd,QAAQ,CAAC,QAAQ,EACjB,IAAI,CAAC,SAAS,EACd,SAAS,EACT,IAAI,CAAC,SAAS,EACd,KAAK,EAAC,IAAI,EAAC,EAAE;YACX,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,aAAa,CAAC;gBAClB,CAAC,mBAAmB,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,IAAI;aAC1C,CAAC,CAAC;YAEH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC;gBAClC,KAAK;gBACL,IAAI,EAAE,IAAI;gBACV,UAAU,EAAE,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,aAAa;gBAC/B,MAAM,EAAE;oBACN,UAAU;oBACV,qBAAqB;iBACtB;aACF,CAAC,CAAC;YAEH,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC;YAEnB,OAAO,QAAQ,CAAC;QAClB,CAAC,CACF,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,OAAO,CAAC,IAAc;QAC1B,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,OAAO;SACR;QACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QAE5C,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAC/B;YACE,KAAK,EAAE,EAAE;YACT,WAAW,EAAE,EAAE;SAChB,EACD,IAAI,CACL,CAAC;QACF,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAEnD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,KAAK,CAAC,OAAO,CAAC,KAAgB;QAC5B,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,OAAO;SACR;QACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QAC5C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;QAE7B,OAAO,KAAK,CACV,IAAI,CAAC,SAAS,EACd,QAAQ,CAAC,QAAQ,EACjB,EAAE,EACF,cAAc,EACd,EAAE,EACF,KAAK,EAAC,IAAI,EAAC,EAAE;YACX,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,aAAa,CAAC;gBAClB,CAAC,mBAAmB,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC,MAAM;gBAC7C,CAAC,mBAAmB,CAAC,SAAS,CAAC,EAAE,KAAK;qBACnC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;qBACtB,IAAI,CAAC,GAAG,CAAC;aACb,CAAC,CAAC;YAEH,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAEpD,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC;YAEnB,OAAO,SAAS,CAAC;QACnB,CAAC,CACF,CAAC;IACJ,CAAC;IAED;;;;;;;;;;OAUG;IACO,KAAK,CAAC,OAAO,CAAC,EACtB,KAAK,EACL,IAAI,EACJ,MAAM,EACN,UAAU,GACE;;QACZ,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;QAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;QACtE,MAAM,SAAS,GAAG,UAAU,IAAI,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAE3D,MAAM,QAAQ,GAAG,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,iBAAiB,mCAAI,EAAE,CAAC;QACpD,MAAM,KAAK,GAAG,CAAA,MAAA,IAAI,CAAC,IAAI,0CAAE,KAAK,KAAI,EAAE,EAAE,CAAC;QAEvC,OAAO,KAAK,CACV,IAAI,CAAC,SAAS,EACd,QAAQ,CAAC,QAAQ,EACjB,IAAI,CAAC,IAAI,EACT,SAAS,EACT,IAAI,CAAC,SAAS,EACd,KAAK,EAAE,IAAI,EAAE,sBAAsB,EAAE,EAAE
|
1
|
+
{"version":3,"file":"flow-producer.js","sourceRoot":"","sources":["../../../src/classes/flow-producer.ts"],"names":[],"mappings":"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"}
|
@@ -6,8 +6,9 @@ import { RedisConnection } from './redis-connection';
|
|
6
6
|
export declare class JobScheduler extends QueueBase {
|
7
7
|
private repeatStrategy;
|
8
8
|
constructor(name: string, opts: RepeatBaseOptions, Connection?: typeof RedisConnection);
|
9
|
-
upsertJobScheduler<T = any, R = any, N extends string = string>(jobSchedulerId: string, repeatOpts: Omit<RepeatOptions, 'key' | 'prevMillis'
|
9
|
+
upsertJobScheduler<T = any, R = any, N extends string = string>(jobSchedulerId: string, repeatOpts: Omit<RepeatOptions, 'key' | 'prevMillis'>, jobName: N, jobData: T, opts: JobSchedulerTemplateOptions, { override, producerId }: {
|
10
10
|
override: boolean;
|
11
|
+
producerId?: string;
|
11
12
|
}): Promise<Job<T, R, N> | undefined>;
|
12
13
|
private createNextJob;
|
13
14
|
removeJobScheduler(jobSchedulerId: string): Promise<number>;
|
@@ -1,16 +1,17 @@
|
|
1
1
|
import { __rest } from "tslib";
|
2
2
|
import { parseExpression } from 'cron-parser';
|
3
|
+
import { Job } from './job';
|
3
4
|
import { QueueBase } from './queue-base';
|
4
5
|
import { SpanKind, TelemetryAttributes } from '../enums';
|
5
|
-
import { array2obj
|
6
|
+
import { array2obj } from '../utils';
|
6
7
|
export class JobScheduler extends QueueBase {
|
7
8
|
constructor(name, opts, Connection) {
|
8
9
|
super(name, opts, Connection);
|
9
10
|
this.repeatStrategy =
|
10
11
|
(opts.settings && opts.settings.repeatStrategy) || defaultRepeatStrategy;
|
11
12
|
}
|
12
|
-
async upsertJobScheduler(jobSchedulerId, repeatOpts, jobName, jobData, opts, { override }) {
|
13
|
-
const { every, pattern } = repeatOpts;
|
13
|
+
async upsertJobScheduler(jobSchedulerId, repeatOpts, jobName, jobData, opts, { override, producerId }) {
|
14
|
+
const { every, pattern, offset } = repeatOpts;
|
14
15
|
if (pattern && every) {
|
15
16
|
throw new Error('Both .pattern and .every options are defined for this repeatable job');
|
16
17
|
}
|
@@ -20,6 +21,9 @@ export class JobScheduler extends QueueBase {
|
|
20
21
|
if (repeatOpts.immediately && repeatOpts.startDate) {
|
21
22
|
throw new Error('Both .immediately and .startDate options are defined for this repeatable job');
|
22
23
|
}
|
24
|
+
if (repeatOpts.immediately && repeatOpts.every) {
|
25
|
+
console.warn("Using option immediately with every does not affect the job's schedule. Job will run immediately anyway.");
|
26
|
+
}
|
23
27
|
// Check if we reached the limit of the repeatable job's iterations
|
24
28
|
const iterationCount = repeatOpts.count ? repeatOpts.count + 1 : 1;
|
25
29
|
if (typeof repeatOpts.limit !== 'undefined' &&
|
@@ -32,28 +36,38 @@ export class JobScheduler extends QueueBase {
|
|
32
36
|
if (!(typeof endDate === undefined) && now > new Date(endDate).getTime()) {
|
33
37
|
return;
|
34
38
|
}
|
35
|
-
const prevMillis = opts.prevMillis || 0;
|
36
39
|
// Check if we have a start date for the repeatable job
|
37
40
|
const { startDate, immediately } = repeatOpts, filteredRepeatOpts = __rest(repeatOpts, ["startDate", "immediately"]);
|
38
41
|
if (startDate) {
|
39
42
|
const startMillis = new Date(startDate).getTime();
|
40
43
|
now = startMillis > now ? startMillis : now;
|
41
44
|
}
|
45
|
+
const prevMillis = opts.prevMillis || 0;
|
46
|
+
now = prevMillis < now ? now : prevMillis;
|
42
47
|
let nextMillis;
|
48
|
+
let newOffset = offset;
|
43
49
|
if (every) {
|
44
|
-
|
50
|
+
const nextSlot = Math.floor(now / every) * every + every;
|
51
|
+
if (prevMillis || offset) {
|
52
|
+
nextMillis = nextSlot + (offset || 0);
|
53
|
+
}
|
54
|
+
else {
|
55
|
+
nextMillis = now;
|
56
|
+
newOffset = every - (nextSlot - now);
|
57
|
+
// newOffset should always be positive, but as an extra safety check
|
58
|
+
newOffset = newOffset < 0 ? 0 : newOffset;
|
59
|
+
}
|
45
60
|
if (nextMillis < now) {
|
46
61
|
nextMillis = now;
|
47
62
|
}
|
48
63
|
}
|
49
64
|
else if (pattern) {
|
50
|
-
now = prevMillis < now ? now : prevMillis;
|
51
65
|
nextMillis = await this.repeatStrategy(now, repeatOpts, jobName);
|
52
66
|
}
|
53
67
|
const multi = (await this.client).multi();
|
54
68
|
if (nextMillis) {
|
55
69
|
if (override) {
|
56
|
-
this.scripts.addJobScheduler(multi, jobSchedulerId, nextMillis, JSON.stringify(typeof jobData === 'undefined' ? {} : jobData), optsAsJSON(opts), {
|
70
|
+
this.scripts.addJobScheduler(multi, jobSchedulerId, nextMillis, JSON.stringify(typeof jobData === 'undefined' ? {} : jobData), Job.optsAsJSON(opts), {
|
57
71
|
name: jobName,
|
58
72
|
endDate: endDate ? new Date(endDate).getTime() : undefined,
|
59
73
|
tz: repeatOpts.tz,
|
@@ -65,7 +79,20 @@ export class JobScheduler extends QueueBase {
|
|
65
79
|
this.scripts.updateJobSchedulerNextMillis(multi, jobSchedulerId, nextMillis);
|
66
80
|
}
|
67
81
|
return this.trace(SpanKind.PRODUCER, 'add', `${this.name}.${jobName}`, async (span, srcPropagationMedatada) => {
|
68
|
-
|
82
|
+
var _a, _b;
|
83
|
+
let telemetry = opts.telemetry;
|
84
|
+
if (srcPropagationMedatada) {
|
85
|
+
const omitContext = (_a = opts.telemetry) === null || _a === void 0 ? void 0 : _a.omitContext;
|
86
|
+
const telemetryMetadata = ((_b = opts.telemetry) === null || _b === void 0 ? void 0 : _b.metadata) ||
|
87
|
+
(!omitContext && srcPropagationMedatada);
|
88
|
+
if (telemetryMetadata || omitContext) {
|
89
|
+
telemetry = {
|
90
|
+
metadata: telemetryMetadata,
|
91
|
+
omitContext,
|
92
|
+
};
|
93
|
+
}
|
94
|
+
}
|
95
|
+
const job = this.createNextJob(multi, jobName, nextMillis, jobSchedulerId, Object.assign(Object.assign({}, opts), { repeat: Object.assign(Object.assign({}, filteredRepeatOpts), { offset: newOffset }), telemetry }), jobData, iterationCount, producerId);
|
69
96
|
const results = await multi.exec(); // multi.exec returns an array of results [ err, result ][]
|
70
97
|
// Check if there are any errors
|
71
98
|
const erroredResult = results.find(result => result[0]);
|
@@ -83,7 +110,9 @@ export class JobScheduler extends QueueBase {
|
|
83
110
|
});
|
84
111
|
}
|
85
112
|
}
|
86
|
-
createNextJob(client, name, nextMillis, jobSchedulerId, opts, data, currentCount
|
113
|
+
createNextJob(client, name, nextMillis, jobSchedulerId, opts, data, currentCount,
|
114
|
+
// The job id of the job that produced this next iteration
|
115
|
+
producerId) {
|
87
116
|
//
|
88
117
|
// Generate unique job id for this iteration.
|
89
118
|
//
|
@@ -97,6 +126,10 @@ export class JobScheduler extends QueueBase {
|
|
97
126
|
mergedOpts.repeat = Object.assign(Object.assign({}, opts.repeat), { count: currentCount });
|
98
127
|
const job = new this.Job(this, name, data, mergedOpts, jobId);
|
99
128
|
job.addJob(client);
|
129
|
+
if (producerId) {
|
130
|
+
const producerJobKey = this.toKey(producerId);
|
131
|
+
client.hset(producerJobKey, 'nrjid', job.id);
|
132
|
+
}
|
100
133
|
return job;
|
101
134
|
}
|
102
135
|
async removeJobScheduler(jobSchedulerId) {
|
@@ -139,7 +172,7 @@ export class JobScheduler extends QueueBase {
|
|
139
172
|
template.data = JSON.parse(rawData);
|
140
173
|
}
|
141
174
|
if (rawOpts) {
|
142
|
-
template.opts = optsFromJSON(rawOpts);
|
175
|
+
template.opts = Job.optsFromJSON(rawOpts);
|
143
176
|
}
|
144
177
|
return template;
|
145
178
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"job-scheduler.js","sourceRoot":"","sources":["../../../src/classes/job-scheduler.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;
|
1
|
+
{"version":3,"file":"job-scheduler.js","sourceRoot":"","sources":["../../../src/classes/job-scheduler.ts"],"names":[],"mappings":"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"}
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import { BulkJobOptions, DependenciesOpts, JobJson, JobJsonRaw, MinimalJob, MoveToWaitingChildrenOpts, ParentKeys, ParentOpts, RedisClient } from '../interfaces';
|
2
|
-
import { FinishedStatus, JobsOptions, JobState, JobJsonSandbox, MinimalQueue } from '../types';
|
2
|
+
import { FinishedStatus, JobsOptions, JobState, JobJsonSandbox, MinimalQueue, RedisJobOptions } from '../types';
|
3
3
|
import { Scripts } from './scripts';
|
4
4
|
import type { QueueEvents } from './queue-events';
|
5
5
|
export declare const PRIORITY_LIMIT: number;
|
@@ -107,6 +107,11 @@ export declare class Job<DataType = any, ReturnType = any, NameType extends stri
|
|
107
107
|
* Base repeat job key.
|
108
108
|
*/
|
109
109
|
repeatJobKey?: string;
|
110
|
+
/**
|
111
|
+
* Produced next repetable job Id.
|
112
|
+
*
|
113
|
+
*/
|
114
|
+
nextRepeatableJobId?: string;
|
110
115
|
/**
|
111
116
|
* The token used for locking this job.
|
112
117
|
*/
|
@@ -163,6 +168,7 @@ export declare class Job<DataType = any, ReturnType = any, NameType extends stri
|
|
163
168
|
*/
|
164
169
|
static fromJSON<T = any, R = any, N extends string = string>(queue: MinimalQueue, json: JobJsonRaw, jobId?: string): Job<T, R, N>;
|
165
170
|
protected setScripts(): void;
|
171
|
+
static optsFromJSON(rawOpts?: string): JobsOptions;
|
166
172
|
/**
|
167
173
|
* Fetches a Job from the queue given the passed job id.
|
168
174
|
*
|
@@ -188,6 +194,7 @@ export declare class Job<DataType = any, ReturnType = any, NameType extends stri
|
|
188
194
|
* @returns
|
189
195
|
*/
|
190
196
|
asJSON(): JobJson;
|
197
|
+
static optsAsJSON(opts?: JobsOptions): RedisJobOptions;
|
191
198
|
/**
|
192
199
|
* Prepares a job to be passed to Sandbox.
|
193
200
|
* @returns
|
@@ -373,7 +380,7 @@ export declare class Job<DataType = any, ReturnType = any, NameType extends stri
|
|
373
380
|
/**
|
374
381
|
* Moves the job to the delay set.
|
375
382
|
*
|
376
|
-
* @param timestamp - timestamp
|
383
|
+
* @param timestamp - timestamp when the job should be moved back to "wait"
|
377
384
|
* @param token - token to check job is locked by current worker
|
378
385
|
* @returns
|
379
386
|
*/
|
package/dist/esm/classes/job.js
CHANGED
@@ -1,11 +1,21 @@
|
|
1
1
|
import { __rest } from "tslib";
|
2
2
|
import { debuglog } from 'util';
|
3
|
-
import { errorObject, isEmpty, getParentKey, lengthInUtf8Bytes, parseObjectValues, tryCatch, removeUndefinedFields,
|
3
|
+
import { errorObject, isEmpty, getParentKey, lengthInUtf8Bytes, parseObjectValues, tryCatch, removeUndefinedFields, invertObject, } from '../utils';
|
4
4
|
import { Backoffs } from './backoffs';
|
5
5
|
import { Scripts } from './scripts';
|
6
6
|
import { UnrecoverableError } from './errors/unrecoverable-error';
|
7
7
|
import { SpanKind } from '../enums';
|
8
8
|
const logger = debuglog('bull');
|
9
|
+
// Simple options decode map.
|
10
|
+
const optsDecodeMap = {
|
11
|
+
de: 'deduplication',
|
12
|
+
fpof: 'failParentOnFailure',
|
13
|
+
idof: 'ignoreDependencyOnFailure',
|
14
|
+
kl: 'keepLogs',
|
15
|
+
rdof: 'removeDependencyOnFailure',
|
16
|
+
};
|
17
|
+
const optsEncodeMap = Object.assign(Object.assign({}, invertObject(optsDecodeMap)), {
|
18
|
+
/*/ Legacy for backwards compatibility */ debounce: 'de' });
|
9
19
|
export const PRIORITY_LIMIT = 2 ** 21;
|
10
20
|
/**
|
11
21
|
* Job
|
@@ -153,7 +163,7 @@ export class Job {
|
|
153
163
|
*/
|
154
164
|
static fromJSON(queue, json, jobId) {
|
155
165
|
const data = JSON.parse(json.data || '{}');
|
156
|
-
const opts = optsFromJSON(json.opts);
|
166
|
+
const opts = Job.optsFromJSON(json.opts);
|
157
167
|
const job = new this(queue, json.name, data, opts, json.id || jobId);
|
158
168
|
job.progress = JSON.parse(json.progress || '0');
|
159
169
|
job.delay = parseInt(json.delay);
|
@@ -187,11 +197,38 @@ export class Job {
|
|
187
197
|
if (json.pb) {
|
188
198
|
job.processedBy = json.pb;
|
189
199
|
}
|
200
|
+
if (json.nrjid) {
|
201
|
+
job.nextRepeatableJobId = json.nrjid;
|
202
|
+
}
|
190
203
|
return job;
|
191
204
|
}
|
192
205
|
setScripts() {
|
193
206
|
this.scripts = new Scripts(this.queue);
|
194
207
|
}
|
208
|
+
static optsFromJSON(rawOpts) {
|
209
|
+
const opts = JSON.parse(rawOpts || '{}');
|
210
|
+
const optionEntries = Object.entries(opts);
|
211
|
+
const options = {};
|
212
|
+
for (const item of optionEntries) {
|
213
|
+
const [attributeName, value] = item;
|
214
|
+
if (optsDecodeMap[attributeName]) {
|
215
|
+
options[optsDecodeMap[attributeName]] =
|
216
|
+
value;
|
217
|
+
}
|
218
|
+
else {
|
219
|
+
if (attributeName === 'tm') {
|
220
|
+
options.telemetry = Object.assign(Object.assign({}, options.telemetry), { metadata: value });
|
221
|
+
}
|
222
|
+
else if (attributeName === 'omc') {
|
223
|
+
options.telemetry = Object.assign(Object.assign({}, options.telemetry), { omitContext: value });
|
224
|
+
}
|
225
|
+
else {
|
226
|
+
options[attributeName] = value;
|
227
|
+
}
|
228
|
+
}
|
229
|
+
}
|
230
|
+
return options;
|
231
|
+
}
|
195
232
|
/**
|
196
233
|
* Fetches a Job from the queue given the passed job id.
|
197
234
|
*
|
@@ -236,7 +273,7 @@ export class Job {
|
|
236
273
|
id: this.id,
|
237
274
|
name: this.name,
|
238
275
|
data: JSON.stringify(typeof this.data === 'undefined' ? {} : this.data),
|
239
|
-
opts: optsAsJSON(this.opts),
|
276
|
+
opts: Job.optsAsJSON(this.opts),
|
240
277
|
parent: this.parent ? Object.assign({}, this.parent) : undefined,
|
241
278
|
parentKey: this.parentKey,
|
242
279
|
progress: this.progress,
|
@@ -251,8 +288,34 @@ export class Job {
|
|
251
288
|
deduplicationId: this.deduplicationId,
|
252
289
|
repeatJobKey: this.repeatJobKey,
|
253
290
|
returnvalue: JSON.stringify(this.returnvalue),
|
291
|
+
nrjid: this.nextRepeatableJobId,
|
254
292
|
});
|
255
293
|
}
|
294
|
+
static optsAsJSON(opts = {}) {
|
295
|
+
const optionEntries = Object.entries(opts);
|
296
|
+
const options = {};
|
297
|
+
for (const [attributeName, value] of optionEntries) {
|
298
|
+
if (typeof value === 'undefined') {
|
299
|
+
continue;
|
300
|
+
}
|
301
|
+
if (attributeName in optsEncodeMap) {
|
302
|
+
const compressableAttribute = attributeName;
|
303
|
+
const key = optsEncodeMap[compressableAttribute];
|
304
|
+
options[key] = value;
|
305
|
+
}
|
306
|
+
else {
|
307
|
+
// Handle complex compressable fields separately
|
308
|
+
if (attributeName === 'telemetry') {
|
309
|
+
options.tm = value.metadata;
|
310
|
+
options.omc = value.omitContext;
|
311
|
+
}
|
312
|
+
else {
|
313
|
+
options[attributeName] = value;
|
314
|
+
}
|
315
|
+
}
|
316
|
+
}
|
317
|
+
return options;
|
318
|
+
}
|
256
319
|
/**
|
257
320
|
* Prepares a job to be passed to Sandbox.
|
258
321
|
* @returns
|
@@ -392,12 +455,17 @@ export class Job {
|
|
392
455
|
async moveToFailed(err, token, fetchNext = false) {
|
393
456
|
this.failedReason = err === null || err === void 0 ? void 0 : err.message;
|
394
457
|
return this.queue.trace(SpanKind.INTERNAL, this.getSpanOperation('moveToFailed'), this.queue.name, async (span, dstPropagationMedatadata) => {
|
458
|
+
var _a, _b;
|
459
|
+
let tm;
|
460
|
+
if (!((_b = (_a = this.opts) === null || _a === void 0 ? void 0 : _a.telemetry) === null || _b === void 0 ? void 0 : _b.omitContext) && dstPropagationMedatadata) {
|
461
|
+
tm = dstPropagationMedatadata;
|
462
|
+
}
|
395
463
|
let result;
|
396
464
|
this.updateStacktrace(err);
|
397
465
|
const fieldsToUpdate = {
|
398
466
|
failedReason: this.failedReason,
|
399
467
|
stacktrace: JSON.stringify(this.stacktrace),
|
400
|
-
tm
|
468
|
+
tm,
|
401
469
|
};
|
402
470
|
//
|
403
471
|
// Check if an automatic retry should be performed
|
@@ -683,7 +751,7 @@ export class Job {
|
|
683
751
|
/**
|
684
752
|
* Moves the job to the delay set.
|
685
753
|
*
|
686
|
-
* @param timestamp - timestamp
|
754
|
+
* @param timestamp - timestamp when the job should be moved back to "wait"
|
687
755
|
* @param token - token to check job is locked by current worker
|
688
756
|
* @returns
|
689
757
|
*/
|