bullmq 5.16.0 → 5.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. package/dist/cjs/classes/child-pool.js +2 -2
  2. package/dist/cjs/classes/child-pool.js.map +1 -1
  3. package/dist/cjs/classes/job.js +5 -1
  4. package/dist/cjs/classes/job.js.map +1 -1
  5. package/dist/cjs/classes/queue-events.js.map +1 -1
  6. package/dist/cjs/classes/queue-getters.js +10 -0
  7. package/dist/cjs/classes/queue-getters.js.map +1 -1
  8. package/dist/cjs/classes/queue-keys.js +1 -1
  9. package/dist/cjs/classes/queue-keys.js.map +1 -1
  10. package/dist/cjs/classes/queue.js +10 -0
  11. package/dist/cjs/classes/queue.js.map +1 -1
  12. package/dist/cjs/classes/sandbox.js +57 -47
  13. package/dist/cjs/classes/sandbox.js.map +1 -1
  14. package/dist/cjs/classes/scripts.js +1 -1
  15. package/dist/cjs/classes/scripts.js.map +1 -1
  16. package/dist/cjs/commands/addDelayedJob-6.lua +7 -7
  17. package/dist/cjs/commands/addParentJob-4.lua +7 -7
  18. package/dist/cjs/commands/addPrioritizedJob-8.lua +7 -7
  19. package/dist/cjs/commands/addStandardJob-8.lua +7 -7
  20. package/dist/cjs/commands/includes/deduplicateJob.lua +25 -0
  21. package/dist/cjs/scripts/addDelayedJob-6.js +18 -16
  22. package/dist/cjs/scripts/addDelayedJob-6.js.map +1 -1
  23. package/dist/cjs/scripts/addParentJob-4.js +18 -16
  24. package/dist/cjs/scripts/addParentJob-4.js.map +1 -1
  25. package/dist/cjs/scripts/addPrioritizedJob-8.js +18 -16
  26. package/dist/cjs/scripts/addPrioritizedJob-8.js.map +1 -1
  27. package/dist/cjs/scripts/addStandardJob-8.js +18 -16
  28. package/dist/cjs/scripts/addStandardJob-8.js.map +1 -1
  29. package/dist/cjs/tsconfig-cjs.tsbuildinfo +1 -1
  30. package/dist/esm/classes/child-pool.d.ts +1 -1
  31. package/dist/esm/classes/child-pool.js +2 -2
  32. package/dist/esm/classes/child-pool.js.map +1 -1
  33. package/dist/esm/classes/job.d.ts +5 -0
  34. package/dist/esm/classes/job.js +5 -1
  35. package/dist/esm/classes/job.js.map +1 -1
  36. package/dist/esm/classes/queue-events.d.ts +10 -0
  37. package/dist/esm/classes/queue-events.js.map +1 -1
  38. package/dist/esm/classes/queue-getters.d.ts +7 -0
  39. package/dist/esm/classes/queue-getters.js +10 -0
  40. package/dist/esm/classes/queue-getters.js.map +1 -1
  41. package/dist/esm/classes/queue-keys.js +1 -1
  42. package/dist/esm/classes/queue-keys.js.map +1 -1
  43. package/dist/esm/classes/queue.d.ts +7 -0
  44. package/dist/esm/classes/queue.js +10 -0
  45. package/dist/esm/classes/queue.js.map +1 -1
  46. package/dist/esm/classes/sandbox.js +57 -47
  47. package/dist/esm/classes/sandbox.js.map +1 -1
  48. package/dist/esm/classes/scripts.js +1 -1
  49. package/dist/esm/classes/scripts.js.map +1 -1
  50. package/dist/esm/commands/addDelayedJob-6.lua +7 -7
  51. package/dist/esm/commands/addParentJob-4.lua +7 -7
  52. package/dist/esm/commands/addPrioritizedJob-8.lua +7 -7
  53. package/dist/esm/commands/addStandardJob-8.lua +7 -7
  54. package/dist/esm/commands/includes/deduplicateJob.lua +25 -0
  55. package/dist/esm/interfaces/job-json.d.ts +1 -0
  56. package/dist/esm/scripts/addDelayedJob-6.js +18 -16
  57. package/dist/esm/scripts/addDelayedJob-6.js.map +1 -1
  58. package/dist/esm/scripts/addParentJob-4.js +18 -16
  59. package/dist/esm/scripts/addParentJob-4.js.map +1 -1
  60. package/dist/esm/scripts/addPrioritizedJob-8.js +18 -16
  61. package/dist/esm/scripts/addPrioritizedJob-8.js.map +1 -1
  62. package/dist/esm/scripts/addStandardJob-8.js +18 -16
  63. package/dist/esm/scripts/addStandardJob-8.js.map +1 -1
  64. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  65. package/dist/esm/types/job-options.d.ts +5 -0
  66. package/package.json +1 -1
  67. package/dist/cjs/commands/includes/debounceJob.lua +0 -23
  68. package/dist/esm/commands/includes/debounceJob.lua +0 -23
