@tachybase/plugin-adapter-bullmq 1.3.17 → 1.3.19

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 (347) hide show
  1. package/dist/externalVersion.js +2 -2
  2. package/dist/node_modules/@bull-board/api/dist/src/handlers/error.d.ts +4 -2
  3. package/dist/node_modules/@bull-board/api/dist/src/handlers/error.js +2 -2
  4. package/dist/node_modules/@bull-board/api/dist/src/handlers/pauseAll.d.ts +4 -0
  5. package/dist/node_modules/@bull-board/api/dist/src/handlers/pauseAll.js +15 -0
  6. package/dist/node_modules/@bull-board/api/dist/src/handlers/queues.js +4 -0
  7. package/dist/node_modules/@bull-board/api/dist/src/handlers/resumeAll.d.ts +4 -0
  8. package/dist/node_modules/@bull-board/api/dist/src/handlers/resumeAll.js +15 -0
  9. package/dist/node_modules/@bull-board/api/dist/src/index.js +1 -1
  10. package/dist/node_modules/@bull-board/api/dist/src/queueAdapters/base.d.ts +4 -0
  11. package/dist/node_modules/@bull-board/api/dist/src/queueAdapters/base.js +6 -0
  12. package/dist/node_modules/@bull-board/api/dist/src/queueAdapters/bull.js +6 -4
  13. package/dist/node_modules/@bull-board/api/dist/src/routes.js +4 -0
  14. package/dist/node_modules/@bull-board/api/dist/typings/app.d.ts +22 -2
  15. package/dist/node_modules/@bull-board/api/package.json +1 -1
  16. package/dist/node_modules/@bull-board/koa/dist/KoaAdapter.js +1 -1
  17. package/dist/node_modules/@bull-board/koa/dist/index.js +6 -6
  18. package/dist/node_modules/@bull-board/koa/package.json +1 -1
  19. package/dist/node_modules/bullmq/dist/cjs/classes/backoffs.js +18 -5
  20. package/dist/node_modules/bullmq/dist/cjs/classes/child-pool.js +7 -2
  21. package/dist/node_modules/bullmq/dist/cjs/classes/child-processor.js +59 -5
  22. package/dist/node_modules/bullmq/dist/cjs/classes/child.js +3 -1
  23. package/dist/node_modules/bullmq/dist/cjs/classes/errors/index.js +2 -1
  24. package/dist/node_modules/bullmq/dist/cjs/classes/errors/waiting-error.js +19 -0
  25. package/dist/node_modules/bullmq/dist/cjs/classes/flow-producer.js +21 -5
  26. package/dist/node_modules/bullmq/dist/cjs/classes/index.js +1 -0
  27. package/dist/node_modules/bullmq/dist/cjs/classes/job-scheduler.js +88 -62
  28. package/dist/node_modules/bullmq/dist/cjs/classes/job.js +216 -109
  29. package/dist/node_modules/bullmq/dist/cjs/classes/main-base.js +1 -1
  30. package/dist/node_modules/bullmq/dist/cjs/classes/queue-base.js +10 -9
  31. package/dist/node_modules/bullmq/dist/cjs/classes/queue-getters.js +34 -14
  32. package/dist/node_modules/bullmq/dist/cjs/classes/queue.js +19 -13
  33. package/dist/node_modules/bullmq/dist/cjs/classes/redis-connection.js +16 -9
  34. package/dist/node_modules/bullmq/dist/cjs/classes/repeat.js +1 -1
  35. package/dist/node_modules/bullmq/dist/cjs/classes/sandbox.js +54 -28
  36. package/dist/node_modules/bullmq/dist/cjs/classes/scripts.js +141 -39
  37. package/dist/node_modules/bullmq/dist/cjs/classes/worker.js +191 -182
  38. package/dist/node_modules/bullmq/dist/cjs/commands/addDelayedJob-6.lua +6 -17
  39. package/dist/node_modules/bullmq/dist/cjs/commands/addJobScheduler-11.lua +123 -0
  40. package/dist/node_modules/bullmq/dist/{esm/commands/addParentJob-4.lua → cjs/commands/addParentJob-5.lua} +7 -6
  41. package/dist/node_modules/bullmq/dist/cjs/commands/{addPrioritizedJob-8.lua → addPrioritizedJob-9.lua} +11 -10
  42. package/dist/node_modules/bullmq/dist/cjs/commands/addRepeatableJob-2.lua +2 -2
  43. package/dist/node_modules/bullmq/dist/{esm/commands/addStandardJob-8.lua → cjs/commands/addStandardJob-9.lua} +9 -8
  44. package/dist/node_modules/bullmq/dist/cjs/commands/cleanJobsInSet-3.lua +9 -5
  45. package/dist/node_modules/bullmq/dist/cjs/commands/drain-5.lua +16 -16
  46. package/dist/node_modules/bullmq/dist/cjs/commands/getDependencyCounts-4.lua +31 -0
  47. package/dist/node_modules/bullmq/dist/cjs/commands/getState-8.lua +5 -5
  48. package/dist/node_modules/bullmq/dist/cjs/commands/getStateV2-8.lua +8 -8
  49. package/dist/node_modules/bullmq/dist/cjs/commands/includes/addDelayedJob.lua +23 -0
  50. package/dist/node_modules/bullmq/dist/cjs/commands/includes/addJobFromScheduler.lua +37 -0
  51. package/dist/node_modules/bullmq/dist/cjs/commands/includes/addJobWithPriority.lua +2 -2
  52. package/dist/node_modules/bullmq/dist/cjs/commands/includes/cleanList.lua +4 -2
  53. package/dist/node_modules/bullmq/dist/cjs/commands/includes/cleanSet.lua +3 -11
  54. package/dist/node_modules/bullmq/dist/cjs/commands/includes/collectMetrics.lua +1 -1
  55. package/dist/node_modules/bullmq/dist/cjs/commands/includes/deduplicateJob.lua +63 -18
  56. package/dist/node_modules/bullmq/dist/cjs/commands/includes/filterOutJobsToIgnore.lua +14 -0
  57. package/dist/node_modules/bullmq/dist/cjs/commands/includes/getNextDelayedTimestamp.lua +1 -1
  58. package/dist/node_modules/bullmq/dist/cjs/commands/includes/getOrSetMaxEvents.lua +6 -6
  59. package/dist/node_modules/bullmq/dist/cjs/commands/includes/getPriorityScore.lua +8 -0
  60. package/dist/node_modules/bullmq/dist/cjs/commands/includes/isJobSchedulerJob.lua +15 -0
  61. package/dist/node_modules/bullmq/dist/cjs/commands/includes/isLocked.lua +1 -0
  62. package/dist/node_modules/bullmq/dist/cjs/commands/includes/moveChildFromDependenciesIfNeeded.lua +77 -0
  63. package/dist/node_modules/bullmq/dist/cjs/commands/includes/{moveJobFromPriorityToActive.lua → moveJobFromPrioritizedToActive.lua} +1 -1
  64. package/dist/node_modules/bullmq/dist/cjs/commands/includes/moveParentToWait.lua +45 -0
  65. package/dist/node_modules/bullmq/dist/cjs/commands/includes/moveParentToWaitIfNeeded.lua +9 -50
  66. package/dist/node_modules/bullmq/dist/cjs/commands/includes/moveParentToWaitIfNoPendingDependencies.lua +13 -0
  67. package/dist/node_modules/bullmq/dist/cjs/commands/includes/prepareJobForProcessing.lua +2 -1
  68. package/dist/node_modules/bullmq/dist/cjs/commands/includes/promoteDelayedJobs.lua +7 -3
  69. package/dist/node_modules/bullmq/dist/cjs/commands/includes/removeDeduplicationKeyIfNeededOnFinalization.lua +23 -0
  70. package/dist/node_modules/bullmq/dist/cjs/commands/includes/removeDeduplicationKeyIfNeededOnRemoval.lua +16 -0
  71. package/dist/node_modules/bullmq/dist/cjs/commands/includes/removeJob.lua +2 -2
  72. package/dist/node_modules/bullmq/dist/cjs/commands/includes/removeJobKeys.lua +2 -2
  73. package/dist/node_modules/bullmq/dist/cjs/commands/includes/removeJobWithChildren.lua +95 -0
  74. package/dist/node_modules/bullmq/dist/cjs/commands/includes/removeListJobs.lua +7 -1
  75. package/dist/node_modules/bullmq/dist/cjs/commands/includes/removeParentDependencyKey.lua +5 -5
  76. package/dist/node_modules/bullmq/dist/cjs/commands/includes/removeZSetJobs.lua +2 -8
  77. package/dist/node_modules/bullmq/dist/cjs/commands/includes/storeJob.lua +2 -2
  78. package/dist/node_modules/bullmq/dist/cjs/commands/includes/storeJobScheduler.lua +52 -0
  79. package/dist/node_modules/bullmq/dist/cjs/commands/includes/trimEvents.lua +1 -1
  80. package/dist/node_modules/bullmq/dist/cjs/commands/includes/updateExistingJobsParent.lua +1 -1
  81. package/dist/node_modules/bullmq/dist/cjs/commands/includes/updateJobFields.lua +5 -5
  82. package/dist/node_modules/bullmq/dist/cjs/commands/includes/updateParentDepsIfNeeded.lua +2 -2
  83. package/dist/node_modules/bullmq/dist/cjs/commands/isFinished-3.lua +2 -2
  84. package/dist/node_modules/bullmq/dist/cjs/commands/moveJobFromActiveToWait-9.lua +63 -0
  85. package/dist/node_modules/bullmq/dist/cjs/commands/moveStalledJobsToWait-8.lua +109 -0
  86. package/dist/node_modules/bullmq/dist/cjs/commands/moveToActive-11.lua +3 -2
  87. package/dist/node_modules/bullmq/dist/cjs/commands/moveToFinished-14.lua +52 -52
  88. package/dist/node_modules/bullmq/dist/cjs/commands/moveToWaitingChildren-8.lua +106 -0
  89. package/dist/node_modules/bullmq/dist/cjs/commands/removeJob-2.lua +18 -66
  90. package/dist/node_modules/bullmq/dist/cjs/commands/removeJobScheduler-3.lua +1 -1
  91. package/dist/node_modules/bullmq/dist/cjs/commands/removeUnprocessedChildren-2.lua +31 -0
  92. package/dist/node_modules/bullmq/dist/cjs/commands/retryJob-11.lua +11 -5
  93. package/dist/node_modules/bullmq/dist/cjs/commands/updateJobScheduler-12.lua +90 -0
  94. package/dist/node_modules/bullmq/dist/cjs/commands/updateRepeatableJobMillis-1.lua +1 -1
  95. package/dist/node_modules/bullmq/dist/cjs/enums/child-command.js +2 -0
  96. package/dist/node_modules/bullmq/dist/cjs/enums/error-code.js +2 -1
  97. package/dist/node_modules/bullmq/dist/cjs/enums/parent-command.js +5 -2
  98. package/dist/node_modules/bullmq/dist/cjs/index.js +1 -1
  99. package/dist/node_modules/bullmq/dist/cjs/interfaces/index.js +2 -1
  100. package/dist/node_modules/bullmq/dist/cjs/interfaces/{debounce-options.js → parent-options.js} +1 -1
  101. package/dist/node_modules/bullmq/dist/cjs/interfaces/receiver.js +3 -0
  102. package/dist/node_modules/bullmq/dist/cjs/scripts/addDelayedJob-6.js +163 -84
  103. package/dist/node_modules/bullmq/dist/cjs/scripts/addJobScheduler-11.js +465 -0
  104. package/dist/node_modules/bullmq/dist/cjs/scripts/{addParentJob-4.js → addParentJob-5.js} +147 -75
  105. package/dist/node_modules/bullmq/dist/cjs/scripts/{addPrioritizedJob-8.js → addPrioritizedJob-9.js} +151 -79
  106. package/dist/node_modules/bullmq/dist/cjs/scripts/addRepeatableJob-2.js +18 -13
  107. package/dist/node_modules/bullmq/dist/cjs/scripts/{addStandardJob-8.js → addStandardJob-9.js} +149 -77
  108. package/dist/node_modules/bullmq/dist/cjs/scripts/changeDelay-4.js +7 -7
  109. package/dist/node_modules/bullmq/dist/cjs/scripts/changePriority-7.js +8 -2
  110. package/dist/node_modules/bullmq/dist/cjs/scripts/cleanJobsInSet-3.js +45 -29
  111. package/dist/node_modules/bullmq/dist/cjs/scripts/drain-5.js +49 -35
  112. package/dist/node_modules/bullmq/dist/cjs/scripts/getDependencyCounts-4.js +37 -0
  113. package/dist/node_modules/bullmq/dist/cjs/scripts/getState-8.js +5 -5
  114. package/dist/node_modules/bullmq/dist/cjs/scripts/getStateV2-8.js +8 -8
  115. package/dist/node_modules/bullmq/dist/cjs/scripts/index.js +10 -7
  116. package/dist/node_modules/bullmq/dist/cjs/scripts/isFinished-3.js +2 -2
  117. package/dist/node_modules/bullmq/dist/cjs/scripts/{moveJobFromActiveToWait-10.js → moveJobFromActiveToWait-9.js} +57 -37
  118. package/dist/node_modules/bullmq/dist/cjs/scripts/moveJobsToWait-8.js +6 -6
  119. package/dist/node_modules/bullmq/dist/cjs/scripts/moveStalledJobsToWait-8.js +171 -0
  120. package/dist/node_modules/bullmq/dist/cjs/scripts/moveToActive-11.js +18 -8
  121. package/dist/node_modules/bullmq/dist/cjs/scripts/moveToDelayed-8.js +12 -12
  122. package/dist/node_modules/bullmq/dist/cjs/scripts/moveToFinished-14.js +218 -155
  123. package/dist/node_modules/bullmq/dist/cjs/scripts/moveToWaitingChildren-8.js +529 -0
  124. package/dist/node_modules/bullmq/dist/cjs/scripts/obliterate-2.js +33 -20
  125. package/dist/node_modules/bullmq/dist/cjs/scripts/pause-7.js +1 -1
  126. package/dist/node_modules/bullmq/dist/cjs/scripts/promote-9.js +8 -2
  127. package/dist/node_modules/bullmq/dist/cjs/scripts/removeChildDependency-1.js +7 -7
  128. package/dist/node_modules/bullmq/dist/cjs/scripts/removeJob-2.js +120 -63
  129. package/dist/node_modules/bullmq/dist/cjs/scripts/removeJobScheduler-3.js +3 -3
  130. package/dist/node_modules/bullmq/dist/cjs/scripts/removeRepeatable-3.js +2 -2
  131. package/dist/node_modules/bullmq/dist/cjs/scripts/removeUnprocessedChildren-2.js +339 -0
  132. package/dist/node_modules/bullmq/dist/cjs/scripts/reprocessJob-8.js +6 -6
  133. package/dist/node_modules/bullmq/dist/cjs/scripts/retryJob-11.js +47 -26
  134. package/dist/node_modules/bullmq/dist/cjs/scripts/updateJobScheduler-12.js +274 -0
  135. package/dist/node_modules/bullmq/dist/cjs/scripts/updateProgress-3.js +6 -6
  136. package/dist/node_modules/bullmq/dist/cjs/scripts/updateRepeatableJobMillis-1.js +1 -1
  137. package/dist/node_modules/bullmq/dist/cjs/tsconfig-cjs.tsbuildinfo +1 -1
  138. package/dist/node_modules/bullmq/dist/cjs/types/deduplication-options.js +3 -0
  139. package/dist/node_modules/bullmq/dist/cjs/types/index.js +3 -0
  140. package/dist/node_modules/bullmq/dist/cjs/types/job-progress.js +3 -0
  141. package/dist/node_modules/bullmq/dist/cjs/types/script-queue-context.js +3 -0
  142. package/dist/node_modules/bullmq/dist/cjs/utils.js +29 -1
  143. package/dist/node_modules/bullmq/dist/cjs/version.js +1 -1
  144. package/dist/node_modules/bullmq/dist/esm/classes/backoffs.d.ts +1 -1
  145. package/dist/node_modules/bullmq/dist/esm/classes/backoffs.js +18 -5
  146. package/dist/node_modules/bullmq/dist/esm/classes/child-pool.d.ts +1 -1
  147. package/dist/node_modules/bullmq/dist/esm/classes/child-pool.js +7 -2
  148. package/dist/node_modules/bullmq/dist/esm/classes/child-processor.d.ts +3 -2
  149. package/dist/node_modules/bullmq/dist/esm/classes/child-processor.js +59 -5
  150. package/dist/node_modules/bullmq/dist/esm/classes/child.js +3 -1
  151. package/dist/node_modules/bullmq/dist/esm/classes/errors/index.d.ts +2 -1
  152. package/dist/node_modules/bullmq/dist/esm/classes/errors/index.js +2 -1
  153. package/dist/node_modules/bullmq/dist/esm/classes/errors/waiting-error.d.ts +10 -0
  154. package/dist/node_modules/bullmq/dist/esm/classes/errors/waiting-error.js +15 -0
  155. package/dist/node_modules/bullmq/dist/esm/classes/flow-producer.d.ts +3 -9
  156. package/dist/node_modules/bullmq/dist/esm/classes/flow-producer.js +21 -5
  157. package/dist/node_modules/bullmq/dist/esm/classes/index.d.ts +1 -0
  158. package/dist/node_modules/bullmq/dist/esm/classes/index.js +1 -0
  159. package/dist/node_modules/bullmq/dist/esm/classes/job-scheduler.d.ts +2 -2
  160. package/dist/node_modules/bullmq/dist/esm/classes/job-scheduler.js +88 -62
  161. package/dist/node_modules/bullmq/dist/esm/classes/job.d.ts +69 -19
  162. package/dist/node_modules/bullmq/dist/esm/classes/job.js +217 -110
  163. package/dist/node_modules/bullmq/dist/esm/classes/main-base.d.ts +2 -3
  164. package/dist/node_modules/bullmq/dist/esm/classes/main-base.js +1 -1
  165. package/dist/node_modules/bullmq/dist/esm/classes/queue-base.d.ts +2 -5
  166. package/dist/node_modules/bullmq/dist/esm/classes/queue-base.js +11 -10
  167. package/dist/node_modules/bullmq/dist/esm/classes/queue-events-producer.d.ts +2 -2
  168. package/dist/node_modules/bullmq/dist/esm/classes/queue-events.d.ts +118 -29
  169. package/dist/node_modules/bullmq/dist/esm/classes/queue-getters.d.ts +20 -13
  170. package/dist/node_modules/bullmq/dist/esm/classes/queue-getters.js +34 -14
  171. package/dist/node_modules/bullmq/dist/esm/classes/queue.d.ts +19 -16
  172. package/dist/node_modules/bullmq/dist/esm/classes/queue.js +19 -13
  173. package/dist/node_modules/bullmq/dist/esm/classes/redis-connection.d.ts +7 -3
  174. package/dist/node_modules/bullmq/dist/esm/classes/redis-connection.js +16 -9
  175. package/dist/node_modules/bullmq/dist/esm/classes/repeat.js +1 -1
  176. package/dist/node_modules/bullmq/dist/esm/classes/sandbox.js +54 -28
  177. package/dist/node_modules/bullmq/dist/esm/classes/scripts.d.ts +20 -13
  178. package/dist/node_modules/bullmq/dist/esm/classes/scripts.js +141 -39
  179. package/dist/node_modules/bullmq/dist/esm/classes/worker.d.ts +28 -7
  180. package/dist/node_modules/bullmq/dist/esm/classes/worker.js +192 -183
  181. package/dist/node_modules/bullmq/dist/esm/commands/addDelayedJob-6.lua +6 -17
  182. package/dist/node_modules/bullmq/dist/esm/commands/addJobScheduler-11.lua +123 -0
  183. package/dist/node_modules/bullmq/dist/{cjs/commands/addParentJob-4.lua → esm/commands/addParentJob-5.lua} +7 -6
  184. package/dist/node_modules/bullmq/dist/esm/commands/{addPrioritizedJob-8.lua → addPrioritizedJob-9.lua} +11 -10
  185. package/dist/node_modules/bullmq/dist/esm/commands/addRepeatableJob-2.lua +2 -2
  186. package/dist/node_modules/bullmq/dist/{cjs/commands/addStandardJob-8.lua → esm/commands/addStandardJob-9.lua} +9 -8
  187. package/dist/node_modules/bullmq/dist/esm/commands/cleanJobsInSet-3.lua +9 -5
  188. package/dist/node_modules/bullmq/dist/esm/commands/drain-5.lua +16 -16
  189. package/dist/node_modules/bullmq/dist/esm/commands/getDependencyCounts-4.lua +31 -0
  190. package/dist/node_modules/bullmq/dist/esm/commands/getState-8.lua +5 -5
  191. package/dist/node_modules/bullmq/dist/esm/commands/getStateV2-8.lua +8 -8
  192. package/dist/node_modules/bullmq/dist/esm/commands/includes/addDelayedJob.lua +23 -0
  193. package/dist/node_modules/bullmq/dist/esm/commands/includes/addJobFromScheduler.lua +37 -0
  194. package/dist/node_modules/bullmq/dist/esm/commands/includes/addJobWithPriority.lua +2 -2
  195. package/dist/node_modules/bullmq/dist/esm/commands/includes/cleanList.lua +4 -2
  196. package/dist/node_modules/bullmq/dist/esm/commands/includes/cleanSet.lua +3 -11
  197. package/dist/node_modules/bullmq/dist/esm/commands/includes/collectMetrics.lua +1 -1
  198. package/dist/node_modules/bullmq/dist/esm/commands/includes/deduplicateJob.lua +63 -18
  199. package/dist/node_modules/bullmq/dist/esm/commands/includes/filterOutJobsToIgnore.lua +14 -0
  200. package/dist/node_modules/bullmq/dist/esm/commands/includes/getNextDelayedTimestamp.lua +1 -1
  201. package/dist/node_modules/bullmq/dist/esm/commands/includes/getOrSetMaxEvents.lua +6 -6
  202. package/dist/node_modules/bullmq/dist/esm/commands/includes/getPriorityScore.lua +8 -0
  203. package/dist/node_modules/bullmq/dist/esm/commands/includes/isJobSchedulerJob.lua +15 -0
  204. package/dist/node_modules/bullmq/dist/esm/commands/includes/isLocked.lua +1 -0
  205. package/dist/node_modules/bullmq/dist/esm/commands/includes/moveChildFromDependenciesIfNeeded.lua +77 -0
  206. package/dist/node_modules/bullmq/dist/esm/commands/includes/{moveJobFromPriorityToActive.lua → moveJobFromPrioritizedToActive.lua} +1 -1
  207. package/dist/node_modules/bullmq/dist/esm/commands/includes/moveParentToWait.lua +45 -0
  208. package/dist/node_modules/bullmq/dist/esm/commands/includes/moveParentToWaitIfNeeded.lua +9 -50
  209. package/dist/node_modules/bullmq/dist/esm/commands/includes/moveParentToWaitIfNoPendingDependencies.lua +13 -0
  210. package/dist/node_modules/bullmq/dist/esm/commands/includes/prepareJobForProcessing.lua +2 -1
  211. package/dist/node_modules/bullmq/dist/esm/commands/includes/promoteDelayedJobs.lua +7 -3
  212. package/dist/node_modules/bullmq/dist/esm/commands/includes/removeDeduplicationKeyIfNeededOnFinalization.lua +23 -0
  213. package/dist/node_modules/bullmq/dist/esm/commands/includes/removeDeduplicationKeyIfNeededOnRemoval.lua +16 -0
  214. package/dist/node_modules/bullmq/dist/esm/commands/includes/removeJob.lua +2 -2
  215. package/dist/node_modules/bullmq/dist/esm/commands/includes/removeJobKeys.lua +2 -2
  216. package/dist/node_modules/bullmq/dist/esm/commands/includes/removeJobWithChildren.lua +95 -0
  217. package/dist/node_modules/bullmq/dist/esm/commands/includes/removeListJobs.lua +7 -1
  218. package/dist/node_modules/bullmq/dist/esm/commands/includes/removeParentDependencyKey.lua +5 -5
  219. package/dist/node_modules/bullmq/dist/esm/commands/includes/removeZSetJobs.lua +2 -8
  220. package/dist/node_modules/bullmq/dist/esm/commands/includes/storeJob.lua +2 -2
  221. package/dist/node_modules/bullmq/dist/esm/commands/includes/storeJobScheduler.lua +52 -0
  222. package/dist/node_modules/bullmq/dist/esm/commands/includes/trimEvents.lua +1 -1
  223. package/dist/node_modules/bullmq/dist/esm/commands/includes/updateExistingJobsParent.lua +1 -1
  224. package/dist/node_modules/bullmq/dist/esm/commands/includes/updateJobFields.lua +5 -5
  225. package/dist/node_modules/bullmq/dist/esm/commands/includes/updateParentDepsIfNeeded.lua +2 -2
  226. package/dist/node_modules/bullmq/dist/esm/commands/isFinished-3.lua +2 -2
  227. package/dist/node_modules/bullmq/dist/esm/commands/moveJobFromActiveToWait-9.lua +63 -0
  228. package/dist/node_modules/bullmq/dist/esm/commands/moveStalledJobsToWait-8.lua +109 -0
  229. package/dist/node_modules/bullmq/dist/esm/commands/moveToActive-11.lua +3 -2
  230. package/dist/node_modules/bullmq/dist/esm/commands/moveToFinished-14.lua +52 -52
  231. package/dist/node_modules/bullmq/dist/esm/commands/moveToWaitingChildren-8.lua +106 -0
  232. package/dist/node_modules/bullmq/dist/esm/commands/removeJob-2.lua +18 -66
  233. package/dist/node_modules/bullmq/dist/esm/commands/removeJobScheduler-3.lua +1 -1
  234. package/dist/node_modules/bullmq/dist/esm/commands/removeUnprocessedChildren-2.lua +31 -0
  235. package/dist/node_modules/bullmq/dist/esm/commands/retryJob-11.lua +11 -5
  236. package/dist/node_modules/bullmq/dist/esm/commands/updateJobScheduler-12.lua +90 -0
  237. package/dist/node_modules/bullmq/dist/esm/commands/updateRepeatableJobMillis-1.lua +1 -1
  238. package/dist/node_modules/bullmq/dist/esm/enums/child-command.d.ts +3 -1
  239. package/dist/node_modules/bullmq/dist/esm/enums/child-command.js +2 -0
  240. package/dist/node_modules/bullmq/dist/esm/enums/error-code.d.ts +3 -2
  241. package/dist/node_modules/bullmq/dist/esm/enums/error-code.js +2 -1
  242. package/dist/node_modules/bullmq/dist/esm/enums/parent-command.d.ts +5 -2
  243. package/dist/node_modules/bullmq/dist/esm/enums/parent-command.js +5 -2
  244. package/dist/node_modules/bullmq/dist/esm/interfaces/backoff-options.d.ts +5 -0
  245. package/dist/node_modules/bullmq/dist/esm/interfaces/base-job-options.d.ts +3 -9
  246. package/dist/node_modules/bullmq/dist/esm/interfaces/child-message.d.ts +1 -0
  247. package/dist/node_modules/bullmq/dist/esm/interfaces/index.d.ts +2 -1
  248. package/dist/node_modules/bullmq/dist/esm/interfaces/index.js +2 -1
  249. package/dist/node_modules/bullmq/dist/esm/interfaces/job-json.d.ts +6 -2
  250. package/dist/node_modules/bullmq/dist/esm/interfaces/job-scheduler-json.d.ts +7 -4
  251. package/dist/node_modules/bullmq/dist/esm/interfaces/minimal-job.d.ts +34 -15
  252. package/dist/node_modules/bullmq/dist/esm/interfaces/parent-options.d.ts +11 -0
  253. package/dist/node_modules/bullmq/dist/esm/interfaces/parent-options.js +2 -0
  254. package/dist/node_modules/bullmq/dist/esm/interfaces/parent.d.ts +6 -2
  255. package/dist/node_modules/bullmq/dist/esm/interfaces/queue-options.d.ts +15 -6
  256. package/dist/node_modules/bullmq/dist/esm/interfaces/receiver.d.ts +4 -0
  257. package/dist/node_modules/bullmq/dist/esm/interfaces/receiver.js +2 -0
  258. package/dist/node_modules/bullmq/dist/esm/interfaces/repeat-options.d.ts +1 -2
  259. package/dist/node_modules/bullmq/dist/esm/interfaces/repeatable-options.d.ts +2 -0
  260. package/dist/node_modules/bullmq/dist/esm/interfaces/sandboxed-job.d.ts +3 -2
  261. package/dist/node_modules/bullmq/dist/esm/interfaces/sandboxed-options.d.ts +1 -1
  262. package/dist/node_modules/bullmq/dist/esm/interfaces/telemetry.d.ts +18 -15
  263. package/dist/node_modules/bullmq/dist/esm/interfaces/worker-options.d.ts +10 -10
  264. package/dist/node_modules/bullmq/dist/esm/scripts/addDelayedJob-6.js +163 -84
  265. package/dist/node_modules/bullmq/dist/esm/scripts/addJobScheduler-11.js +462 -0
  266. package/dist/node_modules/bullmq/dist/esm/scripts/{addParentJob-4.js → addParentJob-5.js} +147 -75
  267. package/dist/node_modules/bullmq/dist/esm/scripts/{addPrioritizedJob-8.js → addPrioritizedJob-9.js} +151 -79
  268. package/dist/node_modules/bullmq/dist/esm/scripts/addRepeatableJob-2.js +18 -13
  269. package/dist/node_modules/bullmq/dist/esm/scripts/{addStandardJob-8.js → addStandardJob-9.js} +149 -77
  270. package/dist/node_modules/bullmq/dist/esm/scripts/changeDelay-4.js +7 -7
  271. package/dist/node_modules/bullmq/dist/esm/scripts/changePriority-7.js +8 -2
  272. package/dist/node_modules/bullmq/dist/esm/scripts/cleanJobsInSet-3.js +45 -29
  273. package/dist/node_modules/bullmq/dist/esm/scripts/drain-5.js +49 -35
  274. package/dist/node_modules/bullmq/dist/esm/scripts/getDependencyCounts-4.d.ts +5 -0
  275. package/dist/node_modules/bullmq/dist/esm/scripts/getDependencyCounts-4.js +34 -0
  276. package/dist/node_modules/bullmq/dist/esm/scripts/getState-8.js +5 -5
  277. package/dist/node_modules/bullmq/dist/esm/scripts/getStateV2-8.js +8 -8
  278. package/dist/node_modules/bullmq/dist/esm/scripts/index.d.ts +10 -7
  279. package/dist/node_modules/bullmq/dist/esm/scripts/index.js +10 -7
  280. package/dist/node_modules/bullmq/dist/esm/scripts/isFinished-3.js +2 -2
  281. package/dist/node_modules/bullmq/dist/esm/scripts/{moveJobFromActiveToWait-10.js → moveJobFromActiveToWait-9.js} +57 -37
  282. package/dist/node_modules/bullmq/dist/esm/scripts/moveJobsToWait-8.js +6 -6
  283. package/dist/node_modules/bullmq/dist/esm/scripts/moveStalledJobsToWait-8.js +168 -0
  284. package/dist/node_modules/bullmq/dist/esm/scripts/moveToActive-11.js +18 -8
  285. package/dist/node_modules/bullmq/dist/esm/scripts/moveToDelayed-8.js +12 -12
  286. package/dist/node_modules/bullmq/dist/esm/scripts/moveToFinished-14.js +218 -155
  287. package/dist/node_modules/bullmq/dist/esm/scripts/moveToWaitingChildren-8.js +526 -0
  288. package/dist/node_modules/bullmq/dist/esm/scripts/obliterate-2.js +33 -20
  289. package/dist/node_modules/bullmq/dist/esm/scripts/pause-7.js +1 -1
  290. package/dist/node_modules/bullmq/dist/esm/scripts/promote-9.js +8 -2
  291. package/dist/node_modules/bullmq/dist/esm/scripts/removeChildDependency-1.js +7 -7
  292. package/dist/node_modules/bullmq/dist/esm/scripts/removeJob-2.js +120 -63
  293. package/dist/node_modules/bullmq/dist/esm/scripts/removeJobScheduler-3.js +3 -3
  294. package/dist/node_modules/bullmq/dist/esm/scripts/removeRepeatable-3.js +2 -2
  295. package/dist/node_modules/bullmq/dist/esm/scripts/removeUnprocessedChildren-2.d.ts +5 -0
  296. package/dist/node_modules/bullmq/dist/esm/scripts/removeUnprocessedChildren-2.js +336 -0
  297. package/dist/node_modules/bullmq/dist/esm/scripts/reprocessJob-8.js +6 -6
  298. package/dist/node_modules/bullmq/dist/esm/scripts/retryJob-11.js +47 -26
  299. package/dist/node_modules/bullmq/dist/esm/scripts/updateJobScheduler-12.d.ts +5 -0
  300. package/dist/node_modules/bullmq/dist/esm/scripts/updateJobScheduler-12.js +271 -0
  301. package/dist/node_modules/bullmq/dist/esm/scripts/updateProgress-3.js +6 -6
  302. package/dist/node_modules/bullmq/dist/esm/scripts/updateRepeatableJobMillis-1.js +1 -1
  303. package/dist/node_modules/bullmq/dist/esm/tsconfig.tsbuildinfo +1 -1
  304. package/dist/node_modules/bullmq/dist/esm/types/deduplication-options.d.ts +22 -0
  305. package/dist/node_modules/bullmq/dist/esm/types/deduplication-options.js +2 -0
  306. package/dist/node_modules/bullmq/dist/esm/types/index.d.ts +3 -0
  307. package/dist/node_modules/bullmq/dist/esm/types/index.js +3 -0
  308. package/dist/node_modules/bullmq/dist/esm/types/job-options.d.ts +19 -8
  309. package/dist/node_modules/bullmq/dist/esm/types/job-progress.d.ts +1 -0
  310. package/dist/node_modules/bullmq/dist/esm/types/job-progress.js +2 -0
  311. package/dist/node_modules/bullmq/dist/esm/types/script-queue-context.d.ts +2 -0
  312. package/dist/node_modules/bullmq/dist/esm/types/script-queue-context.js +2 -0
  313. package/dist/node_modules/bullmq/dist/esm/utils.d.ts +25 -5
  314. package/dist/node_modules/bullmq/dist/esm/utils.js +27 -0
  315. package/dist/node_modules/bullmq/dist/esm/version.d.ts +1 -1
  316. package/dist/node_modules/bullmq/dist/esm/version.js +1 -1
  317. package/dist/node_modules/bullmq/package.json +1 -1
  318. package/package.json +7 -7
  319. package/dist/node_modules/bullmq/dist/cjs/commands/addJobScheduler-2.lua +0 -91
  320. package/dist/node_modules/bullmq/dist/cjs/commands/includes/moveParentFromWaitingChildrenToFailed.lua +0 -53
  321. package/dist/node_modules/bullmq/dist/cjs/commands/includes/removeDeduplicationKey.lua +0 -11
  322. package/dist/node_modules/bullmq/dist/cjs/commands/includes/removeDeduplicationKeyIfNeeded.lua +0 -14
  323. package/dist/node_modules/bullmq/dist/cjs/commands/moveJobFromActiveToWait-10.lua +0 -60
  324. package/dist/node_modules/bullmq/dist/cjs/commands/moveStalledJobsToWait-9.lua +0 -156
  325. package/dist/node_modules/bullmq/dist/cjs/commands/moveToWaitingChildren-5.lua +0 -68
  326. package/dist/node_modules/bullmq/dist/cjs/scripts/addJobScheduler-2.js +0 -237
  327. package/dist/node_modules/bullmq/dist/cjs/scripts/moveStalledJobsToWait-9.js +0 -529
  328. package/dist/node_modules/bullmq/dist/cjs/scripts/moveToWaitingChildren-5.js +0 -83
  329. package/dist/node_modules/bullmq/dist/esm/commands/addJobScheduler-2.lua +0 -91
  330. package/dist/node_modules/bullmq/dist/esm/commands/includes/moveParentFromWaitingChildrenToFailed.lua +0 -53
  331. package/dist/node_modules/bullmq/dist/esm/commands/includes/removeDeduplicationKey.lua +0 -11
  332. package/dist/node_modules/bullmq/dist/esm/commands/includes/removeDeduplicationKeyIfNeeded.lua +0 -14
  333. package/dist/node_modules/bullmq/dist/esm/commands/moveJobFromActiveToWait-10.lua +0 -60
  334. package/dist/node_modules/bullmq/dist/esm/commands/moveStalledJobsToWait-9.lua +0 -156
  335. package/dist/node_modules/bullmq/dist/esm/commands/moveToWaitingChildren-5.lua +0 -68
  336. package/dist/node_modules/bullmq/dist/esm/interfaces/debounce-options.d.ts +0 -13
  337. package/dist/node_modules/bullmq/dist/esm/interfaces/debounce-options.js +0 -2
  338. package/dist/node_modules/bullmq/dist/esm/scripts/addJobScheduler-2.js +0 -234
  339. package/dist/node_modules/bullmq/dist/esm/scripts/moveStalledJobsToWait-9.js +0 -526
  340. package/dist/node_modules/bullmq/dist/esm/scripts/moveToWaitingChildren-5.js +0 -80
  341. /package/dist/node_modules/bullmq/dist/esm/scripts/{addJobScheduler-2.d.ts → addJobScheduler-11.d.ts} +0 -0
  342. /package/dist/node_modules/bullmq/dist/esm/scripts/{addParentJob-4.d.ts → addParentJob-5.d.ts} +0 -0
  343. /package/dist/node_modules/bullmq/dist/esm/scripts/{addPrioritizedJob-8.d.ts → addPrioritizedJob-9.d.ts} +0 -0
  344. /package/dist/node_modules/bullmq/dist/esm/scripts/{addStandardJob-8.d.ts → addStandardJob-9.d.ts} +0 -0
  345. /package/dist/node_modules/bullmq/dist/esm/scripts/{moveJobFromActiveToWait-10.d.ts → moveJobFromActiveToWait-9.d.ts} +0 -0
  346. /package/dist/node_modules/bullmq/dist/esm/scripts/{moveStalledJobsToWait-9.d.ts → moveStalledJobsToWait-8.d.ts} +0 -0
  347. /package/dist/node_modules/bullmq/dist/esm/scripts/{moveToWaitingChildren-5.d.ts → moveToWaitingChildren-8.d.ts} +0 -0
