bullmq 4.1.0 → 4.2.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/README.md +2 -1
- package/dist/cjs/classes/queue-getters.js +2 -2
- package/dist/cjs/classes/queue-getters.js.map +1 -1
- package/dist/cjs/classes/repeat.js +14 -12
- package/dist/cjs/classes/repeat.js.map +1 -1
- package/dist/cjs/commands/drain-4.lua +1 -1
- package/dist/cjs/commands/includes/moveJobFromPriorityToActive.lua +0 -1
- package/dist/cjs/commands/includes/removeJobs.lua +0 -12
- package/dist/cjs/commands/includes/removeListJobs.lua +17 -0
- package/dist/cjs/commands/includes/updateParentDepsIfNeeded.lua +9 -7
- package/dist/cjs/commands/obliterate-2.lua +1 -0
- package/dist/cjs/scripts/addJob-9.js +9 -6
- package/dist/cjs/scripts/addJob-9.js.map +1 -1
- package/dist/cjs/scripts/drain-4.js +21 -17
- package/dist/cjs/scripts/drain-4.js.map +1 -1
- package/dist/cjs/scripts/moveToFinished-13.js +9 -6
- package/dist/cjs/scripts/moveToFinished-13.js.map +1 -1
- package/dist/cjs/scripts/obliterate-2.js +23 -19
- package/dist/cjs/scripts/obliterate-2.js.map +1 -1
- package/dist/cjs/tsconfig-cjs.tsbuildinfo +1 -1
- package/dist/esm/classes/queue-getters.js +2 -2
- package/dist/esm/classes/queue-getters.js.map +1 -1
- package/dist/esm/classes/repeat.d.ts +3 -0
- package/dist/esm/classes/repeat.js +14 -12
- package/dist/esm/classes/repeat.js.map +1 -1
- package/dist/esm/commands/drain-4.lua +1 -1
- package/dist/esm/commands/includes/moveJobFromPriorityToActive.lua +0 -1
- package/dist/esm/commands/includes/removeJobs.lua +0 -12
- package/dist/esm/commands/includes/removeListJobs.lua +17 -0
- package/dist/esm/commands/includes/updateParentDepsIfNeeded.lua +9 -7
- package/dist/esm/commands/obliterate-2.lua +1 -0
- package/dist/esm/interfaces/advanced-options.d.ts +5 -0
- package/dist/esm/scripts/addJob-9.js +9 -6
- package/dist/esm/scripts/addJob-9.js.map +1 -1
- package/dist/esm/scripts/drain-4.js +21 -17
- package/dist/esm/scripts/drain-4.js.map +1 -1
- package/dist/esm/scripts/moveToFinished-13.js +9 -6
- package/dist/esm/scripts/moveToFinished-13.js.map +1 -1
- package/dist/esm/scripts/obliterate-2.js +23 -19
- package/dist/esm/scripts/obliterate-2.js.map +1 -1
- package/dist/esm/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
@@ -179,12 +179,13 @@ This is just scratching the surface, check all the features and more in the offi
|
|
179
179
|
|
180
180
|
Since there are a few job queue solutions, here is a table comparing them:
|
181
181
|
|
182
|
-
| Feature | BullMQ-Pro | BullMQ | Bull | Kue | Bee | Agenda |
|
182
|
+
| Feature | [BullMQ-Pro](https://bullmq.io/#bullmq-pro) | [BullMQ](https://bullmq.io) | Bull | Kue | Bee | Agenda |
|
183
183
|
| :------------------------ | :-------------: | :-------------: | :-------------: | :---: | -------- | ------ |
|
184
184
|
| Backend | redis | redis | redis | redis | redis | mongo |
|
185
185
|
| Observables | ✓ | | | | | |
|
186
186
|
| Group Rate Limit | ✓ | | | | | |
|
187
187
|
| Group Support | ✓ | | | | | |
|
188
|
+
| Batches Support | ✓ | | | | | |
|
188
189
|
| Parent/Child Dependencies | ✓ | ✓ | | | | |
|
189
190
|
| Priorities | ✓ | ✓ | ✓ | ✓ | | ✓ |
|
190
191
|
| Concurrency | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
|
@@ -235,8 +235,8 @@ class QueueGetters extends queue_base_1.QueueBase {
|
|
235
235
|
* @param asc - if true, the jobs will be returned in ascending order.
|
236
236
|
*/
|
237
237
|
async getJobs(types, start = 0, end = -1, asc = false) {
|
238
|
-
|
239
|
-
const jobIds = await this.getRanges(
|
238
|
+
const currentTypes = this.sanitizeJobTypes(types);
|
239
|
+
const jobIds = await this.getRanges(currentTypes, start, end, asc);
|
240
240
|
return Promise.all(jobIds.map(jobId => this.Job.fromId(this, jobId)));
|
241
241
|
}
|
242
242
|
/**
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"queue-getters.js","sourceRoot":"","sources":["../../../src/classes/queue-getters.ts"],"names":[],"mappings":"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
|
1
|
+
{"version":3,"file":"queue-getters.js","sourceRoot":"","sources":["../../../src/classes/queue-getters.ts"],"names":[],"mappings":"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"}
|
@@ -10,6 +10,8 @@ class Repeat extends queue_base_1.QueueBase {
|
|
10
10
|
super(name, opts, Connection);
|
11
11
|
this.repeatStrategy =
|
12
12
|
(opts.settings && opts.settings.repeatStrategy) || exports.getNextMillis;
|
13
|
+
this.repeatKeyHashAlgorithm =
|
14
|
+
(opts.settings && opts.settings.repeatKeyHashAlgorithm) || 'md5';
|
13
15
|
}
|
14
16
|
async addNextRepeatableJob(name, data, opts, skipCheckExists) {
|
15
17
|
var _a;
|
@@ -59,7 +61,7 @@ class Repeat extends queue_base_1.QueueBase {
|
|
59
61
|
//
|
60
62
|
// Generate unique job id for this iteration.
|
61
63
|
//
|
62
|
-
const jobId = getRepeatJobId(name, nextMillis,
|
64
|
+
const jobId = this.getRepeatJobId(name, nextMillis, this.hash(repeatJobKey), opts.repeat.jobId);
|
63
65
|
const now = Date.now();
|
64
66
|
const delay = nextMillis + (opts.repeat.offset ? opts.repeat.offset : 0) - now;
|
65
67
|
const mergedOpts = Object.assign(Object.assign({}, opts), { jobId, delay: delay < 0 || hasImmediately ? 0 : delay, timestamp: now, prevMillis: nextMillis, repeatJobKey });
|
@@ -69,12 +71,12 @@ class Repeat extends queue_base_1.QueueBase {
|
|
69
71
|
}
|
70
72
|
async removeRepeatable(name, repeat, jobId) {
|
71
73
|
const repeatJobKey = getRepeatKey(name, Object.assign(Object.assign({}, repeat), { jobId }));
|
72
|
-
const repeatJobId = getRepeatJobId(name, '',
|
74
|
+
const repeatJobId = this.getRepeatJobId(name, '', this.hash(repeatJobKey), jobId || repeat.jobId);
|
73
75
|
return this.scripts.removeRepeatable(repeatJobId, repeatJobKey);
|
74
76
|
}
|
75
77
|
async removeRepeatableByKey(repeatJobKey) {
|
76
78
|
const data = this.keyToData(repeatJobKey);
|
77
|
-
const repeatJobId = getRepeatJobId(data.name, '',
|
79
|
+
const repeatJobId = this.getRepeatJobId(data.name, '', this.hash(repeatJobKey), data.id);
|
78
80
|
return this.scripts.removeRepeatable(repeatJobId, repeatJobKey);
|
79
81
|
}
|
80
82
|
keyToData(key, next) {
|
@@ -106,14 +108,17 @@ class Repeat extends queue_base_1.QueueBase {
|
|
106
108
|
const client = await this.client;
|
107
109
|
return client.zcard(this.toKey('repeat'));
|
108
110
|
}
|
111
|
+
hash(str) {
|
112
|
+
return (0, crypto_1.createHash)(this.repeatKeyHashAlgorithm).update(str).digest('hex');
|
113
|
+
}
|
114
|
+
getRepeatJobId(name, nextMillis, namespace, jobId) {
|
115
|
+
const checksum = this.hash(`${name}${jobId || ''}${namespace}`);
|
116
|
+
return `repeat:${checksum}:${nextMillis}`;
|
117
|
+
// return `repeat:${jobId || ''}:${name}:${namespace}:${nextMillis}`;
|
118
|
+
//return `repeat:${name}:${namespace}:${nextMillis}`;
|
119
|
+
}
|
109
120
|
}
|
110
121
|
exports.Repeat = Repeat;
|
111
|
-
function getRepeatJobId(name, nextMillis, namespace, jobId) {
|
112
|
-
const checksum = md5(`${name}${jobId || ''}${namespace}`);
|
113
|
-
return `repeat:${checksum}:${nextMillis}`;
|
114
|
-
// return `repeat:${jobId || ''}:${name}:${namespace}:${nextMillis}`;
|
115
|
-
//return `repeat:${name}:${namespace}:${nextMillis}`;
|
116
|
-
}
|
117
122
|
function getRepeatKey(name, repeat) {
|
118
123
|
const endDate = repeat.endDate ? new Date(repeat.endDate).getTime() : '';
|
119
124
|
const tz = repeat.tz || '';
|
@@ -143,7 +148,4 @@ const getNextMillis = (millis, opts) => {
|
|
143
148
|
}
|
144
149
|
};
|
145
150
|
exports.getNextMillis = getNextMillis;
|
146
|
-
function md5(str) {
|
147
|
-
return (0, crypto_1.createHash)('md5').update(str).digest('hex');
|
148
|
-
}
|
149
151
|
//# sourceMappingURL=repeat.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"repeat.js","sourceRoot":"","sources":["../../../src/classes/repeat.ts"],"names":[],"mappings":";;;;AAAA,6CAA8C;AAC9C,mCAAoC;AAIpC,6CAAyC;AAGzC,MAAa,MAAO,SAAQ,sBAAS;
|
1
|
+
{"version":3,"file":"repeat.js","sourceRoot":"","sources":["../../../src/classes/repeat.ts"],"names":[],"mappings":"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"}
|
@@ -3,23 +3,11 @@
|
|
3
3
|
]]
|
4
4
|
|
5
5
|
-- Includes
|
6
|
-
--- @include "batches"
|
7
6
|
--- @include "removeJob"
|
8
7
|
|
9
|
-
local function getListItems(keyName, max)
|
10
|
-
return rcall('LRANGE', keyName, 0, max - 1)
|
11
|
-
end
|
12
|
-
|
13
8
|
local function removeJobs(keys, hard, baseKey, max)
|
14
9
|
for i, key in ipairs(keys) do
|
15
10
|
removeJob(key, hard, baseKey)
|
16
11
|
end
|
17
12
|
return max - #keys
|
18
13
|
end
|
19
|
-
|
20
|
-
local function removeListJobs(keyName, hard, baseKey, max)
|
21
|
-
local jobs = getListItems(keyName, max)
|
22
|
-
local count = removeJobs(jobs, hard, baseKey, max)
|
23
|
-
rcall("LTRIM", keyName, #jobs, -1)
|
24
|
-
return count
|
25
|
-
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
--[[
|
2
|
+
Functions to remove jobs.
|
3
|
+
]]
|
4
|
+
|
5
|
+
-- Includes
|
6
|
+
--- @include "removeJobs"
|
7
|
+
|
8
|
+
local function getListItems(keyName, max)
|
9
|
+
return rcall('LRANGE', keyName, 0, max - 1)
|
10
|
+
end
|
11
|
+
|
12
|
+
local function removeListJobs(keyName, hard, baseKey, max)
|
13
|
+
local jobs = getListItems(keyName, max)
|
14
|
+
local count = removeJobs(jobs, hard, baseKey, max)
|
15
|
+
rcall("LTRIM", keyName, #jobs, -1)
|
16
|
+
return count
|
17
|
+
end
|
@@ -26,15 +26,17 @@ local function updateParentDepsIfNeeded(parentKey, parentQueueKey, parentDepende
|
|
26
26
|
local parentDelayedKey = parentQueueKey .. ":delayed"
|
27
27
|
rcall("ZADD", parentDelayedKey, score, parentId)
|
28
28
|
|
29
|
+
rcall("XADD", parentQueueKey .. ":events", "*", "event", "delayed", "jobId", parentId,
|
30
|
+
"delay", delayedTimestamp)
|
29
31
|
addDelayMarkerIfNeeded(parentTarget, parentDelayedKey)
|
30
|
-
-- Standard or priority add
|
31
|
-
elseif priority == 0 then
|
32
|
-
rcall("RPUSH", parentTarget, parentId)
|
33
32
|
else
|
34
|
-
|
35
|
-
|
33
|
+
if priority == 0 then
|
34
|
+
rcall("RPUSH", parentTarget, parentId)
|
35
|
+
else
|
36
|
+
addJobWithPriority(parentWaitKey, parentQueueKey .. ":prioritized", priority, paused,
|
37
|
+
parentId, parentQueueKey .. ":pc")
|
38
|
+
end
|
39
|
+
rcall("XADD", parentQueueKey .. ":events", "*", "event", "waiting", "jobId", parentId, "prev", "waiting-children")
|
36
40
|
end
|
37
|
-
|
38
|
-
rcall("XADD", parentQueueKey .. ":events", "*", "event", "waiting", "jobId", parentId, "prev", "waiting-children")
|
39
41
|
end
|
40
42
|
end
|
@@ -144,15 +144,18 @@ local function updateParentDepsIfNeeded(parentKey, parentQueueKey, parentDepende
|
|
144
144
|
local score = delayedTimestamp * 0x1000
|
145
145
|
local parentDelayedKey = parentQueueKey .. ":delayed"
|
146
146
|
rcall("ZADD", parentDelayedKey, score, parentId)
|
147
|
+
rcall("XADD", parentQueueKey .. ":events", "*", "event", "delayed", "jobId", parentId,
|
148
|
+
"delay", delayedTimestamp)
|
147
149
|
addDelayMarkerIfNeeded(parentTarget, parentDelayedKey)
|
148
|
-
-- Standard or priority add
|
149
|
-
elseif priority == 0 then
|
150
|
-
rcall("RPUSH", parentTarget, parentId)
|
151
150
|
else
|
152
|
-
|
153
|
-
|
151
|
+
if priority == 0 then
|
152
|
+
rcall("RPUSH", parentTarget, parentId)
|
153
|
+
else
|
154
|
+
addJobWithPriority(parentWaitKey, parentQueueKey .. ":prioritized", priority, paused,
|
155
|
+
parentId, parentQueueKey .. ":pc")
|
156
|
+
end
|
157
|
+
rcall("XADD", parentQueueKey .. ":events", "*", "event", "waiting", "jobId", parentId, "prev", "waiting-children")
|
154
158
|
end
|
155
|
-
rcall("XADD", parentQueueKey .. ":events", "*", "event", "waiting", "jobId", parentId, "prev", "waiting-children")
|
156
159
|
end
|
157
160
|
end
|
158
161
|
if parentKey ~= nil then
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"addJob-9.js","sourceRoot":"","sources":["../../../src/scripts/addJob-9.ts"],"names":[],"mappings":";;;AAAA,MAAM,OAAO,GAAG
|
1
|
+
{"version":3,"file":"addJob-9.js","sourceRoot":"","sources":["../../../src/scripts/addJob-9.ts"],"names":[],"mappings":";;;AAAA,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqPf,CAAC;AACW,QAAA,MAAM,GAAG;IACpB,IAAI,EAAE,QAAQ;IACd,OAAO;IACP,IAAI,EAAE,CAAC;CACR,CAAC"}
|
@@ -18,21 +18,9 @@ local queueBaseKey = ARGV[1]
|
|
18
18
|
]]
|
19
19
|
-- Includes
|
20
20
|
--[[
|
21
|
-
|
22
|
-
Just a bit of warning, some commands as ZREM
|
23
|
-
could receive a maximum of 7000 parameters per call.
|
21
|
+
Functions to remove jobs.
|
24
22
|
]]
|
25
|
-
|
26
|
-
local i = 0
|
27
|
-
return function()
|
28
|
-
local from = i * batchSize + 1
|
29
|
-
i = i + 1
|
30
|
-
if (from <= n) then
|
31
|
-
local to = math.min(from + batchSize - 1, n)
|
32
|
-
return from, to
|
33
|
-
end
|
34
|
-
end
|
35
|
-
end
|
23
|
+
-- Includes
|
36
24
|
--[[
|
37
25
|
Function to remove job.
|
38
26
|
]]
|
@@ -131,15 +119,15 @@ local function removeJob(jobId, hard, baseKey)
|
|
131
119
|
rcall("DEL", jobKey, jobKey .. ':logs',
|
132
120
|
jobKey .. ':dependencies', jobKey .. ':processed')
|
133
121
|
end
|
134
|
-
local function getListItems(keyName, max)
|
135
|
-
return rcall('LRANGE', keyName, 0, max - 1)
|
136
|
-
end
|
137
122
|
local function removeJobs(keys, hard, baseKey, max)
|
138
123
|
for i, key in ipairs(keys) do
|
139
124
|
removeJob(key, hard, baseKey)
|
140
125
|
end
|
141
126
|
return max - #keys
|
142
127
|
end
|
128
|
+
local function getListItems(keyName, max)
|
129
|
+
return rcall('LRANGE', keyName, 0, max - 1)
|
130
|
+
end
|
143
131
|
local function removeListJobs(keyName, hard, baseKey, max)
|
144
132
|
local jobs = getListItems(keyName, max)
|
145
133
|
local count = removeJobs(jobs, hard, baseKey, max)
|
@@ -147,6 +135,22 @@ local function removeListJobs(keyName, hard, baseKey, max)
|
|
147
135
|
return count
|
148
136
|
end
|
149
137
|
-- Includes
|
138
|
+
--[[
|
139
|
+
Function to loop in batches.
|
140
|
+
Just a bit of warning, some commands as ZREM
|
141
|
+
could receive a maximum of 7000 parameters per call.
|
142
|
+
]]
|
143
|
+
local function batches(n, batchSize)
|
144
|
+
local i = 0
|
145
|
+
return function()
|
146
|
+
local from = i * batchSize + 1
|
147
|
+
i = i + 1
|
148
|
+
if (from <= n) then
|
149
|
+
local to = math.min(from + batchSize - 1, n)
|
150
|
+
return from, to
|
151
|
+
end
|
152
|
+
end
|
153
|
+
end
|
150
154
|
--[[
|
151
155
|
Function to get ZSet items.
|
152
156
|
]]
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"drain-4.js","sourceRoot":"","sources":["../../../src/scripts/drain-4.ts"],"names":[],"mappings":";;;AAAA,MAAM,OAAO,GAAG
|
1
|
+
{"version":3,"file":"drain-4.js","sourceRoot":"","sources":["../../../src/scripts/drain-4.ts"],"names":[],"mappings":";;;AAAA,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4Kf,CAAC;AACW,QAAA,KAAK,GAAG;IACnB,IAAI,EAAE,OAAO;IACb,OAAO;IACP,IAAI,EAAE,CAAC;CACR,CAAC"}
|
@@ -438,15 +438,18 @@ local function updateParentDepsIfNeeded(parentKey, parentQueueKey, parentDepende
|
|
438
438
|
local score = delayedTimestamp * 0x1000
|
439
439
|
local parentDelayedKey = parentQueueKey .. ":delayed"
|
440
440
|
rcall("ZADD", parentDelayedKey, score, parentId)
|
441
|
+
rcall("XADD", parentQueueKey .. ":events", "*", "event", "delayed", "jobId", parentId,
|
442
|
+
"delay", delayedTimestamp)
|
441
443
|
addDelayMarkerIfNeeded(parentTarget, parentDelayedKey)
|
442
|
-
-- Standard or priority add
|
443
|
-
elseif priority == 0 then
|
444
|
-
rcall("RPUSH", parentTarget, parentId)
|
445
444
|
else
|
446
|
-
|
447
|
-
|
445
|
+
if priority == 0 then
|
446
|
+
rcall("RPUSH", parentTarget, parentId)
|
447
|
+
else
|
448
|
+
addJobWithPriority(parentWaitKey, parentQueueKey .. ":prioritized", priority, paused,
|
449
|
+
parentId, parentQueueKey .. ":pc")
|
450
|
+
end
|
451
|
+
rcall("XADD", parentQueueKey .. ":events", "*", "event", "waiting", "jobId", parentId, "prev", "waiting-children")
|
448
452
|
end
|
449
|
-
rcall("XADD", parentQueueKey .. ":events", "*", "event", "waiting", "jobId", parentId, "prev", "waiting-children")
|
450
453
|
end
|
451
454
|
end
|
452
455
|
local function getRateLimitTTL(maxJobs, rateLimiterKey)
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"moveToFinished-13.js","sourceRoot":"","sources":["../../../src/scripts/moveToFinished-13.ts"],"names":[],"mappings":";;;AAAA,MAAM,OAAO,GAAG
|
1
|
+
{"version":3,"file":"moveToFinished-13.js","sourceRoot":"","sources":["../../../src/scripts/moveToFinished-13.ts"],"names":[],"mappings":";;;AAAA,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwmBf,CAAC;AACW,QAAA,cAAc,GAAG;IAC5B,IAAI,EAAE,gBAAgB;IACtB,OAAO;IACP,IAAI,EAAE,EAAE;CACT,CAAC"}
|
@@ -23,22 +23,6 @@ local rcall = redis.call
|
|
23
23
|
Functions to remove jobs.
|
24
24
|
]]
|
25
25
|
-- Includes
|
26
|
-
--[[
|
27
|
-
Function to loop in batches.
|
28
|
-
Just a bit of warning, some commands as ZREM
|
29
|
-
could receive a maximum of 7000 parameters per call.
|
30
|
-
]]
|
31
|
-
local function batches(n, batchSize)
|
32
|
-
local i = 0
|
33
|
-
return function()
|
34
|
-
local from = i * batchSize + 1
|
35
|
-
i = i + 1
|
36
|
-
if (from <= n) then
|
37
|
-
local to = math.min(from + batchSize - 1, n)
|
38
|
-
return from, to
|
39
|
-
end
|
40
|
-
end
|
41
|
-
end
|
42
26
|
--[[
|
43
27
|
Function to remove job.
|
44
28
|
]]
|
@@ -137,15 +121,19 @@ local function removeJob(jobId, hard, baseKey)
|
|
137
121
|
rcall("DEL", jobKey, jobKey .. ':logs',
|
138
122
|
jobKey .. ':dependencies', jobKey .. ':processed')
|
139
123
|
end
|
140
|
-
local function getListItems(keyName, max)
|
141
|
-
return rcall('LRANGE', keyName, 0, max - 1)
|
142
|
-
end
|
143
124
|
local function removeJobs(keys, hard, baseKey, max)
|
144
125
|
for i, key in ipairs(keys) do
|
145
126
|
removeJob(key, hard, baseKey)
|
146
127
|
end
|
147
128
|
return max - #keys
|
148
129
|
end
|
130
|
+
--[[
|
131
|
+
Functions to remove jobs.
|
132
|
+
]]
|
133
|
+
-- Includes
|
134
|
+
local function getListItems(keyName, max)
|
135
|
+
return rcall('LRANGE', keyName, 0, max - 1)
|
136
|
+
end
|
149
137
|
local function removeListJobs(keyName, hard, baseKey, max)
|
150
138
|
local jobs = getListItems(keyName, max)
|
151
139
|
local count = removeJobs(jobs, hard, baseKey, max)
|
@@ -153,6 +141,22 @@ local function removeListJobs(keyName, hard, baseKey, max)
|
|
153
141
|
return count
|
154
142
|
end
|
155
143
|
-- Includes
|
144
|
+
--[[
|
145
|
+
Function to loop in batches.
|
146
|
+
Just a bit of warning, some commands as ZREM
|
147
|
+
could receive a maximum of 7000 parameters per call.
|
148
|
+
]]
|
149
|
+
local function batches(n, batchSize)
|
150
|
+
local i = 0
|
151
|
+
return function()
|
152
|
+
local from = i * batchSize + 1
|
153
|
+
i = i + 1
|
154
|
+
if (from <= n) then
|
155
|
+
local to = math.min(from + batchSize - 1, n)
|
156
|
+
return from, to
|
157
|
+
end
|
158
|
+
end
|
159
|
+
end
|
156
160
|
--[[
|
157
161
|
Function to get ZSet items.
|
158
162
|
]]
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"obliterate-2.js","sourceRoot":"","sources":["../../../src/scripts/obliterate-2.ts"],"names":[],"mappings":";;;AAAA,MAAM,OAAO,GAAG
|
1
|
+
{"version":3,"file":"obliterate-2.js","sourceRoot":"","sources":["../../../src/scripts/obliterate-2.ts"],"names":[],"mappings":";;;AAAA,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8Of,CAAC;AACW,QAAA,UAAU,GAAG;IACxB,IAAI,EAAE,YAAY;IAClB,OAAO;IACP,IAAI,EAAE,CAAC;CACR,CAAC"}
|