@@ -34,7 +34,7 @@
34
34
  [7] parent dependencies key.
35
35
  [8] parent? {id, queueKey}
36
36
  [9] repeat job key
37
- [10] debounce key
37
+ [10] deduplication key
38
38
 
39
39
  ARGV[2] Json stringified job data
40
40
  ARGV[3] msgpacked options
@@ -57,12 +57,12 @@ local opts = cmsgpack.unpack(ARGV[3])
57
57
  local parentKey = args[5]
58
58
  local parent = args[8]
59
59
  local repeatJobKey = args[9]
60
- local debounceKey = args[10]
60
+ local deduplicationKey = args[10]
61
61
  local parentData
62
62
 
63
63
  -- Includes
64
64
  --- @include "includes/addJobInTargetList"
65
- --- @include "includes/debounceJob"
65
+ --- @include "includes/deduplicateJob"
66
66
  --- @include "includes/getOrSetMaxEvents"
67
67
  --- @include "includes/getTargetQueueList"
68
68
  --- @include "includes/handleDuplicatedJob"
@@ -94,10 +94,10 @@ else
94
94
  end
95
95
  end
96
96
 
97
- local debouncedJobId = debounceJob(args[1], opts['de'],
98
- jobId, debounceKey, eventsKey, maxEvents)
99
- if debouncedJobId then
100
- return debouncedJobId
97
+ local deduplicationJobId = deduplicateJob(args[1], opts['de'],
98
+ jobId, deduplicationKey, eventsKey, maxEvents)
99
+ if deduplicationJobId then
100
+ return deduplicationJobId
101
101
  end
102
102
 
103
103
  -- Store the job.
@@ -0,0 +1,25 @@
1
+ --[[
2
+ Function to debounce a job.
3
+ ]]
4
+
5
+ local function deduplicateJob(prefixKey, deduplicationOpts, jobId, deduplicationKey, eventsKey, maxEvents)
6
+ local deduplicationId = deduplicationOpts and deduplicationOpts['id']
7
+ if deduplicationId then
8
+ local ttl = deduplicationOpts['ttl']
9
+ local deduplicationKeyExists
10
+ if ttl then
11
+ deduplicationKeyExists = not rcall('SET', deduplicationKey, jobId, 'PX', ttl, 'NX')
12
+ else
13
+ deduplicationKeyExists = not rcall('SET', deduplicationKey, jobId, 'NX')
14
+ end
15
+ if deduplicationKeyExists then
16
+ local currentDebounceJobId = rcall('GET', deduplicationKey)
17
+ rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event",
18
+ "debounced", "jobId", currentDebounceJobId, "debounceId", deduplicationId)
19
+ rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event",
20
+ "deduplicated", "jobId", currentDebounceJobId, "deduplicationId", deduplicationId)
21
+ return currentDebounceJobId
22
+ end
23
+ end
24
+ end
25
+
@@ -18,6 +18,7 @@ export interface JobJson {
18
18
  parentKey?: string;
19
19
  repeatJobKey?: string;
20
20
  debounceId?: string;
21
+ deduplicationId?: string;
21
22
  processedBy?: string;
22
23
  }