@@ -51,7 +51,7 @@ class Scripts {
51
51
  }
52
52
  return Number.isInteger(result);
53
53
  }
54
- addDelayedJob(client, job, encodedOpts, args) {
54
+ addDelayedJobArgs(job, encodedOpts, args) {
55
55
  const queueKeys = this.queue.keys;
56
56
  const keys = [
57
57
  queueKeys.marker,
@@ -62,35 +62,49 @@ class Scripts {
62
62
  queueKeys.events,
63
63
  ];
64
64
  keys.push(pack(args), job.data, encodedOpts);
65
- return this.execCommand(client, 'addDelayedJob', keys);
65
+ return keys;
66
66
  }
67
- addPrioritizedJob(client, job, encodedOpts, args) {
67
+ addDelayedJob(client, job, encodedOpts, args) {
68
+ const argsList = this.addDelayedJobArgs(job, encodedOpts, args);
69
+ return this.execCommand(client, 'addDelayedJob', argsList);
70
+ }
71
+ addPrioritizedJobArgs(job, encodedOpts, args) {
68
72
  const queueKeys = this.queue.keys;
69
73
  const keys = [
70
74
  queueKeys.marker,
71
75
  queueKeys.meta,
72
76
  queueKeys.id,
73
77
  queueKeys.prioritized,
78
+ queueKeys.delayed,
74
79
  queueKeys.completed,
75
80
  queueKeys.active,
76
81
  queueKeys.events,
77
82
  queueKeys.pc,
78
83
  ];
79
84
  keys.push(pack(args), job.data, encodedOpts);
80
- return this.execCommand(client, 'addPrioritizedJob', keys);
85
+ return keys;
81
86
  }
82
- addParentJob(client, job, encodedOpts, args) {
87
+ addPrioritizedJob(client, job, encodedOpts, args) {
88
+ const argsList = this.addPrioritizedJobArgs(job, encodedOpts, args);
89
+ return this.execCommand(client, 'addPrioritizedJob', argsList);
90
+ }
91
+ addParentJobArgs(job, encodedOpts, args) {
83
92
  const queueKeys = this.queue.keys;
84
93
  const keys = [
85
94
  queueKeys.meta,
86
95
  queueKeys.id,
96
+ queueKeys.delayed,
87
97
  queueKeys.completed,
88
98
  queueKeys.events,
89
99
  ];
90
100
  keys.push(pack(args), job.data, encodedOpts);
91
- return this.execCommand(client, 'addParentJob', keys);
101
+ return keys;
92
102
  }
93
- addStandardJob(client, job, encodedOpts, args) {
103
+ addParentJob(client, job, encodedOpts, args) {
104
+ const argsList = this.addParentJobArgs(job, encodedOpts, args);
105
+ return this.execCommand(client, 'addParentJob', argsList);
106
+ }
107
+ addStandardJobArgs(job, encodedOpts, args) {
94
108
  const queueKeys = this.queue.keys;
95
109
  const keys = [
96
110
  queueKeys.wait,
@@ -98,25 +112,29 @@ class Scripts {
98
112
  queueKeys.meta,
99
113
  queueKeys.id,
100
114
  queueKeys.completed,
115
+ queueKeys.delayed,
101
116
  queueKeys.active,
102
117
  queueKeys.events,
103
118
  queueKeys.marker,
104
119
  ];
105
120
  keys.push(pack(args), job.data, encodedOpts);
106
- return this.execCommand(client, 'addStandardJob', keys);
121
+ return keys;
122
+ }
123
+ addStandardJob(client, job, encodedOpts, args) {
124
+ const argsList = this.addStandardJobArgs(job, encodedOpts, args);
125
+ return this.execCommand(client, 'addStandardJob', argsList);
107
126
  }
108
- async addJob(client, job, opts, jobId, parentOpts = {}) {
127
+ async addJob(client, job, opts, jobId, parentKeyOpts = {}) {
109
128
  const queueKeys = this.queue.keys;
110
- const parent = job.parent
111
- ? Object.assign(Object.assign({}, job.parent), { fpof: opts.fpof, rdof: opts.rdof, idof: opts.idof }) : null;
129
+ const parent = job.parent;
112
130
  const args = [
113
131
  queueKeys[''],
114
132
  typeof jobId !== 'undefined' ? jobId : '',
115
133
  job.name,
116
134
  job.timestamp,
117
135
  job.parentKey || null,
118
- parentOpts.waitChildrenKey || null,
119
- parentOpts.parentDependenciesKey || null,
136
+ parentKeyOpts.waitChildrenKey || null,
137
+ parentKeyOpts.parentDependenciesKey || null,
120
138
  parent,
121
139
  job.repeatJobKey,
122
140
  job.deduplicationId ? `${queueKeys.de}:${job.deduplicationId}` : null,
@@ -136,10 +154,10 @@ class Scripts {
136
154
  encodedOpts = pack(opts);
137
155
  }
138
156
  let result;
139
- if (parentOpts.waitChildrenKey) {
157
+ if (parentKeyOpts.waitChildrenKey) {
140
158
  result = await this.addParentJob(client, job, encodedOpts, args);
141
159
  }
142
- else if (typeof opts.delay == 'number') {
160
+ else if (typeof opts.delay == 'number' && opts.delay > 0) {
143
161
  result = await this.addDelayedJob(client, job, encodedOpts, args);
144
162
  }
145
163
  else if (opts.priority) {
@@ -151,7 +169,7 @@ class Scripts {
151
169
  if (result < 0) {
152
170
  throw this.finishedErrors({
153
171
  code: result,
154
- parentKey: parentOpts.parentKey,
172
+ parentKey: parentKeyOpts.parentKey,
155
173
  command: 'addJob',
156
174
  });
157
175
  }
@@ -193,11 +211,23 @@ class Scripts {
193
211
  const args = this.addRepeatableJobArgs(customKey, nextMillis, opts, legacyCustomKey);
194
212
  return this.execCommand(client, 'addRepeatableJob', args);
195
213
  }
196
- async addJobScheduler(client, jobSchedulerId, nextMillis, templateData, templateOpts, opts) {
214
+ async addJobScheduler(jobSchedulerId, nextMillis, templateData, templateOpts, opts, delayedJobOpts,
215
+ // The job id of the job that produced this next iteration
216
+ producerId) {
217
+ const client = await this.queue.client;
197
218
  const queueKeys = this.queue.keys;
198
219
  const keys = [
199
220
  queueKeys.repeat,
200
221
  queueKeys.delayed,
222
+ queueKeys.wait,
223
+ queueKeys.paused,
224
+ queueKeys.meta,
225
+ queueKeys.prioritized,
226
+ queueKeys.marker,
227
+ queueKeys.id,
228
+ queueKeys.events,
229
+ queueKeys.pc,
230
+ queueKeys.active,
201
231
  ];
202
232
  const args = [
203
233
  nextMillis,
@@ -205,7 +235,10 @@ class Scripts {
205
235
  jobSchedulerId,
206
236
  templateData,
207
237
  pack(templateOpts),
238
+ pack(delayedJobOpts),
239
+ Date.now(),
208
240
  queueKeys[''],
241
+ producerId ? this.queue.toKey(producerId) : '',
209
242
  ];
210
243
  return this.execCommand(client, 'addJobScheduler', keys.concat(args));
211
244
  }
@@ -218,8 +251,35 @@ class Scripts {
218
251
  ];
219
252
  return this.execCommand(client, 'updateRepeatableJobMillis', args);
220
253
  }
221
- async updateJobSchedulerNextMillis(client, jobSchedulerId, nextMillis) {
222
- return client.zadd(this.queue.keys.repeat, nextMillis, jobSchedulerId);
254
+ async updateJobSchedulerNextMillis(jobSchedulerId, nextMillis, templateData, delayedJobOpts,
255
+ // The job id of the job that produced this next iteration - TODO: remove in next breaking change
256
+ producerId) {
257
+ const client = await this.queue.client;
258
+ const queueKeys = this.queue.keys;
259
+ const keys = [
260
+ queueKeys.repeat,
261
+ queueKeys.delayed,
262
+ queueKeys.wait,
263
+ queueKeys.paused,
264
+ queueKeys.meta,
265
+ queueKeys.prioritized,
266
+ queueKeys.marker,
267
+ queueKeys.id,
268
+ queueKeys.events,
269
+ queueKeys.pc,
270
+ producerId ? this.queue.toKey(producerId) : '',
271
+ queueKeys.active,
272
+ ];
273
+ const args = [
274
+ nextMillis,
275
+ jobSchedulerId,
276
+ templateData,
277
+ pack(delayedJobOpts),
278
+ Date.now(),
279
+ queueKeys[''],
280
+ producerId,
281
+ ];
282
+ return this.execCommand(client, 'updateJobScheduler', keys.concat(args));
223
283
  }
224
284
  removeRepeatableArgs(legacyRepeatJobId, repeatConcatOptions, repeatJobKey) {
225
285
  const queueKeys = this.queue.keys;
@@ -252,8 +312,8 @@ class Scripts {
252
312
  return this.execCommand(client, 'removeJobScheduler', keys.concat(args));
253
313
  }
254
314
  removeArgs(jobId, removeChildren) {
255
- const keys = ['', 'meta'].map(name => this.queue.toKey(name));
256
- const args = [jobId, removeChildren ? 1 : 0];
315
+ const keys = [jobId, 'repeat'].map(name => this.queue.toKey(name));
316
+ const args = [jobId, removeChildren ? 1 : 0, this.queue.toKey('')];
257
317
  return keys.concat(args);
258
318
  }
259
319
  async remove(jobId, removeChildren) {
@@ -269,6 +329,16 @@ class Scripts {
269
329
  }
270
330
  return result;
271
331
  }
332
+ async removeUnprocessedChildren(jobId) {
333
+ const client = await this.queue.client;
334
+ const args = [
335
+ this.queue.toKey(jobId),
336
+ this.queue.keys.meta,
337
+ this.queue.toKey(''),
338
+ jobId,
339
+ ];
340
+ await this.execCommand(client, 'removeUnprocessedChildren', args);
341
+ }
272
342
  async extendLock(jobId, token, duration, client) {
273
343
  client = client || (await this.queue.client);
274
344
  const args = [
@@ -338,7 +408,7 @@ class Scripts {
338
408
  return result;
339
409
  }
340
410
  moveToFinishedArgs(job, val, propVal, shouldRemove, target, token, timestamp, fetchNext = true, fieldsToUpdate) {
341
- var _a, _b, _c, _d, _e, _f;
411
+ var _a, _b, _c, _d, _e, _f, _g;
342
412
  const queueKeys = this.queue.keys;
343
413
  const opts = this.queue.opts;
344
414
  const workerKeepJobs = target === 'completed' ? opts.removeOnComplete : opts.removeOnFail;
@@ -359,6 +429,7 @@ class Scripts {
359
429
  queueKeys[''],
360
430
  pack({
361
431
  token,
432
+ name: opts.name,
362
433
  keepJobs,
363
434
  limiter: opts.limiter,
364
435
  lockDuration: opts.lockDuration,
@@ -367,8 +438,9 @@ class Scripts {
367
438
  ? (_c = opts.metrics) === null || _c === void 0 ? void 0 : _c.maxDataPoints
368
439
  : '',
369
440
  fpof: !!((_d = job.opts) === null || _d === void 0 ? void 0 : _d.failParentOnFailure),
370
- idof: !!((_e = job.opts) === null || _e === void 0 ? void 0 : _e.ignoreDependencyOnFailure),
371
- rdof: !!((_f = job.opts) === null || _f === void 0 ? void 0 : _f.removeDependencyOnFailure),
441
+ cpof: !!((_e = job.opts) === null || _e === void 0 ? void 0 : _e.continueParentOnFailure),
442
+ idof: !!((_f = job.opts) === null || _f === void 0 ? void 0 : _f.ignoreDependencyOnFailure),
443
+ rdof: !!((_g = job.opts) === null || _g === void 0 ? void 0 : _g.removeDependencyOnFailure),
372
444
  }),
373
445
  fieldsToUpdate ? pack((0, utils_1.objectToFlatArray)(fieldsToUpdate)) : void 0,
374
446
  ];
@@ -406,11 +478,11 @@ class Scripts {
406
478
  const keys = [
407
479
  queueKeys.wait,
408
480
  queueKeys.paused,
409
- delayed ? queueKeys.delayed : '',
481
+ queueKeys.delayed,
410
482
  queueKeys.prioritized,
411
483
  queueKeys.repeat,
412
484
  ];
413
- const args = [queueKeys['']];
485
+ const args = [queueKeys[''], delayed ? '1' : '0'];
414
486
  return keys.concat(args);
415
487
  }
416
488
  async drain(delayed) {
@@ -485,6 +557,23 @@ class Scripts {
485
557
  const args = this.getCountsPerPriorityArgs(priorities);
486
558
  return await this.execCommand(client, 'getCountsPerPriority', args);
487
559
  }
560
+ getDependencyCountsArgs(jobId, types) {
561
+ const keys = [
562
+ `${jobId}:processed`,
563
+ `${jobId}:dependencies`,
564
+ `${jobId}:failed`,
565
+ `${jobId}:unsuccessful`,
566
+ ].map(name => {
567
+ return this.queue.toKey(name);
568
+ });
569
+ const args = types;
570
+ return keys.concat(args);
571
+ }
572
+ async getDependencyCounts(jobId, types) {
573
+ const client = await this.queue.client;
574
+ const args = this.getDependencyCountsArgs(jobId, types);
575
+ return await this.execCommand(client, 'getDependencyCounts', args);
576
+ }
488
577
  moveToCompletedArgs(job, returnvalue, removeOnComplete, token, fetchNext = false) {
489
578
  const timestamp = Date.now();
490
579
  return this.moveToFinishedArgs(job, returnvalue, 'returnvalue', removeOnComplete, 'completed', token, timestamp, fetchNext);
@@ -599,11 +688,14 @@ class Scripts {
599
688
  const timestamp = Date.now();
600
689
  const childKey = (0, utils_1.getParentKey)(opts.child);
601
690
  const keys = [
602
- `${jobId}:lock`,
603
691
  'active',
604
692
  'waiting-children',
605
693
  jobId,
694
+ `${jobId}:dependencies`,
695
+ `${jobId}:unsuccessful`,
606
696
  'stalled',
697
+ 'failed',
698
+ 'events',
607
699
  ].map(name => {
608
700
  return this.queue.toKey(name);
609
701
  });
@@ -612,6 +704,7 @@ class Scripts {
612
704
  childKey !== null && childKey !== void 0 ? childKey : '',
613
705
  JSON.stringify(timestamp),
614
706
  jobId,
707
+ this.queue.toKey(''),
615
708
  ]);
616
709
  }
617
710
  isMaxedArgs() {
@@ -701,7 +794,7 @@ class Scripts {
701
794
  const args = this.getJobSchedulerArgs(id);
702
795
  return this.execCommand(client, 'getJobScheduler', args);
703
796
  }
704
- retryJobArgs(jobId, lifo, token, fieldsToUpdate) {
797
+ retryJobArgs(jobId, lifo, token, opts = {}) {
705
798
  const keys = [
706
799
  this.queue.keys.active,
707
800
  this.queue.keys.wait,
@@ -722,12 +815,14 @@ class Scripts {
722
815
  pushCmd,
723
816
  jobId,
724
817
  token,
725
- fieldsToUpdate ? pack((0, utils_1.objectToFlatArray)(fieldsToUpdate)) : void 0,
818
+ opts.fieldsToUpdate
819
+ ? pack((0, utils_1.objectToFlatArray)(opts.fieldsToUpdate))
820
+ : void 0,
726
821
  ]);
727
822
  }
728
- async retryJob(jobId, lifo, token, fieldsToUpdate) {
823
+ async retryJob(jobId, lifo, token = '0', opts = {}) {
729
824
  const client = await this.queue.client;
730
- const args = this.retryJobArgs(jobId, lifo, token, fieldsToUpdate);
825
+ const args = this.retryJobArgs(jobId, lifo, token, opts);
731
826
  const result = await this.execCommand(client, 'retryJob', args);
732
827
  if (result < 0) {
733
828
  throw this.finishedErrors({
@@ -865,7 +960,6 @@ class Scripts {
865
960
  this.queue.keys.stalled,
866
961
  this.queue.keys.wait,
867
962
  this.queue.keys.active,
868
- this.queue.keys.failed,
869
963
  this.queue.keys['stalled-check'],
870
964
  this.queue.keys.meta,
871
965
  this.queue.keys.paused,
@@ -903,14 +997,12 @@ class Scripts {
903
997
  * @param jobId - Job id
904
998
  * @returns
905
999
  */
906
- async moveJobFromActiveToWait(jobId, token) {
1000
+ async moveJobFromActiveToWait(jobId, token = '0') {
907
1001
  const client = await this.queue.client;
908
- const lockKey = `${this.queue.toKey(jobId)}:lock`;
909
1002
  const keys = [
910
1003
  this.queue.keys.active,
911
1004
  this.queue.keys.wait,
912
1005
  this.queue.keys.stalled,
913
- lockKey,
914
1006
  this.queue.keys.paused,
915
1007
  this.queue.keys.meta,
916
1008
  this.queue.keys.limiter,
@@ -919,8 +1011,16 @@ class Scripts {
919
1011
  this.queue.keys.events,
920
1012
  ];
921
1013
  const args = [jobId, token, this.queue.toKey(jobId)];
922
- const pttl = await this.execCommand(client, 'moveJobFromActiveToWait', keys.concat(args));
923
- return pttl < 0 ? 0 : pttl;
1014
+ const result = await this.execCommand(client, 'moveJobFromActiveToWait', keys.concat(args));
1015
+ if (result < 0) {
1016
+ throw this.finishedErrors({
1017
+ code: result,
1018
+ jobId,
1019
+ command: 'moveJobFromActiveToWait',
1020
+ state: 'active',
1021
+ });
1022
+ }
1023
+ return result;
924
1024
  }
925
1025
  async obliterate(opts) {
926
1026
  const client = await this.queue.client;
@@ -942,7 +1042,7 @@ class Scripts {
942
1042
  }
943
1043
  /**
944
1044
  * Paginate a set or hash keys.
945
- * @param opts
1045
+ * @param opts - options to define the pagination behaviour
946
1046
  *
947
1047
  */
948
1048
  async paginate(key, opts) {
@@ -1005,7 +1105,7 @@ class Scripts {
1005
1105
  return new Error(`Missing lock for job ${jobId}. ${command}`);
1006
1106
  case enums_1.ErrorCode.JobNotInState:
1007
1107
  return new Error(`Job ${jobId} is not in the ${state} state. ${command}`);
1008
- case enums_1.ErrorCode.JobPendingDependencies:
1108
+ case enums_1.ErrorCode.JobPendingChildren:
1009
1109
  return new Error(`Job ${jobId} has pending dependencies. ${command}`);
1010
1110
  case enums_1.ErrorCode.ParentJobNotExist:
1011
1111
  return new Error(`Missing key for parent job ${parentKey}. ${command}`);
@@ -1015,6 +1115,8 @@ class Scripts {
1015
1115
  return new Error(`The parent job ${parentKey} cannot be replaced. ${command}`);
1016
1116
  case enums_1.ErrorCode.JobBelongsToJobScheduler:
1017
1117
  return new Error(`Job ${jobId} belongs to a job scheduler and cannot be removed directly. ${command}`);
1118
+ case enums_1.ErrorCode.JobFailedChildren:
1119
+ return new Error(`Job ${jobId} has failed children. ${command}`);
1018
1120
  default:
1019
1121
  return new Error(`Unknown code ${code} error for ${jobId}. ${command}`);
1020
1122
  }