bullmq 4.13.2 β†’ 4.14.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.
package/README.md CHANGED
@@ -38,7 +38,7 @@ You can find tutorials and news in this blog: https://blog.taskforce.sh/
38
38
 
39
39
  # Official FrontEnd
40
40
 
41
- [<img src="http://taskforce.sh/assets/logo_square.png" width="200" alt="Taskforce.sh, Inc" style="padding: 200px"/>](https://taskforce.sh)
41
+ [<img src="http://taskforce.sh/assets/logo_square.png" width="150" alt="Taskforce.sh, Inc" style="padding: 200px"/>](https://taskforce.sh)
42
42
 
43
43
  Supercharge your queues with a professional front end:
44
44
 
@@ -49,6 +49,32 @@ Supercharge your queues with a professional front end:
49
49
 
50
50
  Sign up at [Taskforce.sh](https://taskforce.sh)
51
51
 
52
+ # πŸš€ Sponsors πŸš€
53
+
54
+ <table cellspacing="0" cellpadding="0" border="0">
55
+ <tr>
56
+ <td>
57
+ <a href="https://www.dragonflydb.io/">
58
+ <img src="https://raw.githubusercontent.com/dragonflydb/dragonfly/main/.github/images/logo-full.svg" width=550 alt="Dragonfly" />
59
+ </a>
60
+ </td>
61
+ <td>
62
+ Dragonfly is a new Redisβ„’ drop-in replacement that is fully compatible with BullMQ and brings some important advantages over Redisβ„’ such as massive
63
+ better performance by utilizing all CPU cores available and faster and more memory efficient data structures. Read more <a href="https://www.dragonflydb.io/docs/integrations/bullmq">here</a> on how to use it with BullMQ.
64
+ </td>
65
+ </tr>
66
+ <tr>
67
+ <td>
68
+ <a href="https://dashboard.memetria.com/new?utm_campaign=BULLMQ">
69
+ <img src="https://www.memetria.com/images/logo/memetria-logo.svg" width=350 alt="Memetria for Redis" />
70
+ </a>
71
+ </td>
72
+ <td>
73
+ If you need high quality production Redis instances for your BullMQ project, please consider subscribing to <a href="https://dashboard.memetria.com/new?utm_campaign=BULLMQ">Memetria for Redis</a>, leaders in Redis hosting that works perfectly with BullMQ. Use the promo code "BULLMQ" when signing up to help us sponsor the development of BullMQ!
74
+ </td>
75
+ </tr>
76
+ </table>
77
+
52
78
  # Used by
53
79
 
54
80
  Some notable organizations using BullMQ:
@@ -115,8 +141,8 @@ Some notable organizations using BullMQ:
115
141
  <td valign="center">
116
142
  <a href="https://www.nocodb.com">
117
143
  <img
118
- src="https://www.nocodb.com/brand/logo-text.png"
119
- width="150"
144
+ src="https://github.com/nocodb/nocodb/raw/develop/packages/nc-gui/assets/img/icons/512x512.png"
145
+ width="50"
120
146
  alt="NoCodeDB"
121
147
  />
122
148
  </a>
@@ -200,14 +226,6 @@ Since there are a few job queue solutions, here is a table comparing them:
200
226
  | UI | βœ“ | βœ“ | βœ“ | βœ“ | | βœ“ |
201
227
  | Optimized for | Jobs / Messages | Jobs / Messages | Jobs / Messages | Jobs | Messages | Jobs |
202
228
 
203
- # πŸš€ Sponsor πŸš€
204
-
205
- <a href="https://dashboard.memetria.com/new?utm_campaign=BULLMQ">
206
- <img src="https://www.memetria.com/images/logo/memetria-logo.svg" width=300 alt="Memetria for Redis" />
207
- </a>
208
-
209
- If you need high quality production Redis instances for your BullMQ project, please consider subscribing to [Memetria for Redis](https://dashboard.memetria.com/new?utm_campaign=BULLMQ), leaders in Redis hosting that works perfectly with BullMQ. Use the promo code "BULLMQ" when signing up to help us sponsor the development of BullMQ!
210
-
211
229
  ## Contributing
212
230
 
213
231
  Fork the repo, make some changes, submit a pull-request! Here is the [contributing](contributing.md) doc that has more details.
@@ -530,8 +530,7 @@ class Scripts {
530
530
  throw this.finishedErrors(result, job.id, 'reprocessJob', state);
531
531
  }
532
532
  }
533
- async moveToActive(token, jobId) {
534
- const client = await this.queue.client;
533
+ async moveToActive(client, token, jobId) {
535
534
  const opts = this.queue.opts;
536
535
  const queueKeys = this.queue.keys;
537
536
  const keys = [
@@ -1 +1 @@
1
- {"version":3,"file":"scripts.js","sourceRoot":"","sources":["../../../src/classes/scripts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scripts.js","sourceRoot":"","sources":["../../../src/classes/scripts.ts"],"names":[],"mappings":"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"}
@@ -154,14 +154,40 @@ class Worker extends queue_base_1.QueueBase {
154
154
  const asyncFifoQueue = (this.asyncFifoQueue =
155
155
  new async_fifo_queue_1.AsyncFifoQueue());
156
156
  let tokenPostfix = 0;
157
+ const client = await this.client;
158
+ const bclient = await this.blockingConnection.client;
157
159
  while (!this.closing) {
160
+ let numTotal = asyncFifoQueue.numTotal();
158
161
  while (!this.waiting &&
159
- asyncFifoQueue.numTotal() < this.opts.concurrency &&
160
- (!this.limitUntil || asyncFifoQueue.numTotal() == 0)) {
162
+ numTotal < this.opts.concurrency &&
163
+ (!this.limitUntil || numTotal == 0)) {
161
164
  const token = `${this.id}:${tokenPostfix++}`;
162
- asyncFifoQueue.add(this.retryIfFailed(() => this.getNextJob(token), this.opts.runRetryDelay));
165
+ const fetchedJob = this.retryIfFailed(() => this._getNextJob(client, bclient, token, { block: true }), this.opts.runRetryDelay);
166
+ asyncFifoQueue.add(fetchedJob);
167
+ numTotal = asyncFifoQueue.numTotal();
168
+ if (this.waiting && numTotal > 1) {
169
+ // We have a job waiting but we have others that we could start processing already
170
+ break;
171
+ }
172
+ // We await here so that we fetch jobs in sequence, this is important to avoid unnecessary calls
173
+ // to Redis in high concurrency scenarios.
174
+ const job = await fetchedJob;
175
+ // No more jobs waiting but we have others that could start processing already
176
+ if (!job && numTotal > 1) {
177
+ break;
178
+ }
179
+ // If there are potential jobs to be processed and blockUntil is set, we should exit to avoid waiting
180
+ // for processing this job.
181
+ if (this.blockUntil) {
182
+ break;
183
+ }
184
+ }
185
+ let job;
186
+ // Since there can be undefined jobs in the queue (when a job fails or queue is empty)
187
+ // we iterate until we find a job.
188
+ while (!job && asyncFifoQueue.numTotal() > 0) {
189
+ job = await asyncFifoQueue.fetch();
163
190
  }
164
- const job = await asyncFifoQueue.fetch();
165
191
  if (job) {
166
192
  const token = job.token;
167
193
  asyncFifoQueue.add(this.retryIfFailed(() => this.processJob(job, token, () => asyncFifoQueue.numTotal() <= this.opts.concurrency, jobsInProgress), this.opts.runRetryDelay));
@@ -181,6 +207,9 @@ class Worker extends queue_base_1.QueueBase {
181
207
  * @returns a Job or undefined if no job was available in the queue.
182
208
  */
183
209
  async getNextJob(token, { block = true } = {}) {
210
+ return this._getNextJob(await this.client, await this.blockingConnection.client, token, { block });
211
+ }
212
+ async _getNextJob(client, bclient, token, { block = true } = {}) {
184
213
  var _a;
185
214
  if (this.paused) {
186
215
  if (block) {
@@ -194,15 +223,10 @@ class Worker extends queue_base_1.QueueBase {
194
223
  return;
195
224
  }
196
225
  if (this.drained && block && !this.limitUntil && !this.waiting) {
226
+ this.waiting = this.waitForJob(bclient);
197
227
  try {
198
- this.waiting = this.waitForJob();
199
- try {
200
- const jobId = await this.waiting;
201
- return this.moveToActive(token, jobId);
202
- }
203
- finally {
204
- this.waiting = null;
205
- }
228
+ const jobId = await this.waiting;
229
+ return this.moveToActive(client, token, jobId);
206
230
  }
207
231
  catch (err) {
208
232
  // Swallow error if locally paused or closing since we did force a disconnection
@@ -211,6 +235,9 @@ class Worker extends queue_base_1.QueueBase {
211
235
  throw err;
212
236
  }
213
237
  }
238
+ finally {
239
+ this.waiting = null;
240
+ }
214
241
  }
215
242
  else {
216
243
  if (this.limitUntil) {
@@ -218,7 +245,7 @@ class Worker extends queue_base_1.QueueBase {
218
245
  this.abortDelayController = new node_abort_controller_1.AbortController();
219
246
  await this.delay(this.limitUntil, this.abortDelayController);
220
247
  }
221
- return this.moveToActive(token);
248
+ return this.moveToActive(client, token);
222
249
  }
223
250
  }
224
251
  /**
@@ -229,37 +256,47 @@ class Worker extends queue_base_1.QueueBase {
229
256
  async rateLimit(expireTimeMs) {
230
257
  await this.client.then(client => client.set(this.keys.limiter, Number.MAX_SAFE_INTEGER, 'PX', expireTimeMs));
231
258
  }
232
- async moveToActive(token, jobId) {
259
+ async moveToActive(client, token, jobId) {
233
260
  // If we get the special delayed job ID, we pick the delay as the next
234
261
  // block timeout.
235
262
  if (jobId && jobId.startsWith('0:')) {
236
263
  this.blockUntil = parseInt(jobId.split(':')[1]) || 0;
264
+ // Remove marker from active list.
265
+ await client.lrem(this.keys.active, 1, jobId);
266
+ if (this.blockUntil > 0) {
267
+ return;
268
+ }
237
269
  }
238
- const [jobData, id, limitUntil, delayUntil] = await this.scripts.moveToActive(token, jobId);
239
- return this.nextJobFromJobData(jobData, id, limitUntil, delayUntil, token);
270
+ const [jobData, id, limitUntil, delayUntil] = await this.scripts.moveToActive(client, token, jobId);
271
+ this.updateDelays(limitUntil, delayUntil);
272
+ return this.nextJobFromJobData(jobData, id, token);
240
273
  }
241
- async waitForJob() {
242
- // I am not sure returning here this quick is a good idea, the main
243
- // loop could stay looping at a very high speed and consume all CPU time.
274
+ async waitForJob(bclient) {
244
275
  if (this.paused) {
245
276
  return;
246
277
  }
247
278
  try {
248
279
  const opts = this.opts;
249
280
  if (!this.closing) {
250
- const client = await this.blockingConnection.client;
251
281
  let blockTimeout = Math.max(this.blockUntil
252
282
  ? (this.blockUntil - Date.now()) / 1000
253
- : opts.drainDelay, 0.01);
254
- // Only Redis v6.0.0 and above supports doubles as block time
255
- blockTimeout = this.blockingConnection.capabilities.canDoubleTimeout
256
- ? blockTimeout
257
- : Math.ceil(blockTimeout);
258
- // We restrict the maximum block timeout to 10 second to avoid
259
- // blocking the connection for too long in the case of reconnections
260
- // reference: https://github.com/taskforcesh/bullmq/issues/1658
261
- blockTimeout = Math.min(blockTimeout, maximumBlockTimeout);
262
- const jobId = await client.brpoplpush(this.keys.wait, this.keys.active, blockTimeout);
283
+ : opts.drainDelay, 0);
284
+ let jobId;
285
+ // Blocking for less than 50ms is useless.
286
+ if (blockTimeout > 0.05) {
287
+ blockTimeout = this.blockingConnection.capabilities.canDoubleTimeout
288
+ ? blockTimeout
289
+ : Math.ceil(blockTimeout);
290
+ // We restrict the maximum block timeout to 10 second to avoid
291
+ // blocking the connection for too long in the case of reconnections
292
+ // reference: https://github.com/taskforcesh/bullmq/issues/1658
293
+ blockTimeout = Math.min(blockTimeout, maximumBlockTimeout);
294
+ jobId = await bclient.brpoplpush(this.keys.wait, this.keys.active, blockTimeout);
295
+ }
296
+ else {
297
+ jobId = await bclient.rpoplpush(this.keys.wait, this.keys.active);
298
+ }
299
+ this.blockUntil = 0;
263
300
  return jobId;
264
301
  }
265
302
  }
@@ -282,21 +319,18 @@ class Worker extends queue_base_1.QueueBase {
282
319
  async delay(milliseconds, abortController) {
283
320
  await (0, utils_1.delay)(milliseconds || utils_1.DELAY_TIME_1, abortController);
284
321
  }
285
- async nextJobFromJobData(jobData, jobId, limitUntil, delayUntil, token) {
322
+ updateDelays(limitUntil = 0, delayUntil = 0) {
323
+ this.limitUntil = Math.max(limitUntil, 0) || 0;
324
+ this.blockUntil = Math.max(delayUntil, 0) || 0;
325
+ }
326
+ async nextJobFromJobData(jobData, jobId, token) {
286
327
  if (!jobData) {
287
328
  if (!this.drained) {
288
329
  this.emit('drained');
289
330
  this.drained = true;
290
- this.blockUntil = 0;
291
331
  }
292
332
  }
293
- // Update limitUntil and delayUntil
294
- // TODO: Refactor out of this function
295
- this.limitUntil = Math.max(limitUntil, 0) || 0;
296
- if (delayUntil) {
297
- this.blockUntil = Math.max(delayUntil, 0) || 0;
298
- }
299
- if (jobData) {
333
+ else {
300
334
  this.drained = false;
301
335
  const job = this.createJob(jobData, jobId);
302
336
  job.token = token;
@@ -316,7 +350,8 @@ class Worker extends queue_base_1.QueueBase {
316
350
  const completed = await job.moveToCompleted(result, token, fetchNextCallback() && !(this.closing || this.paused));
317
351
  this.emit('completed', job, result, 'active');
318
352
  const [jobData, jobId, limitUntil, delayUntil] = completed || [];
319
- return this.nextJobFromJobData(jobData, jobId, limitUntil, delayUntil, token);
353
+ this.updateDelays(limitUntil, delayUntil);
354
+ return this.nextJobFromJobData(jobData, jobId, token);
320
355
  }
321
356
  };
322
357
  const handleFailed = async (err) => {
@@ -1 +1 @@
1
- {"version":3,"file":"worker.js","sourceRoot":"","sources":["../../../src/classes/worker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worker.js","sourceRoot":"","sources":["../../../src/classes/worker.ts"],"names":[],"mappings":"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"}
@@ -136,14 +136,17 @@ if waitChildrenKey ~= nil then
136
136
  rcall("ZADD", waitChildrenKey, timestamp, jobId)
137
137
  rcall("XADD", KEYS[8], "MAXLEN", "~", maxEvents, "*", "event", "waiting-children", "jobId", jobId)
138
138
  elseif (delayedTimestamp ~= 0) then
139
+ local delayedKey = KEYS[5]
139
140
  local score = delayedTimestamp * 0x1000 + bit.band(jobCounter, 0xfff)
140
- rcall("ZADD", KEYS[5], score, jobId)
141
+
142
+ rcall("ZADD", delayedKey, score, jobId)
141
143
  rcall("XADD", KEYS[8], "MAXLEN", "~", maxEvents, "*", "event", "delayed", "jobId", jobId,
142
144
  "delay", delayedTimestamp)
145
+
143
146
  -- If wait list is empty, and this delayed job is the next one to be processed,
144
147
  -- then we need to signal the workers by adding a dummy job (jobId 0:delay) to the wait list.
145
148
  local target = getTargetQueueList(KEYS[3], KEYS[1], KEYS[2])
146
- addDelayMarkerIfNeeded(target, KEYS[5])
149
+ addDelayMarkerIfNeeded(target, delayedKey)
147
150
  else
148
151
  local target, paused = getTargetQueueList(KEYS[3], KEYS[1], KEYS[2])
149
152
 
@@ -6,10 +6,22 @@
6
6
  --- @include "getNextDelayedTimestamp"
7
7
 
8
8
  local function addDelayMarkerIfNeeded(targetKey, delayedKey)
9
- if rcall("LLEN", targetKey) == 0 then
9
+ local waitLen = rcall("LLEN", targetKey)
10
+ if waitLen <= 1 then
10
11
  local nextTimestamp = getNextDelayedTimestamp(delayedKey)
11
12
  if nextTimestamp ~= nil then
12
- rcall("LPUSH", targetKey, "0:" .. nextTimestamp)
13
+ -- Check if there is already a marker with older timestamp
14
+ -- if there is, we need to replace it.
15
+ if waitLen == 1 then
16
+ local marker = rcall("LINDEX", targetKey, 0)
17
+ local oldTimestamp = tonumber(marker:sub(3))
18
+ if oldTimestamp and oldTimestamp > nextTimestamp then
19
+ rcall("LSET", targetKey, 0, "0:" .. nextTimestamp)
20
+ end
21
+ else
22
+ -- if there is no marker, then we need to add one
23
+ rcall("LPUSH", targetKey, "0:" .. nextTimestamp)
24
+ end
13
25
  end
14
26
  end
15
27
  end
@@ -70,10 +70,22 @@ local function getNextDelayedTimestamp(delayedKey)
70
70
  end
71
71
  end
72
72
  local function addDelayMarkerIfNeeded(targetKey, delayedKey)
73
- if rcall("LLEN", targetKey) == 0 then
73
+ local waitLen = rcall("LLEN", targetKey)
74
+ if waitLen <= 1 then
74
75
  local nextTimestamp = getNextDelayedTimestamp(delayedKey)
75
76
  if nextTimestamp ~= nil then
76
- rcall("LPUSH", targetKey, "0:" .. nextTimestamp)
77
+ -- Check if there is already a marker with older timestamp
78
+ -- if there is, we need to replace it.
79
+ if waitLen == 1 then
80
+ local marker = rcall("LINDEX", targetKey, 0)
81
+ local oldTimestamp = tonumber(marker:sub(3))
82
+ if oldTimestamp and oldTimestamp > nextTimestamp then
83
+ rcall("LSET", targetKey, 0, "0:" .. nextTimestamp)
84
+ end
85
+ else
86
+ -- if there is no marker, then we need to add one
87
+ rcall("LPUSH", targetKey, "0:" .. nextTimestamp)
88
+ end
77
89
  end
78
90
  end
79
91
  end
@@ -215,14 +227,15 @@ if waitChildrenKey ~= nil then
215
227
  rcall("ZADD", waitChildrenKey, timestamp, jobId)
216
228
  rcall("XADD", KEYS[8], "MAXLEN", "~", maxEvents, "*", "event", "waiting-children", "jobId", jobId)
217
229
  elseif (delayedTimestamp ~= 0) then
230
+ local delayedKey = KEYS[5]
218
231
  local score = delayedTimestamp * 0x1000 + bit.band(jobCounter, 0xfff)
219
- rcall("ZADD", KEYS[5], score, jobId)
232
+ rcall("ZADD", delayedKey, score, jobId)
220
233
  rcall("XADD", KEYS[8], "MAXLEN", "~", maxEvents, "*", "event", "delayed", "jobId", jobId,
221
234
  "delay", delayedTimestamp)
222
235
  -- If wait list is empty, and this delayed job is the next one to be processed,
223
236
  -- then we need to signal the workers by adding a dummy job (jobId 0:delay) to the wait list.
224
237
  local target = getTargetQueueList(KEYS[3], KEYS[1], KEYS[2])
225
- addDelayMarkerIfNeeded(target, KEYS[5])
238
+ addDelayMarkerIfNeeded(target, delayedKey)
226
239
  else
227
240
  local target, paused = getTargetQueueList(KEYS[3], KEYS[1], KEYS[2])
228
241
  -- Standard or priority add
@@ -1 +1 @@
1
- {"version":3,"file":"addJob-9.js","sourceRoot":"","sources":["../../../src/scripts/addJob-9.ts"],"names":[],"mappings":";;;AAAA,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmPf,CAAC;AACW,QAAA,MAAM,GAAG;IACpB,IAAI,EAAE,QAAQ;IACd,OAAO;IACP,IAAI,EAAE,CAAC;CACR,CAAC"}
1
+ {"version":3,"file":"addJob-9.js","sourceRoot":"","sources":["../../../src/scripts/addJob-9.ts"],"names":[],"mappings":";;;AAAA,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgQf,CAAC;AACW,QAAA,MAAM,GAAG;IACpB,IAAI,EAAE,QAAQ;IACd,OAAO;IACP,IAAI,EAAE,CAAC;CACR,CAAC"}
@@ -45,10 +45,22 @@ local function getNextDelayedTimestamp(delayedKey)
45
45
  end
46
46
  end
47
47
  local function addDelayMarkerIfNeeded(targetKey, delayedKey)
48
- if rcall("LLEN", targetKey) == 0 then
48
+ local waitLen = rcall("LLEN", targetKey)
49
+ if waitLen <= 1 then
49
50
  local nextTimestamp = getNextDelayedTimestamp(delayedKey)
50
51
  if nextTimestamp ~= nil then
51
- rcall("LPUSH", targetKey, "0:" .. nextTimestamp)
52
+ -- Check if there is already a marker with older timestamp
53
+ -- if there is, we need to replace it.
54
+ if waitLen == 1 then
55
+ local marker = rcall("LINDEX", targetKey, 0)
56
+ local oldTimestamp = tonumber(marker:sub(3))
57
+ if oldTimestamp and oldTimestamp > nextTimestamp then
58
+ rcall("LSET", targetKey, 0, "0:" .. nextTimestamp)
59
+ end
60
+ else
61
+ -- if there is no marker, then we need to add one
62
+ rcall("LPUSH", targetKey, "0:" .. nextTimestamp)
63
+ end
52
64
  end
53
65
  end
54
66
  end
@@ -1 +1 @@
1
- {"version":3,"file":"moveToDelayed-8.js","sourceRoot":"","sources":["../../../src/scripts/moveToDelayed-8.ts"],"names":[],"mappings":";;;AAAA,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkJf,CAAC;AACW,QAAA,aAAa,GAAG;IAC3B,IAAI,EAAE,eAAe;IACrB,OAAO;IACP,IAAI,EAAE,CAAC;CACR,CAAC"}
1
+ {"version":3,"file":"moveToDelayed-8.js","sourceRoot":"","sources":["../../../src/scripts/moveToDelayed-8.ts"],"names":[],"mappings":";;;AAAA,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8Jf,CAAC;AACW,QAAA,aAAa,GAAG;IAC3B,IAAI,EAAE,eAAe;IACrB,OAAO;IACP,IAAI,EAAE,CAAC;CACR,CAAC"}
@@ -206,10 +206,22 @@ end
206
206
  ]]
207
207
  -- Includes
208
208
  local function addDelayMarkerIfNeeded(targetKey, delayedKey)
209
- if rcall("LLEN", targetKey) == 0 then
209
+ local waitLen = rcall("LLEN", targetKey)
210
+ if waitLen <= 1 then
210
211
  local nextTimestamp = getNextDelayedTimestamp(delayedKey)
211
212
  if nextTimestamp ~= nil then
212
- rcall("LPUSH", targetKey, "0:" .. nextTimestamp)
213
+ -- Check if there is already a marker with older timestamp
214
+ -- if there is, we need to replace it.
215
+ if waitLen == 1 then
216
+ local marker = rcall("LINDEX", targetKey, 0)
217
+ local oldTimestamp = tonumber(marker:sub(3))
218
+ if oldTimestamp and oldTimestamp > nextTimestamp then
219
+ rcall("LSET", targetKey, 0, "0:" .. nextTimestamp)
220
+ end
221
+ else
222
+ -- if there is no marker, then we need to add one
223
+ rcall("LPUSH", targetKey, "0:" .. nextTimestamp)
224
+ end
213
225
  end
214
226
  end
215
227
  end
@@ -1 +1 @@
1
- {"version":3,"file":"moveToFinished-13.js","sourceRoot":"","sources":["../../../src/scripts/moveToFinished-13.ts"],"names":[],"mappings":";;;AAAA,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAooBf,CAAC;AACW,QAAA,cAAc,GAAG;IAC5B,IAAI,EAAE,gBAAgB;IACtB,OAAO;IACP,IAAI,EAAE,EAAE;CACT,CAAC"}
1
+ {"version":3,"file":"moveToFinished-13.js","sourceRoot":"","sources":["../../../src/scripts/moveToFinished-13.ts"],"names":[],"mappings":";;;AAAA,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgpBf,CAAC;AACW,QAAA,cAAc,GAAG;IAC5B,IAAI,EAAE,gBAAgB;IACtB,OAAO;IACP,IAAI,EAAE,EAAE;CACT,CAAC"}