@vendure/job-queue-plugin 2.1.0-next.4 → 2.1.0-next.6
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/package/bullmq/bullmq-job-queue-strategy.d.ts +2 -0
- package/package/bullmq/bullmq-job-queue-strategy.js +53 -24
- package/package/bullmq/bullmq-job-queue-strategy.js.map +1 -1
- package/package/bullmq/plugin.d.ts +33 -1
- package/package/bullmq/plugin.js +33 -1
- package/package/bullmq/plugin.js.map +1 -1
- package/package/bullmq/scripts/get-jobs-by-type.d.ts +10 -0
- package/package/bullmq/scripts/get-jobs-by-type.js +114 -0
- package/package/bullmq/scripts/get-jobs-by-type.js.map +1 -0
- package/package/bullmq/types.d.ts +11 -2
- package/package.json +4 -4
|
@@ -28,4 +28,6 @@ export declare class BullMQJobQueueStrategy implements InspectableJobQueueStrate
|
|
|
28
28
|
stop<Data extends JobData<Data> = object>(queueName: string, process: (job: Job<Data>) => Promise<any>): Promise<void>;
|
|
29
29
|
private createVendureJob;
|
|
30
30
|
private getState;
|
|
31
|
+
private callCustomScript;
|
|
32
|
+
private defineCustomLuaScripts;
|
|
31
33
|
}
|
|
@@ -9,6 +9,7 @@ const events_1 = require("events");
|
|
|
9
9
|
const ioredis_1 = require("ioredis");
|
|
10
10
|
const constants_1 = require("./constants");
|
|
11
11
|
const redis_health_indicator_1 = require("./redis-health-indicator");
|
|
12
|
+
const get_jobs_by_type_1 = require("./scripts/get-jobs-by-type");
|
|
12
13
|
const QUEUE_NAME = 'vendure-job-queue';
|
|
13
14
|
const DEFAULT_CONCURRENCY = 3;
|
|
14
15
|
/**
|
|
@@ -24,11 +25,20 @@ class BullMQJobQueueStrategy {
|
|
|
24
25
|
this.stopped = false;
|
|
25
26
|
}
|
|
26
27
|
async init(injector) {
|
|
27
|
-
var _a;
|
|
28
|
+
var _a, _b, _c, _d, _e;
|
|
28
29
|
const options = injector.get(constants_1.BULLMQ_PLUGIN_OPTIONS);
|
|
29
|
-
this.options = options
|
|
30
|
+
this.options = Object.assign(Object.assign({}, options), { workerOptions: {
|
|
31
|
+
removeOnComplete: (_b = (_a = options.workerOptions) === null || _a === void 0 ? void 0 : _a.removeOnComplete) !== null && _b !== void 0 ? _b : {
|
|
32
|
+
age: 60 * 60 * 24 * 30,
|
|
33
|
+
count: 5000,
|
|
34
|
+
},
|
|
35
|
+
removeOnFail: (_d = (_c = options.workerOptions) === null || _c === void 0 ? void 0 : _c.removeOnFail) !== null && _d !== void 0 ? _d : {
|
|
36
|
+
age: 60 * 60 * 24 * 30,
|
|
37
|
+
count: 5000,
|
|
38
|
+
},
|
|
39
|
+
} });
|
|
30
40
|
this.connectionOptions =
|
|
31
|
-
(
|
|
41
|
+
(_e = options.connection) !== null && _e !== void 0 ? _e : {
|
|
32
42
|
host: 'localhost',
|
|
33
43
|
port: 6379,
|
|
34
44
|
maxRetriesPerRequest: null,
|
|
@@ -37,6 +47,7 @@ class BullMQJobQueueStrategy {
|
|
|
37
47
|
this.connectionOptions instanceof events_1.EventEmitter
|
|
38
48
|
? this.connectionOptions
|
|
39
49
|
: new ioredis_1.Redis(this.connectionOptions);
|
|
50
|
+
this.defineCustomLuaScripts();
|
|
40
51
|
const redisHealthIndicator = injector.get(redis_health_indicator_1.RedisHealthIndicator);
|
|
41
52
|
core_1.Logger.info('Checking Redis connection...', constants_1.loggerCtx);
|
|
42
53
|
const health = await redisHealthIndicator.isHealthy('redis');
|
|
@@ -79,9 +90,9 @@ class BullMQJobQueueStrategy {
|
|
|
79
90
|
await Promise.all([this.queue.close(), (_a = this.worker) === null || _a === void 0 ? void 0 : _a.close()]);
|
|
80
91
|
}
|
|
81
92
|
async add(job) {
|
|
82
|
-
var _a, _b, _c, _d, _e, _f;
|
|
83
|
-
const retries = (_c = (_b = (_a = this.options).setRetries) === null || _b === void 0 ? void 0 : _b.call(_a, job.queueName, job)) !== null && _c !== void 0 ? _c : job.retries;
|
|
84
|
-
const backoff = (
|
|
93
|
+
var _a, _b, _c, _d, _e, _f, _g;
|
|
94
|
+
const retries = (_d = (_c = (_b = (_a = this.options).setRetries) === null || _b === void 0 ? void 0 : _b.call(_a, job.queueName, job)) !== null && _c !== void 0 ? _c : job.retries) !== null && _d !== void 0 ? _d : 0;
|
|
95
|
+
const backoff = (_g = (_f = (_e = this.options).setBackoff) === null || _f === void 0 ? void 0 : _f.call(_e, job.queueName, job)) !== null && _g !== void 0 ? _g : {
|
|
85
96
|
delay: 1000,
|
|
86
97
|
type: 'exponential',
|
|
87
98
|
};
|
|
@@ -111,9 +122,9 @@ class BullMQJobQueueStrategy {
|
|
|
111
122
|
}
|
|
112
123
|
}
|
|
113
124
|
async findMany(options) {
|
|
114
|
-
var _a, _b, _c, _d;
|
|
115
|
-
const
|
|
116
|
-
const
|
|
125
|
+
var _a, _b, _c, _d, _e, _f, _g;
|
|
126
|
+
const skip = (_a = options === null || options === void 0 ? void 0 : options.skip) !== null && _a !== void 0 ? _a : 0;
|
|
127
|
+
const take = (_b = options === null || options === void 0 ? void 0 : options.take) !== null && _b !== void 0 ? _b : 10;
|
|
117
128
|
let jobTypes = constants_1.ALL_JOB_TYPES;
|
|
118
129
|
const stateFilter = (_c = options === null || options === void 0 ? void 0 : options.filter) === null || _c === void 0 ? void 0 : _c.state;
|
|
119
130
|
if (stateFilter === null || stateFilter === void 0 ? void 0 : stateFilter.eq) {
|
|
@@ -146,24 +157,24 @@ class BullMQJobQueueStrategy {
|
|
|
146
157
|
: ['wait', 'waiting-children', 'active', 'repeat', 'delayed', 'paused'];
|
|
147
158
|
}
|
|
148
159
|
let items = [];
|
|
149
|
-
let
|
|
150
|
-
try {
|
|
151
|
-
items = await this.queue.getJobs(jobTypes, start, end);
|
|
152
|
-
}
|
|
153
|
-
catch (e) {
|
|
154
|
-
core_1.Logger.error(e.message, constants_1.loggerCtx, e.stack);
|
|
155
|
-
}
|
|
160
|
+
let totalItems = 0;
|
|
156
161
|
try {
|
|
157
|
-
|
|
162
|
+
const [total, jobIds] = await this.callCustomScript(get_jobs_by_type_1.getJobsByType, [
|
|
163
|
+
skip,
|
|
164
|
+
take,
|
|
165
|
+
(_g = (_f = (_e = options === null || options === void 0 ? void 0 : options.filter) === null || _e === void 0 ? void 0 : _e.queueName) === null || _f === void 0 ? void 0 : _f.eq) !== null && _g !== void 0 ? _g : '',
|
|
166
|
+
...jobTypes,
|
|
167
|
+
]);
|
|
168
|
+
items = (await Promise.all(jobIds.map(id => {
|
|
169
|
+
return bullmq_1.Job.fromId(this.queue, id);
|
|
170
|
+
}))).filter(shared_utils_1.notNullOrUndefined);
|
|
171
|
+
totalItems = total;
|
|
158
172
|
}
|
|
159
173
|
catch (e) {
|
|
160
|
-
core_1.
|
|
174
|
+
throw new core_1.InternalServerError(e.message);
|
|
161
175
|
}
|
|
162
|
-
const totalItems = Object.values(jobCounts).reduce((sum, count) => sum + count, 0);
|
|
163
176
|
return {
|
|
164
|
-
items: await Promise.all(items
|
|
165
|
-
.sort((a, b) => b.timestamp - a.timestamp)
|
|
166
|
-
.map(bullJob => this.createVendureJob(bullJob))),
|
|
177
|
+
items: await Promise.all(items.map(bullJob => this.createVendureJob(bullJob))),
|
|
167
178
|
totalItems,
|
|
168
179
|
};
|
|
169
180
|
}
|
|
@@ -224,7 +235,6 @@ class BullMQJobQueueStrategy {
|
|
|
224
235
|
}
|
|
225
236
|
}
|
|
226
237
|
async createVendureJob(bullJob) {
|
|
227
|
-
var _a;
|
|
228
238
|
const jobJson = bullJob.toJSON();
|
|
229
239
|
return new core_1.Job({
|
|
230
240
|
queueName: bullJob.name,
|
|
@@ -238,7 +248,7 @@ class BullMQJobQueueStrategy {
|
|
|
238
248
|
error: jobJson.failedReason,
|
|
239
249
|
progress: +jobJson.progress,
|
|
240
250
|
result: jobJson.returnvalue,
|
|
241
|
-
retries:
|
|
251
|
+
retries: bullJob.opts.attempts ? bullJob.opts.attempts - 1 : 0,
|
|
242
252
|
});
|
|
243
253
|
}
|
|
244
254
|
async getState(bullJob) {
|
|
@@ -264,6 +274,25 @@ class BullMQJobQueueStrategy {
|
|
|
264
274
|
throw new core_1.InternalServerError('Could not determine job state');
|
|
265
275
|
// TODO: how to handle "cancelled" state? Currently when we cancel a job, we simply remove all record of it.
|
|
266
276
|
}
|
|
277
|
+
callCustomScript(scriptDef, args) {
|
|
278
|
+
return new Promise((resolve, reject) => {
|
|
279
|
+
this.redisConnection[scriptDef.name](`bull:${this.queue.name}:`, ...args, (err, result) => {
|
|
280
|
+
if (err) {
|
|
281
|
+
reject(err);
|
|
282
|
+
}
|
|
283
|
+
else {
|
|
284
|
+
resolve(result);
|
|
285
|
+
}
|
|
286
|
+
});
|
|
287
|
+
});
|
|
288
|
+
}
|
|
289
|
+
defineCustomLuaScripts() {
|
|
290
|
+
const redis = this.redisConnection;
|
|
291
|
+
redis.defineCommand(get_jobs_by_type_1.getJobsByType.name, {
|
|
292
|
+
numberOfKeys: get_jobs_by_type_1.getJobsByType.numberOfKeys,
|
|
293
|
+
lua: get_jobs_by_type_1.getJobsByType.script,
|
|
294
|
+
});
|
|
295
|
+
}
|
|
267
296
|
}
|
|
268
297
|
exports.BullMQJobQueueStrategy = BullMQJobQueueStrategy;
|
|
269
298
|
//# sourceMappingURL=bullmq-job-queue-strategy.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bullmq-job-queue-strategy.js","sourceRoot":"","sources":["../../src/bullmq/bullmq-job-queue-strategy.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"bullmq-job-queue-strategy.js","sourceRoot":"","sources":["../../src/bullmq/bullmq-job-queue-strategy.ts"],"names":[],"mappings":";;;AAAA,yEAA+E;AAC/E,mEAAsE;AACtE,wCASuB;AACvB,mCAQgB;AAChB,mCAAsC;AACtC,qCAAuD;AAEvD,2CAA8E;AAC9E,qEAAgE;AAChE,iEAA2D;AAG3D,MAAM,UAAU,GAAG,mBAAmB,CAAC;AACvC,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAE9B;;;;;;GAMG;AACH,MAAa,sBAAsB;IAAnC;QAOY,0BAAqB,GAAG,IAAI,GAAG,EAAsC,CAAC;QA2OtE,YAAO,GAAG,KAAK,CAAC;IAqF5B,CAAC;IA9TG,KAAK,CAAC,IAAI,CAAC,QAAkB;;QACzB,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAsB,iCAAqB,CAAC,CAAC;QACzE,IAAI,CAAC,OAAO,mCACL,OAAO,KACV,aAAa,EAAE;gBACX,gBAAgB,EAAE,MAAA,MAAA,OAAO,CAAC,aAAa,0CAAE,gBAAgB,mCAAI;oBACzD,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;oBACtB,KAAK,EAAE,IAAI;iBACd;gBACD,YAAY,EAAE,MAAA,MAAA,OAAO,CAAC,aAAa,0CAAE,YAAY,mCAAI;oBACjD,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;oBACtB,KAAK,EAAE,IAAI;iBACd;aACJ,GACJ,CAAC;QACF,IAAI,CAAC,iBAAiB;YAClB,MAAA,OAAO,CAAC,UAAU,mCACjB;gBACG,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,IAAI;gBACV,oBAAoB,EAAE,IAAI;aACZ,CAAC;QAEvB,IAAI,CAAC,eAAe;YAChB,IAAI,CAAC,iBAAiB,YAAY,qBAAY;gBAC1C,CAAC,CAAC,IAAI,CAAC,iBAAiB;gBACxB,CAAC,CAAC,IAAI,eAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAE5C,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAE9B,MAAM,oBAAoB,GAAG,QAAQ,CAAC,GAAG,CAAC,6CAAoB,CAAC,CAAC;QAChE,aAAM,CAAC,IAAI,CAAC,8BAA8B,EAAE,qBAAS,CAAC,CAAC;QACvD,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAC7D,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,KAAK,MAAM,EAAE;YAChC,aAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE,qBAAS,CAAC,CAAC;SACzD;aAAM;YACH,aAAM,CAAC,IAAI,CAAC,sBAAsB,EAAE,qBAAS,CAAC,CAAC;SAClD;QAED,IAAI,CAAC,KAAK,GAAG,IAAI,cAAK,CAAC,UAAU,kCAC1B,OAAO,CAAC,YAAY,KACvB,UAAU,EAAE,IAAI,CAAC,eAAe,IAClC;aACG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAM,EAAE,EAAE,CACpB,aAAM,CAAC,KAAK,CAAC,uBAAuB,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,qBAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CACvF;aACA,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,aAAM,CAAC,OAAO,CAAC,sBAAsB,EAAE,qBAAS,CAAC,CAAC;aACtE,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,aAAM,CAAC,OAAO,CAAC,qBAAqB,EAAE,qBAAS,CAAC,CAAC,CAAC;QAE1E,IAAI,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE;YAC7B,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;SAC7B;QAED,IAAI,CAAC,eAAe,GAAG,KAAK,EAAC,OAAO,EAAC,EAAE;;YACnC,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;YAC/B,aAAM,CAAC,KAAK,CACR,OAAO,MAAA,OAAO,CAAC,EAAE,mCAAI,EAAE,KAAK,SAAS,uBAAuB,OAAO,CAAC,YAAY,GAAG,CAAC,OAChF,MAAA,OAAO,CAAC,IAAI,CAAC,QAAQ,mCAAI,CAC7B,GAAG,CACN,CAAC;YACF,MAAM,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAC5D,IAAI,SAAS,EAAE;gBACX,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;gBACjD,IAAI;oBACA,2BAA2B;oBAC3B,GAAG,CAAC,EAAE,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;oBAClE,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,GAAG,CAAC,CAAC;oBACpC,MAAM,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;oBAClC,OAAO,MAAM,CAAC;iBACjB;gBAAC,OAAO,CAAM,EAAE;oBACb,MAAM,CAAC,CAAC;iBACX;aACJ;YACD,MAAM,IAAI,0BAAmB,CAAC,uCAAuC,SAAS,GAAG,CAAC,CAAC;QACvF,CAAC,CAAC;IACN,CAAC;IAED,KAAK,CAAC,OAAO;;QACT,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,MAAA,IAAI,CAAC,MAAM,0CAAE,KAAK,EAAE,CAAC,CAAC,CAAC;IAClE,CAAC;IAED,KAAK,CAAC,GAAG,CAAsC,GAAc;;QACzD,MAAM,OAAO,GAAG,MAAA,MAAA,MAAA,MAAA,IAAI,CAAC,OAAO,EAAC,UAAU,mDAAG,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,mCAAI,GAAG,CAAC,OAAO,mCAAI,CAAC,CAAC;QAClF,MAAM,OAAO,GAAG,MAAA,MAAA,MAAA,IAAI,CAAC,OAAO,EAAC,UAAU,mDAAG,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,mCAAI;YAC7D,KAAK,EAAE,IAAI;YACX,IAAI,EAAE,aAAa;SACtB,CAAC;QACF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,IAAI,EAAE;YAC1D,QAAQ,EAAE,OAAO,GAAG,CAAC;YACrB,OAAO;SACV,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,KAAa;QACzB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC/C,IAAI,OAAO,EAAE;YACT,IAAI,MAAM,OAAO,CAAC,QAAQ,EAAE,EAAE;gBAC1B,kCAAkC;gBAClC,mDAAmD;gBACnD,MAAM,IAAI,0BAAmB,CAAC,6BAA6B,CAAC,CAAC;aAChE;YACD,IAAI;gBACA,MAAM,OAAO,CAAC,MAAM,EAAE,CAAC;gBACvB,OAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;aACzC;YAAC,OAAO,CAAM,EAAE;gBACb,MAAM,OAAO,GAAG,8BAA8B,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC1E,aAAM,CAAC,KAAK,CAAC,OAAO,EAAE,qBAAS,CAAC,CAAC;gBACjC,MAAM,IAAI,0BAAmB,CAAC,OAAO,CAAC,CAAC;aAC1C;SACJ;IACL,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,OAAwB;;QACnC,MAAM,IAAI,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,mCAAI,CAAC,CAAC;QAChC,MAAM,IAAI,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,mCAAI,EAAE,CAAC;QACjC,IAAI,QAAQ,GAAc,yBAAa,CAAC;QACxC,MAAM,WAAW,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,0CAAE,KAAK,CAAC;QAC3C,IAAI,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,EAAE,EAAE;YACjB,QAAQ,WAAW,CAAC,EAAE,EAAE;gBACpB,KAAK,SAAS;oBACV,QAAQ,GAAG,CAAC,MAAM,CAAC,CAAC;oBACpB,MAAM;gBACV,KAAK,SAAS;oBACV,QAAQ,GAAG,CAAC,QAAQ,CAAC,CAAC;oBACtB,MAAM;gBACV,KAAK,WAAW;oBACZ,QAAQ,GAAG,CAAC,WAAW,CAAC,CAAC;oBACzB,MAAM;gBACV,KAAK,UAAU;oBACX,QAAQ,GAAG,CAAC,QAAQ,CAAC,CAAC;oBACtB,MAAM;gBACV,KAAK,QAAQ;oBACT,QAAQ,GAAG,CAAC,QAAQ,CAAC,CAAC;oBACtB,MAAM;gBACV,KAAK,WAAW;oBACZ,QAAQ,GAAG,CAAC,QAAQ,CAAC,CAAC;oBACtB,MAAM;aACb;SACJ;QACD,MAAM,aAAa,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,0CAAE,SAAS,CAAC;QACjD,IAAI,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,EAAE,KAAI,IAAI,EAAE;YAC3B,QAAQ;gBACJ,aAAa,CAAC,EAAE,KAAK,IAAI;oBACrB,CAAC,CAAC,CAAC,WAAW,EAAE,QAAQ,CAAC;oBACzB,CAAC,CAAC,CAAC,MAAM,EAAE,kBAAkB,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;SACnF;QAED,IAAI,KAAK,GAAe,EAAE,CAAC;QAC3B,IAAI,UAAU,GAAG,CAAC,CAAC;QAEnB,IAAI;YACA,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,gCAAa,EAAE;gBAC/D,IAAI;gBACJ,IAAI;gBACJ,MAAA,MAAA,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,0CAAE,SAAS,0CAAE,EAAE,mCAAI,EAAE;gBACpC,GAAG,QAAQ;aACd,CAAC,CAAC;YACH,KAAK,GAAG,CACJ,MAAM,OAAO,CAAC,GAAG,CACb,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;gBACZ,OAAO,YAAO,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YAC1C,CAAC,CAAC,CACL,CACJ,CAAC,MAAM,CAAC,iCAAkB,CAAC,CAAC;YAC7B,UAAU,GAAG,KAAK,CAAC;SACtB;QAAC,OAAO,CAAM,EAAE;YACb,MAAM,IAAI,0BAAmB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;SAC5C;QAED,OAAO;YACH,KAAK,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC;YAC9E,UAAU;SACb,CAAC;IACN,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,GAAS;QACxB,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC;QACpF,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,iCAAkB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/F,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,EAAM;QAChB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC;QACvD,IAAI,OAAO,EAAE;YACT,OAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;SACzC;IACL,CAAC;IAED,wDAAwD;IACxD,KAAK,CAAC,iBAAiB,CAAC,UAAqB,EAAE,SAAgB;QAC3D,IAAI;YACA,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;YACvE,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,WAAW,CAAC,CAAC;YAC5C,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;YACzC,OAAO,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC;SACtE;QAAC,OAAO,CAAM,EAAE;YACb,aAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,qBAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;YAC5C,OAAO,CAAC,CAAC;SACZ;IACL,CAAC;IAED,4DAA4D;IAC5D,KAAK,CAAC,KAAK,CACP,SAAiB,EACjB,OAAyC;QAEzC,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACnD,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YACd,MAAM,OAAO,iCACT,WAAW,EAAE,mBAAmB,IAC7B,IAAI,CAAC,OAAO,CAAC,aAAa,KAC7B,UAAU,EAAE,IAAI,CAAC,eAAe,GACnC,CAAC;YACF,IAAI,CAAC,MAAM,GAAG,IAAI,eAAM,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,EAAE,OAAO,CAAC;iBAC9D,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,aAAM,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC,OAAO,EAAE,EAAE,qBAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;iBACvF,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,aAAM,CAAC,OAAO,CAAC,0BAA0B,CAAC,EAAE,EAAE,qBAAS,CAAC,CAAC;iBAC5E,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,aAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;iBAC1D,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAyB,EAAE,KAAK,EAAE,EAAE;;gBAC/C,aAAM,CAAC,IAAI,CACP,OAAO,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,EAAE,mCAAI,cAAc,KAAK,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,IAAI,mCAAI,cAAc,qBAC5D,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,YAAY,mCAAI,SACzB,OAAO,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,IAAI,CAAC,QAAQ,mCAAI,CAAC,GAAG,CACpC,CAAC;YACN,CAAC,CAAC;iBACD,EAAE,CAAC,SAAS,EAAE,CAAC,KAAa,EAAE,EAAE;gBAC7B,aAAM,CAAC,IAAI,CAAC,sBAAsB,KAAK,UAAU,EAAE,qBAAS,CAAC,CAAC;YAClE,CAAC,CAAC;iBACD,EAAE,CAAC,WAAW,EAAE,CAAC,GAAa,EAAE,EAAE;;gBAC/B,aAAM,CAAC,KAAK,CAAC,OAAO,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,EAAE,mCAAI,YAAY,KAAK,GAAG,CAAC,IAAI,aAAa,CAAC,CAAC;YAC3E,CAAC,CAAC,CAAC;SACV;IACL,CAAC;IAID,KAAK,CAAC,IAAI,CACN,SAAiB,EACjB,OAAyC;QAEzC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACf,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACpB,IAAI;gBACA,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;aAChE;YAAC,OAAO,CAAM,EAAE;gBACb,aAAM,CAAC,KAAK,CAAC,CAAC,EAAE,qBAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;aACvC;SACJ;IACL,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAAC,OAAiB;QAC5C,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;QACjC,OAAO,IAAI,UAAG,CAAC;YACX,SAAS,EAAE,OAAO,CAAC,IAAI;YACvB,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,KAAK,EAAE,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;YACnC,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,QAAQ,EAAE,OAAO,CAAC,YAAY;YAC9B,SAAS,EAAE,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;YACtC,SAAS,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS;YAC1E,SAAS,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS;YACxE,KAAK,EAAE,OAAO,CAAC,YAAY;YAC3B,QAAQ,EAAE,CAAC,OAAO,CAAC,QAAQ;YAC3B,MAAM,EAAE,OAAO,CAAC,WAAW;YAC3B,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;SACjE,CAAC,CAAC;IACP,CAAC;IAEO,KAAK,CAAC,QAAQ,CAAC,OAAiB;QACpC,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;QAEjC,IAAI,CAAC,MAAM,OAAO,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,MAAM,OAAO,CAAC,iBAAiB,EAAE,CAAC,EAAE;YACpE,OAAO,0BAAQ,CAAC,OAAO,CAAC;SAC3B;QACD,IAAI,MAAM,OAAO,CAAC,QAAQ,EAAE,EAAE;YAC1B,OAAO,0BAAQ,CAAC,OAAO,CAAC;SAC3B;QACD,IAAI,MAAM,OAAO,CAAC,SAAS,EAAE,EAAE;YAC3B,OAAO,0BAAQ,CAAC,QAAQ,CAAC;SAC5B;QACD,IAAI,MAAM,OAAO,CAAC,QAAQ,EAAE,EAAE;YAC1B,OAAO,0BAAQ,CAAC,MAAM,CAAC;SAC1B;QACD,IAAI,MAAM,OAAO,CAAC,WAAW,EAAE,EAAE;YAC7B,OAAO,0BAAQ,CAAC,SAAS,CAAC;SAC7B;QACD,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;YACrB,OAAO,0BAAQ,CAAC,SAAS,CAAC;SAC7B;QACD,MAAM,IAAI,0BAAmB,CAAC,+BAA+B,CAAC,CAAC;QAC/D,4GAA4G;IAChH,CAAC;IAEO,gBAAgB,CACpB,SAA0C,EAC1C,IAAU;QAEV,OAAO,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,IAAI,CAAC,eAAuB,CAAC,SAAS,CAAC,IAAI,CAAC,CACzC,QAAQ,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,EAC1B,GAAG,IAAI,EACP,CAAC,GAAQ,EAAE,MAAW,EAAE,EAAE;gBACtB,IAAI,GAAG,EAAE;oBACL,MAAM,CAAC,GAAG,CAAC,CAAC;iBACf;qBAAM;oBACH,OAAO,CAAC,MAAM,CAAC,CAAC;iBACnB;YACL,CAAC,CACJ,CAAC;QACN,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,sBAAsB;QAC1B,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC;QACnC,KAAK,CAAC,aAAa,CAAC,gCAAa,CAAC,IAAI,EAAE;YACpC,YAAY,EAAE,gCAAa,CAAC,YAAY;YACxC,GAAG,EAAE,gCAAa,CAAC,MAAM;SAC5B,CAAC,CAAC;IACP,CAAC;CACJ;AAvUD,wDAuUC"}
|
|
@@ -35,6 +35,7 @@ import { BullMQPluginOptions } from './types';
|
|
|
35
35
|
* const config: VendureConfig = {
|
|
36
36
|
* // Add an instance of the plugin to the plugins array
|
|
37
37
|
* plugins: [
|
|
38
|
+
* // DefaultJobQueuePlugin should be removed from the plugins array
|
|
38
39
|
* BullMQJobQueuePlugin.init({
|
|
39
40
|
* connection: {
|
|
40
41
|
* port: 6379
|
|
@@ -77,7 +78,7 @@ import { BullMQPluginOptions } from './types';
|
|
|
77
78
|
* You can change the concurrency in the `workerOptions` passed to the `init()` method:
|
|
78
79
|
*
|
|
79
80
|
* @example
|
|
80
|
-
* ```
|
|
81
|
+
* ```ts
|
|
81
82
|
* const config: VendureConfig = {
|
|
82
83
|
* plugins: [
|
|
83
84
|
* BullMQJobQueuePlugin.init({
|
|
@@ -89,6 +90,37 @@ import { BullMQPluginOptions } from './types';
|
|
|
89
90
|
* };
|
|
90
91
|
* ```
|
|
91
92
|
*
|
|
93
|
+
* ## Removing old jobs
|
|
94
|
+
*
|
|
95
|
+
* By default, BullMQ will keep completed jobs in the `completed` set and failed jobs in the `failed` set. Over time,
|
|
96
|
+
* these sets can grow very large. Since Vendure v2.1, the default behaviour is to remove jobs from these sets after
|
|
97
|
+
* 30 days or after a maximum of 5,000 completed or failed jobs.
|
|
98
|
+
*
|
|
99
|
+
* This can be configured using the `removeOnComplete` and `removeOnFail` options:
|
|
100
|
+
*
|
|
101
|
+
* @example
|
|
102
|
+
* ```ts
|
|
103
|
+
* const config: VendureConfig = {
|
|
104
|
+
* plugins: [
|
|
105
|
+
* BullMQJobQueuePlugin.init({
|
|
106
|
+
* workerOptions: {
|
|
107
|
+
* removeOnComplete: {
|
|
108
|
+
* count: 500,
|
|
109
|
+
* },
|
|
110
|
+
* removeOnFail: {
|
|
111
|
+
* age: 60 * 60 * 24 * 7, // 7 days
|
|
112
|
+
* count: 1000,
|
|
113
|
+
* },
|
|
114
|
+
* }
|
|
115
|
+
* }),
|
|
116
|
+
* ],
|
|
117
|
+
* };
|
|
118
|
+
* ```
|
|
119
|
+
*
|
|
120
|
+
* The `count` option specifies the maximum number of jobs to keep in the set, while the `age` option specifies the
|
|
121
|
+
* maximum age of a job in seconds. If both options are specified, then the jobs kept will be the ones that satisfy
|
|
122
|
+
* both properties.
|
|
123
|
+
*
|
|
92
124
|
* @docsCategory core plugins/JobQueuePlugin
|
|
93
125
|
*/
|
|
94
126
|
export declare class BullMQJobQueuePlugin {
|
package/package/bullmq/plugin.js
CHANGED
|
@@ -50,6 +50,7 @@ const redis_job_buffer_storage_strategy_1 = require("./redis-job-buffer-storage-
|
|
|
50
50
|
* const config: VendureConfig = {
|
|
51
51
|
* // Add an instance of the plugin to the plugins array
|
|
52
52
|
* plugins: [
|
|
53
|
+
* // DefaultJobQueuePlugin should be removed from the plugins array
|
|
53
54
|
* BullMQJobQueuePlugin.init({
|
|
54
55
|
* connection: {
|
|
55
56
|
* port: 6379
|
|
@@ -92,7 +93,7 @@ const redis_job_buffer_storage_strategy_1 = require("./redis-job-buffer-storage-
|
|
|
92
93
|
* You can change the concurrency in the `workerOptions` passed to the `init()` method:
|
|
93
94
|
*
|
|
94
95
|
* @example
|
|
95
|
-
* ```
|
|
96
|
+
* ```ts
|
|
96
97
|
* const config: VendureConfig = {
|
|
97
98
|
* plugins: [
|
|
98
99
|
* BullMQJobQueuePlugin.init({
|
|
@@ -104,6 +105,37 @@ const redis_job_buffer_storage_strategy_1 = require("./redis-job-buffer-storage-
|
|
|
104
105
|
* };
|
|
105
106
|
* ```
|
|
106
107
|
*
|
|
108
|
+
* ## Removing old jobs
|
|
109
|
+
*
|
|
110
|
+
* By default, BullMQ will keep completed jobs in the `completed` set and failed jobs in the `failed` set. Over time,
|
|
111
|
+
* these sets can grow very large. Since Vendure v2.1, the default behaviour is to remove jobs from these sets after
|
|
112
|
+
* 30 days or after a maximum of 5,000 completed or failed jobs.
|
|
113
|
+
*
|
|
114
|
+
* This can be configured using the `removeOnComplete` and `removeOnFail` options:
|
|
115
|
+
*
|
|
116
|
+
* @example
|
|
117
|
+
* ```ts
|
|
118
|
+
* const config: VendureConfig = {
|
|
119
|
+
* plugins: [
|
|
120
|
+
* BullMQJobQueuePlugin.init({
|
|
121
|
+
* workerOptions: {
|
|
122
|
+
* removeOnComplete: {
|
|
123
|
+
* count: 500,
|
|
124
|
+
* },
|
|
125
|
+
* removeOnFail: {
|
|
126
|
+
* age: 60 * 60 * 24 * 7, // 7 days
|
|
127
|
+
* count: 1000,
|
|
128
|
+
* },
|
|
129
|
+
* }
|
|
130
|
+
* }),
|
|
131
|
+
* ],
|
|
132
|
+
* };
|
|
133
|
+
* ```
|
|
134
|
+
*
|
|
135
|
+
* The `count` option specifies the maximum number of jobs to keep in the set, while the `age` option specifies the
|
|
136
|
+
* maximum age of a job in seconds. If both options are specified, then the jobs kept will be the ones that satisfy
|
|
137
|
+
* both properties.
|
|
138
|
+
*
|
|
107
139
|
* @docsCategory core plugins/JobQueuePlugin
|
|
108
140
|
*/
|
|
109
141
|
let BullMQJobQueuePlugin = BullMQJobQueuePlugin_1 = class BullMQJobQueuePlugin {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/bullmq/plugin.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,wCAAkE;AAElE,2EAAqE;AACrE,2CAAoD;AACpD,+EAAyE;AACzE,qEAAgE;AAChE,2FAAoF;AAGpF
|
|
1
|
+
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/bullmq/plugin.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,wCAAkE;AAElE,2EAAqE;AACrE,2CAAoD;AACpD,+EAAyE;AACzE,qEAAgE;AAChE,2FAAoF;AAGpF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2HG;AAeI,IAAM,oBAAoB,4BAA1B,MAAM,oBAAoB;IAG7B;;;OAGG;IACH,MAAM,CAAC,IAAI,CAAC,OAA4B;QACpC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ,CAAA;AAXY,oBAAoB;IAdhC,IAAA,oBAAa,EAAC;QACX,OAAO,EAAE,CAAC,yBAAkB,CAAC;QAC7B,aAAa,EAAE,MAAM,CAAC,EAAE;YACpB,MAAM,CAAC,eAAe,CAAC,gBAAgB,GAAG,IAAI,kDAAsB,EAAE,CAAC;YACvE,MAAM,CAAC,eAAe,CAAC,wBAAwB,GAAG,IAAI,iEAA6B,EAAE,CAAC;YACtF,MAAM,CAAC,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,sDAAwB,EAAE,CAAC,CAAC;YACvE,OAAO,MAAM,CAAC;QAClB,CAAC;QACD,SAAS,EAAE;YACP,EAAE,OAAO,EAAE,iCAAqB,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,sBAAoB,CAAC,OAAO,EAAE;YAClF,6CAAoB;SACvB;QACD,aAAa,EAAE,QAAQ;KAC1B,CAAC;GACW,oBAAoB,CAWhC;AAXY,oDAAoB"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { CustomScriptDefinition } from '../types';
|
|
2
|
+
export declare const getJobsByType: CustomScriptDefinition<[
|
|
3
|
+
totalItems: number,
|
|
4
|
+
jobIds: string[]
|
|
5
|
+
], [
|
|
6
|
+
rangeStart: number,
|
|
7
|
+
rangeEnd: number,
|
|
8
|
+
queueName: string | undefined,
|
|
9
|
+
...states: string[]
|
|
10
|
+
]>;
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getJobsByType = void 0;
|
|
4
|
+
const script = `--[[
|
|
5
|
+
Get job ids per provided states and filter by name
|
|
6
|
+
Input:
|
|
7
|
+
KEYS[1] 'prefix'
|
|
8
|
+
ARGV[1] start
|
|
9
|
+
ARGV[2] end
|
|
10
|
+
ARGV[3] filterName
|
|
11
|
+
ARGV[4...] types
|
|
12
|
+
]]
|
|
13
|
+
local rcall = redis.call
|
|
14
|
+
local prefix = KEYS[1]
|
|
15
|
+
local rangeStart = tonumber(ARGV[1])
|
|
16
|
+
local rangeEnd = tonumber(ARGV[2])
|
|
17
|
+
local filterName = ARGV[3]
|
|
18
|
+
local results = {}
|
|
19
|
+
|
|
20
|
+
local targetSets = {}
|
|
21
|
+
|
|
22
|
+
-- Initialize an empty array to hold the sets to unionize. The "completed" and "failed" lists
|
|
23
|
+
-- are sorted sets
|
|
24
|
+
local setsToUnionize = {}
|
|
25
|
+
local typesInUnion = {}
|
|
26
|
+
|
|
27
|
+
-- Initialize an empty array to hold lists to include. The "active" and "wait" lists are
|
|
28
|
+
-- regular lists
|
|
29
|
+
local listsToInclude = {}
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
-- Iterate through ARGV starting from the first element (ARGV[1]) up to the end
|
|
33
|
+
for i = 4, #ARGV do
|
|
34
|
+
local setKey = prefix .. ARGV[i]
|
|
35
|
+
|
|
36
|
+
-- Check if the setKey is valid (e.g., it exists and is a sorted set)
|
|
37
|
+
local targetExists = redis.call('EXISTS', setKey)
|
|
38
|
+
local listType = redis.call('TYPE', setKey).ok
|
|
39
|
+
|
|
40
|
+
if targetExists == 1 and listType == 'zset' then
|
|
41
|
+
-- Add the valid set to the array
|
|
42
|
+
table.insert(setsToUnionize, setKey)
|
|
43
|
+
table.insert(typesInUnion, ARGV[i])
|
|
44
|
+
end
|
|
45
|
+
if targetExists == 1 and listType == 'list' then
|
|
46
|
+
-- Add the valid set to the array
|
|
47
|
+
table.insert(listsToInclude, setKey)
|
|
48
|
+
table.insert(typesInUnion, ARGV[i])
|
|
49
|
+
end
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
-- Define the destination key for the concatenated sorted set
|
|
53
|
+
local tempSortedSetUnionKey = prefix .. 'union:' .. table.concat(typesInUnion, ':');
|
|
54
|
+
|
|
55
|
+
if #listsToInclude == 0 and #setsToUnionize == 0 then
|
|
56
|
+
return {0, {}}
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
-- Check if there are valid sets to unionize
|
|
60
|
+
if #setsToUnionize > 0 then
|
|
61
|
+
-- Use ZUNIONSTORE to concatenate the valid sorted sets into the destination key
|
|
62
|
+
local numSets = #setsToUnionize
|
|
63
|
+
redis.call('ZUNIONSTORE', tempSortedSetUnionKey, numSets, unpack(setsToUnionize))
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
local originalResults = rcall("ZREVRANGE", tempSortedSetUnionKey, 0, -1)
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
if #listsToInclude > 0 then
|
|
70
|
+
for _, listKey in ipairs(listsToInclude) do
|
|
71
|
+
local list = rcall("LRANGE", listKey, 0, -1)
|
|
72
|
+
for _, jobId in ipairs(list) do
|
|
73
|
+
table.insert(originalResults, jobId)
|
|
74
|
+
end
|
|
75
|
+
end
|
|
76
|
+
end
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
-- Define a custom comparison function for sorting in descending order
|
|
80
|
+
local function compareDescending(a, b)
|
|
81
|
+
return tonumber(a) > tonumber(b)
|
|
82
|
+
end
|
|
83
|
+
|
|
84
|
+
-- Sort the table in descending order
|
|
85
|
+
table.sort(originalResults, compareDescending)
|
|
86
|
+
|
|
87
|
+
local filteredResults = {}
|
|
88
|
+
local totalResults = 0
|
|
89
|
+
|
|
90
|
+
for _, job in ipairs(originalResults) do
|
|
91
|
+
local jobName = rcall("HGET", prefix .. job, "name");
|
|
92
|
+
if filterName ~= "" and jobName == filterName then
|
|
93
|
+
if rangeStart <= totalResults and #filteredResults < rangeEnd then
|
|
94
|
+
table.insert(filteredResults, job)
|
|
95
|
+
end
|
|
96
|
+
totalResults = totalResults + 1
|
|
97
|
+
elseif filterName == "" then
|
|
98
|
+
if rangeStart <= totalResults and #filteredResults < rangeEnd then
|
|
99
|
+
table.insert(filteredResults, job)
|
|
100
|
+
end
|
|
101
|
+
totalResults = totalResults + 1
|
|
102
|
+
end
|
|
103
|
+
end
|
|
104
|
+
|
|
105
|
+
rcall("DEL", tempSortedSetUnionKey)
|
|
106
|
+
|
|
107
|
+
return {totalResults, filteredResults}
|
|
108
|
+
`;
|
|
109
|
+
exports.getJobsByType = {
|
|
110
|
+
script,
|
|
111
|
+
numberOfKeys: 1,
|
|
112
|
+
name: 'getJobsByType',
|
|
113
|
+
};
|
|
114
|
+
//# sourceMappingURL=get-jobs-by-type.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-jobs-by-type.js","sourceRoot":"","sources":["../../../src/bullmq/scripts/get-jobs-by-type.ts"],"names":[],"mappings":";;;AAGA,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwGd,CAAC;AAEW,QAAA,aAAa,GAGtB;IACA,MAAM;IACN,YAAY,EAAE,CAAC;IACf,IAAI,EAAE,eAAe;CACxB,CAAC"}
|
|
@@ -41,7 +41,7 @@ export interface BullMQPluginOptions {
|
|
|
41
41
|
* the job being added.
|
|
42
42
|
*
|
|
43
43
|
* @example
|
|
44
|
-
* ```
|
|
44
|
+
* ```ts
|
|
45
45
|
* setRetries: (queueName, job) => {
|
|
46
46
|
* if (queueName === 'send-email') {
|
|
47
47
|
* // Override the default number of retries
|
|
@@ -64,7 +64,7 @@ export interface BullMQPluginOptions {
|
|
|
64
64
|
* value of exponential/1000ms will be used.
|
|
65
65
|
*
|
|
66
66
|
* @example
|
|
67
|
-
* ```
|
|
67
|
+
* ```ts
|
|
68
68
|
* setBackoff: (queueName, job) => {
|
|
69
69
|
* return {
|
|
70
70
|
* type: 'exponential', // or 'fixed'
|
|
@@ -90,3 +90,12 @@ export interface BackoffOptions {
|
|
|
90
90
|
type: 'exponential' | 'fixed';
|
|
91
91
|
delay: number;
|
|
92
92
|
}
|
|
93
|
+
/**
|
|
94
|
+
* @description
|
|
95
|
+
* A definition for a Lua script used to define custom behavior in Redis
|
|
96
|
+
*/
|
|
97
|
+
export interface CustomScriptDefinition<T, Args extends any[]> {
|
|
98
|
+
name: string;
|
|
99
|
+
script: string;
|
|
100
|
+
numberOfKeys: number;
|
|
101
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vendure/job-queue-plugin",
|
|
3
|
-
"version": "2.1.0-next.
|
|
3
|
+
"version": "2.1.0-next.6",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"main": "package/index.js",
|
|
6
6
|
"types": "package/index.d.ts",
|
|
@@ -23,12 +23,12 @@
|
|
|
23
23
|
},
|
|
24
24
|
"devDependencies": {
|
|
25
25
|
"@google-cloud/pubsub": "^2.8.0",
|
|
26
|
-
"@vendure/common": "2.1.0-next.
|
|
27
|
-
"@vendure/core": "2.1.0-next.
|
|
26
|
+
"@vendure/common": "2.1.0-next.6",
|
|
27
|
+
"@vendure/core": "2.1.0-next.6",
|
|
28
28
|
"bullmq": "^3.15.5",
|
|
29
29
|
"ioredis": "^5.3.0",
|
|
30
30
|
"rimraf": "^3.0.2",
|
|
31
31
|
"typescript": "4.9.5"
|
|
32
32
|
},
|
|
33
|
-
"gitHead": "
|
|
33
|
+
"gitHead": "e81dcd69f73ea61731abf72068b8d576609b4b24"
|
|
34
34
|
}
|