23
24
  export interface JobJsonRaw {
@@ -22,7 +22,7 @@ const content = `--[[
22
22
  [7] parent dependencies key.
23
23
  [8] parent? {id, queueKey}
24
24
  [9] repeat job key
25
- [10] debounce key
25
+ [10] deduplication key
26
26
  ARGV[2] Json stringified job data
27
27
  ARGV[3] msgpacked options
28
28
  Output:
@@ -42,7 +42,7 @@ local data = ARGV[2]
42
42
  local parentKey = args[5]
43
43
  local parent = args[8]
44
44
  local repeatJobKey = args[9]
45
- local debounceKey = args[10]
45
+ local deduplicationKey = args[10]
46
46
  local parentData
47
47
  -- Includes
48
48
  --[[
@@ -72,20 +72,22 @@ end
72
72
  --[[
73
73
  Function to debounce a job.
74
74
  ]]
75
- local function debounceJob(prefixKey, debounceOpts, jobId, debounceKey, eventsKey, maxEvents)
76
- local debounceId = debounceOpts and debounceOpts['id']
77
- if debounceId then
78
- local ttl = debounceOpts['ttl']
79
- local debounceKeyExists
75
+ local function deduplicateJob(prefixKey, deduplicationOpts, jobId, deduplicationKey, eventsKey, maxEvents)
76
+ local deduplicationId = deduplicationOpts and deduplicationOpts['id']
77
+ if deduplicationId then
78
+ local ttl = deduplicationOpts['ttl']
79
+ local deduplicationKeyExists
80
80
  if ttl then
81
- debounceKeyExists = not rcall('SET', debounceKey, jobId, 'PX', ttl, 'NX')
81
+ deduplicationKeyExists = not rcall('SET', deduplicationKey, jobId, 'PX', ttl, 'NX')
82
82
  else
83
- debounceKeyExists = not rcall('SET', debounceKey, jobId, 'NX')
83
+ deduplicationKeyExists = not rcall('SET', deduplicationKey, jobId, 'NX')
84
84
  end
85
- if debounceKeyExists then
86
- local currentDebounceJobId = rcall('GET', debounceKey)
85
+ if deduplicationKeyExists then
86
+ local currentDebounceJobId = rcall('GET', deduplicationKey)
87
87
  rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event",
88
- "debounced", "jobId", currentDebounceJobId, "debounceId", debounceId)
88
+ "debounced", "jobId", currentDebounceJobId, "debounceId", deduplicationId)
89
+ rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event",
90
+ "deduplicated", "jobId", currentDebounceJobId, "deduplicationId", deduplicationId)
89
91
  return currentDebounceJobId
90
92
  end
91
93
  end
@@ -338,10 +340,10 @@ else
338
340
  maxEvents, timestamp)
339
341
  end
340
342
  end
341
- local debouncedJobId = debounceJob(args[1], opts['de'],
342
- jobId, debounceKey, eventsKey, maxEvents)
343
- if debouncedJobId then
344
- return debouncedJobId
343
+ local deduplicationJobId = deduplicateJob(args[1], opts['de'],
344
+ jobId, deduplicationKey, eventsKey, maxEvents)
345
+ if deduplicationJobId then
346
+ return deduplicationJobId
345
347
  end
346
348
  -- Store the job.
347
349
  local delay, priority = storeJob(eventsKey, jobIdKey, jobId, args[3], ARGV[2],
@@ -1 +1 @@
1
- {"version":3,"file":"addDelayedJob-6.js","sourceRoot":"","sources":["../../../src/scripts/addDelayedJob-6.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyWf,CAAC;AACF,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,IAAI,EAAE,eAAe;IACrB,OAAO;IACP,IAAI,EAAE,CAAC;CACR,CAAC"}
1
+ {"version":3,"file":"addDelayedJob-6.js","sourceRoot":"","sources":["../../../src/scripts/addDelayedJob-6.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2Wf,CAAC;AACF,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,IAAI,EAAE,eAAe;IACrB,OAAO;IACP,IAAI,EAAE,CAAC;CACR,CAAC"}
@@ -18,7 +18,7 @@ const content = `--[[
18
18
  [7] parent dependencies key.
19
19
  [8] parent? {id, queueKey}
20
20
  [9] repeat job key
21
- [10] debounce key
21
+ [10] deduplication key
22
22
  ARGV[2] Json stringified job data
23
23
  ARGV[3] msgpacked options
24
24
  Output:
@@ -38,26 +38,28 @@ local opts = cmsgpack.unpack(ARGV[3])
38
38
  local parentKey = args[5]
39
39
  local parent = args[8]
40
40
  local repeatJobKey = args[9]
41
- local debounceKey = args[10]
41
+ local deduplicationKey = args[10]
42
42
  local parentData
43
43
  -- Includes
44
44
  --[[
45
45
  Function to debounce a job.
46
46
  ]]
47
- local function debounceJob(prefixKey, debounceOpts, jobId, debounceKey, eventsKey, maxEvents)
48
- local debounceId = debounceOpts and debounceOpts['id']
49
- if debounceId then
50
- local ttl = debounceOpts['ttl']
51
- local debounceKeyExists
47
+ local function deduplicateJob(prefixKey, deduplicationOpts, jobId, deduplicationKey, eventsKey, maxEvents)
48
+ local deduplicationId = deduplicationOpts and deduplicationOpts['id']
49
+ if deduplicationId then
50
+ local ttl = deduplicationOpts['ttl']
51
+ local deduplicationKeyExists
52
52
  if ttl then
53
- debounceKeyExists = not rcall('SET', debounceKey, jobId, 'PX', ttl, 'NX')
53
+ deduplicationKeyExists = not rcall('SET', deduplicationKey, jobId, 'PX', ttl, 'NX')
54
54
  else
55
- debounceKeyExists = not rcall('SET', debounceKey, jobId, 'NX')
55
+ deduplicationKeyExists = not rcall('SET', deduplicationKey, jobId, 'NX')
56
56
  end
57
- if debounceKeyExists then
58
- local currentDebounceJobId = rcall('GET', debounceKey)
57
+ if deduplicationKeyExists then
58
+ local currentDebounceJobId = rcall('GET', deduplicationKey)
59
59
  rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event",
60
- "debounced", "jobId", currentDebounceJobId, "debounceId", debounceId)
60
+ "debounced", "jobId", currentDebounceJobId, "debounceId", deduplicationId)
61
+ rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event",
62
+ "deduplicated", "jobId", currentDebounceJobId, "deduplicationId", deduplicationId)
61
63
  return currentDebounceJobId
62
64
  end
63
65
  end
@@ -309,10 +311,10 @@ else
309
311
  maxEvents, timestamp)
310
312
  end
311
313
  end
312
- local debouncedJobId = debounceJob(args[1], opts['de'],
313
- jobId, debounceKey, eventsKey, maxEvents)
314
- if debouncedJobId then
315
- return debouncedJobId
314
+ local deduplicationJobId = deduplicateJob(args[1], opts['de'],
315
+ jobId, deduplicationKey, eventsKey, maxEvents)
316
+ if deduplicationJobId then
317
+ return deduplicationJobId
316
318
  end
317
319
  -- Store the job.
318
320
  storeJob(eventsKey, jobIdKey, jobId, args[3], ARGV[2], opts, timestamp,
@@ -1 +1 @@
1
- {"version":3,"file":"addParentJob-4.js","sourceRoot":"","sources":["../../../src/scripts/addParentJob-4.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwUf,CAAC;AACF,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,IAAI,EAAE,cAAc;IACpB,OAAO;IACP,IAAI,EAAE,CAAC;CACR,CAAC"}
1
+ {"version":3,"file":"addParentJob-4.js","sourceRoot":"","sources":["../../../src/scripts/addParentJob-4.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0Uf,CAAC;AACF,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,IAAI,EAAE,cAAc;IACpB,OAAO;IACP,IAAI,EAAE,CAAC;CACR,CAAC"}
@@ -22,7 +22,7 @@ const content = `--[[
22
22
  [7] parent dependencies key.
23
23
  [8] parent? {id, queueKey}
24
24
  [9] repeat job key
25
- [10] debounce key
25
+ [10] deduplication key
26
26
  ARGV[2] Json stringified job data
27
27
  ARGV[3] msgpacked options
28
28
  Output:
@@ -45,7 +45,7 @@ local opts = cmsgpack.unpack(ARGV[3])
45
45
  local parentKey = args[5]
46
46
  local parent = args[8]
47
47
  local repeatJobKey = args[9]
48
- local debounceKey = args[10]
48
+ local deduplicationKey = args[10]
49
49
  local parentData
50
50
  -- Includes
51
51
  --[[
@@ -70,20 +70,22 @@ end
70
70
  --[[
71
71
  Function to debounce a job.
72
72
  ]]
73
- local function debounceJob(prefixKey, debounceOpts, jobId, debounceKey, eventsKey, maxEvents)
74
- local debounceId = debounceOpts and debounceOpts['id']
75
- if debounceId then
76
- local ttl = debounceOpts['ttl']
77
- local debounceKeyExists
73
+ local function deduplicateJob(prefixKey, deduplicationOpts, jobId, deduplicationKey, eventsKey, maxEvents)
74
+ local deduplicationId = deduplicationOpts and deduplicationOpts['id']
75
+ if deduplicationId then
76
+ local ttl = deduplicationOpts['ttl']
77
+ local deduplicationKeyExists
78
78
  if ttl then
79
- debounceKeyExists = not rcall('SET', debounceKey, jobId, 'PX', ttl, 'NX')
79
+ deduplicationKeyExists = not rcall('SET', deduplicationKey, jobId, 'PX', ttl, 'NX')
80
80
  else
81
- debounceKeyExists = not rcall('SET', debounceKey, jobId, 'NX')
81
+ deduplicationKeyExists = not rcall('SET', deduplicationKey, jobId, 'NX')
82
82
  end
83
- if debounceKeyExists then
84
- local currentDebounceJobId = rcall('GET', debounceKey)
83
+ if deduplicationKeyExists then
84
+ local currentDebounceJobId = rcall('GET', deduplicationKey)
85
85
  rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event",
86
- "debounced", "jobId", currentDebounceJobId, "debounceId", debounceId)
86
+ "debounced", "jobId", currentDebounceJobId, "debounceId", deduplicationId)
87
+ rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event",
88
+ "deduplicated", "jobId", currentDebounceJobId, "deduplicationId", deduplicationId)
87
89
  return currentDebounceJobId
88
90
  end
89
91
  end
@@ -316,10 +318,10 @@ else
316
318
  maxEvents, timestamp)
317
319
  end
318
320
  end
319
- local debouncedJobId = debounceJob(args[1], opts['de'],
320
- jobId, debounceKey, eventsKey, maxEvents)
321
- if debouncedJobId then
322
- return debouncedJobId
321
+ local deduplicationJobId = deduplicateJob(args[1], opts['de'],
322
+ jobId, deduplicationKey, eventsKey, maxEvents)
323
+ if deduplicationJobId then
324
+ return deduplicationJobId
323
325
  end
324
326
  -- Store the job.
325
327
  local delay, priority = storeJob(eventsKey, jobIdKey, jobId, args[3], ARGV[2],
@@ -1 +1 @@
1
- {"version":3,"file":"addPrioritizedJob-8.js","sourceRoot":"","sources":["../../../src/scripts/addPrioritizedJob-8.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkVf,CAAC;AACF,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,IAAI,EAAE,mBAAmB;IACzB,OAAO;IACP,IAAI,EAAE,CAAC;CACR,CAAC"}
1
+ {"version":3,"file":"addPrioritizedJob-8.js","sourceRoot":"","sources":["../../../src/scripts/addPrioritizedJob-8.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoVf,CAAC;AACF,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,IAAI,EAAE,mBAAmB;IACzB,OAAO;IACP,IAAI,EAAE,CAAC;CACR,CAAC"}
@@ -31,7 +31,7 @@ const content = `--[[
31
31
  [7] parent dependencies key.
32
32
  [8] parent? {id, queueKey}
33
33
  [9] repeat job key
34
- [10] debounce key
34
+ [10] deduplication key
35
35
  ARGV[2] Json stringified job data
36
36
  ARGV[3] msgpacked options
37
37
  Output:
@@ -48,7 +48,7 @@ local opts = cmsgpack.unpack(ARGV[3])
48
48
  local parentKey = args[5]
49
49
  local parent = args[8]
50
50
  local repeatJobKey = args[9]
51
- local debounceKey = args[10]
51
+ local deduplicationKey = args[10]
52
52
  local parentData
53
53
  -- Includes
54
54
  --[[
@@ -70,20 +70,22 @@ end
70
70
  --[[
71
71
  Function to debounce a job.
72
72
  ]]
73
- local function debounceJob(prefixKey, debounceOpts, jobId, debounceKey, eventsKey, maxEvents)
74
- local debounceId = debounceOpts and debounceOpts['id']
75
- if debounceId then
76
- local ttl = debounceOpts['ttl']
77
- local debounceKeyExists
73
+ local function deduplicateJob(prefixKey, deduplicationOpts, jobId, deduplicationKey, eventsKey, maxEvents)
74
+ local deduplicationId = deduplicationOpts and deduplicationOpts['id']
75
+ if deduplicationId then
76
+ local ttl = deduplicationOpts['ttl']
77
+ local deduplicationKeyExists
78
78
  if ttl then
79
- debounceKeyExists = not rcall('SET', debounceKey, jobId, 'PX', ttl, 'NX')
79
+ deduplicationKeyExists = not rcall('SET', deduplicationKey, jobId, 'PX', ttl, 'NX')
80
80
  else
81
- debounceKeyExists = not rcall('SET', debounceKey, jobId, 'NX')
81
+ deduplicationKeyExists = not rcall('SET', deduplicationKey, jobId, 'NX')
82
82
  end
83
- if debounceKeyExists then
84
- local currentDebounceJobId = rcall('GET', debounceKey)
83
+ if deduplicationKeyExists then
84
+ local currentDebounceJobId = rcall('GET', deduplicationKey)
85
85
  rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event",
86
- "debounced", "jobId", currentDebounceJobId, "debounceId", debounceId)
86
+ "debounced", "jobId", currentDebounceJobId, "debounceId", deduplicationId)
87
+ rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event",
88
+ "deduplicated", "jobId", currentDebounceJobId, "deduplicationId", deduplicationId)
87
89
  return currentDebounceJobId
88
90
  end
89
91
  end
@@ -320,10 +322,10 @@ else
320
322
  maxEvents, timestamp)
321
323
  end
322
324
  end
323
- local debouncedJobId = debounceJob(args[1], opts['de'],
324
- jobId, debounceKey, eventsKey, maxEvents)
325
- if debouncedJobId then
326
- return debouncedJobId
325
+ local deduplicationJobId = deduplicateJob(args[1], opts['de'],
326
+ jobId, deduplicationKey, eventsKey, maxEvents)
327
+ if deduplicationJobId then
328
+ return deduplicationJobId
327
329
  end
328
330
  -- Store the job.
329
331
  storeJob(eventsKey, jobIdKey, jobId, args[3], ARGV[2], opts, timestamp,
@@ -1 +1 @@
1
- {"version":3,"file":"addStandardJob-8.js","sourceRoot":"","sources":["../../../src/scripts/addStandardJob-8.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsVf,CAAC;AACF,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,IAAI,EAAE,gBAAgB;IACtB,OAAO;IACP,IAAI,EAAE,CAAC;CACR,CAAC"}
1
+ {"version":3,"file":"addStandardJob-8.js","sourceRoot":"","sources":["../../../src/scripts/addStandardJob-8.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwVf,CAAC;AACF,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,IAAI,EAAE,gBAAgB;IACtB,OAAO;IACP,IAAI,EAAE,CAAC;CACR,CAAC"}