bullmq 1.57.3 → 1.59.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bullmq.d.ts +1839 -0
- package/dist/{classes → cjs/classes}/backoffs.d.ts +0 -0
- package/dist/{classes → cjs/classes}/backoffs.js +0 -0
- package/dist/cjs/classes/backoffs.js.map +1 -0
- package/dist/{classes → cjs/classes}/child-pool.d.ts +0 -0
- package/dist/{classes → cjs/classes}/child-pool.js +1 -1
- package/dist/cjs/classes/child-pool.js.map +1 -0
- package/dist/{classes → cjs/classes}/child-processor.d.ts +0 -0
- package/dist/{classes → cjs/classes}/child-processor.js +0 -0
- package/dist/cjs/classes/child-processor.js.map +1 -0
- package/dist/{classes → cjs/classes}/compat.d.ts +0 -0
- package/dist/{classes → cjs/classes}/compat.js +0 -0
- package/dist/cjs/classes/compat.js.map +1 -0
- package/dist/{classes → cjs/classes}/flow-producer.d.ts +0 -0
- package/dist/{classes → cjs/classes}/flow-producer.js +0 -0
- package/dist/cjs/classes/flow-producer.js.map +1 -0
- package/dist/{classes → cjs/classes}/index.d.ts +0 -0
- package/dist/{classes → cjs/classes}/index.js +0 -0
- package/dist/cjs/classes/index.js.map +1 -0
- package/dist/{classes → cjs/classes}/job.d.ts +0 -0
- package/dist/{classes → cjs/classes}/job.js +0 -0
- package/dist/cjs/classes/job.js.map +1 -0
- package/dist/{classes → cjs/classes}/master.d.ts +0 -0
- package/dist/{classes → cjs/classes}/master.js +0 -0
- package/dist/cjs/classes/master.js.map +1 -0
- package/dist/{classes → cjs/classes}/process-utils.d.ts +0 -0
- package/dist/{classes → cjs/classes}/process-utils.js +0 -0
- package/dist/cjs/classes/process-utils.js.map +1 -0
- package/dist/{classes → cjs/classes}/queue-base.d.ts +0 -0
- package/dist/{classes → cjs/classes}/queue-base.js +0 -0
- package/dist/cjs/classes/queue-base.js.map +1 -0
- package/dist/{classes → cjs/classes}/queue-events.d.ts +0 -0
- package/dist/{classes → cjs/classes}/queue-events.js +0 -0
- package/dist/cjs/classes/queue-events.js.map +1 -0
- package/dist/{classes → cjs/classes}/queue-getters.d.ts +0 -0
- package/dist/{classes → cjs/classes}/queue-getters.js +0 -0
- package/dist/cjs/classes/queue-getters.js.map +1 -0
- package/dist/{classes → cjs/classes}/queue-keys.d.ts +0 -0
- package/dist/{classes → cjs/classes}/queue-keys.js +0 -0
- package/dist/cjs/classes/queue-keys.js.map +1 -0
- package/dist/{classes → cjs/classes}/queue-scheduler.d.ts +0 -0
- package/dist/{classes → cjs/classes}/queue-scheduler.js +0 -0
- package/dist/cjs/classes/queue-scheduler.js.map +1 -0
- package/dist/{classes → cjs/classes}/queue.d.ts +2 -2
- package/dist/{classes → cjs/classes}/queue.js +0 -0
- package/dist/cjs/classes/queue.js.map +1 -0
- package/dist/{classes → cjs/classes}/redis-connection.d.ts +0 -0
- package/dist/{classes → cjs/classes}/redis-connection.js +7 -5
- package/dist/cjs/classes/redis-connection.js.map +1 -0
- package/dist/{classes → cjs/classes}/repeat.d.ts +2 -2
- package/dist/{classes → cjs/classes}/repeat.js +3 -6
- package/dist/cjs/classes/repeat.js.map +1 -0
- package/dist/{classes → cjs/classes}/sandbox.d.ts +0 -0
- package/dist/{classes → cjs/classes}/sandbox.js +0 -0
- package/dist/cjs/classes/sandbox.js.map +1 -0
- package/dist/{classes → cjs/classes}/scripts.d.ts +2 -0
- package/dist/{classes → cjs/classes}/scripts.js +18 -0
- package/dist/cjs/classes/scripts.js.map +1 -0
- package/dist/{classes → cjs/classes}/timer-manager.d.ts +0 -0
- package/dist/{classes → cjs/classes}/timer-manager.js +0 -0
- package/dist/cjs/classes/timer-manager.js.map +1 -0
- package/dist/{classes → cjs/classes}/worker.d.ts +33 -18
- package/dist/{classes → cjs/classes}/worker.js +27 -5
- package/dist/cjs/classes/worker.js.map +1 -0
- package/dist/{commands → cjs/commands}/addJob-9.lua +0 -0
- package/dist/{commands → cjs/commands}/changeDelay-4.lua +0 -0
- package/dist/{commands → cjs/commands}/cleanJobsInSet-2.lua +0 -0
- package/dist/{commands → cjs/commands}/drain-4.lua +0 -0
- package/dist/{commands → cjs/commands}/extendLock-2.lua +0 -0
- package/dist/{commands → cjs/commands}/getState-7.lua +0 -0
- package/dist/{commands → cjs/commands}/getStateV2-7.lua +0 -0
- package/dist/{commands → cjs/commands}/includes/destructureJobKey.lua +0 -0
- package/dist/{commands → cjs/commands}/includes/updateParentDepsIfNeeded.lua +0 -0
- package/dist/{commands → cjs/commands}/index.d.ts +0 -0
- package/dist/{commands → cjs/commands}/index.js +0 -0
- package/dist/cjs/commands/index.js.map +1 -0
- package/dist/{commands → cjs/commands}/isFinished-3.lua +0 -0
- package/dist/{commands → cjs/commands}/isJobInList-1.lua +0 -0
- package/dist/{commands → cjs/commands}/moveStalledJobsToWait-8.lua +0 -0
- package/dist/{commands → cjs/commands}/moveToActive-8.lua +0 -0
- package/dist/{commands → cjs/commands}/moveToDelayed-5.lua +0 -0
- package/dist/{commands → cjs/commands}/moveToFinished-8.lua +0 -0
- package/dist/{commands → cjs/commands}/moveToWaitingChildren-4.lua +0 -0
- package/dist/{commands → cjs/commands}/obliterate-2.lua +0 -0
- package/dist/{commands → cjs/commands}/pause-4.lua +0 -0
- package/dist/{commands → cjs/commands}/promote-5.lua +0 -0
- package/dist/{commands → cjs/commands}/releaseLock-1.lua +0 -0
- package/dist/{commands → cjs/commands}/removeJob-1.lua +0 -0
- package/dist/{commands → cjs/commands}/removeRepeatable-2.lua +0 -0
- package/dist/{commands → cjs/commands}/reprocessJob-4.lua +0 -0
- package/dist/{commands → cjs/commands}/retryJob-4.lua +0 -0
- package/dist/{commands → cjs/commands}/script-loader.d.ts +0 -0
- package/dist/{commands → cjs/commands}/script-loader.js +0 -0
- package/dist/cjs/commands/script-loader.js.map +1 -0
- package/dist/{commands → cjs/commands}/takeLock-1.lua +0 -0
- package/dist/{commands → cjs/commands}/updateDelaySet-7.lua +0 -0
- package/dist/{commands → cjs/commands}/updateProgress-2.lua +0 -0
- package/dist/{enums → cjs/enums}/error-codes.enum.d.ts +0 -0
- package/dist/{enums → cjs/enums}/error-codes.enum.js +0 -0
- package/dist/cjs/enums/error-codes.enum.js.map +1 -0
- package/dist/{enums → cjs/enums}/index.d.ts +0 -0
- package/dist/{enums → cjs/enums}/index.js +0 -0
- package/dist/{enums → cjs/enums}/index.js.map +1 -1
- package/dist/{index.d.ts → cjs/index.d.ts} +0 -0
- package/dist/{index.js → cjs/index.js} +0 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/{interfaces → cjs/interfaces}/advanced-options.d.ts +0 -0
- package/dist/{interfaces → cjs/interfaces}/advanced-options.js +0 -0
- package/dist/cjs/interfaces/advanced-options.js.map +1 -0
- package/dist/{interfaces → cjs/interfaces}/backoff-options.d.ts +0 -0
- package/dist/{interfaces → cjs/interfaces}/backoff-options.js +0 -0
- package/dist/cjs/interfaces/backoff-options.js.map +1 -0
- package/dist/{interfaces → cjs/interfaces}/child-command.d.ts +0 -0
- package/dist/{interfaces → cjs/interfaces}/child-command.js +0 -0
- package/dist/cjs/interfaces/child-command.js.map +1 -0
- package/dist/{interfaces → cjs/interfaces}/child-message.d.ts +0 -0
- package/dist/{interfaces → cjs/interfaces}/child-message.js +0 -0
- package/dist/cjs/interfaces/child-message.js.map +1 -0
- package/dist/{interfaces → cjs/interfaces}/connection.d.ts +0 -0
- package/dist/{interfaces → cjs/interfaces}/connection.js +0 -0
- package/dist/cjs/interfaces/connection.js.map +1 -0
- package/dist/{interfaces → cjs/interfaces}/flow-job.d.ts +0 -0
- package/dist/{interfaces → cjs/interfaces}/flow-job.js +0 -0
- package/dist/{interfaces → cjs/interfaces}/flow-job.js.map +1 -1
- package/dist/{interfaces → cjs/interfaces}/index.d.ts +0 -0
- package/dist/{interfaces → cjs/interfaces}/index.js +0 -0
- package/dist/cjs/interfaces/index.js.map +1 -0
- package/dist/{interfaces → cjs/interfaces}/jobs-options.d.ts +0 -0
- package/dist/{interfaces → cjs/interfaces}/jobs-options.js +0 -0
- package/dist/cjs/interfaces/jobs-options.js.map +1 -0
- package/dist/{interfaces → cjs/interfaces}/parent-command.d.ts +0 -0
- package/dist/{interfaces → cjs/interfaces}/parent-command.js +0 -0
- package/dist/cjs/interfaces/parent-command.js.map +1 -0
- package/dist/{interfaces → cjs/interfaces}/parent-message.d.ts +0 -0
- package/dist/{interfaces → cjs/interfaces}/parent-message.js +0 -0
- package/dist/cjs/interfaces/parent-message.js.map +1 -0
- package/dist/{interfaces → cjs/interfaces}/parent.d.ts +0 -0
- package/dist/{interfaces → cjs/interfaces}/parent.js +0 -0
- package/dist/{interfaces → cjs/interfaces}/parent.js.map +1 -1
- package/dist/{interfaces → cjs/interfaces}/queue-options.d.ts +0 -0
- package/dist/{interfaces → cjs/interfaces}/queue-options.js +0 -0
- package/dist/cjs/interfaces/queue-options.js.map +1 -0
- package/dist/{interfaces → cjs/interfaces}/queue-scheduler-options.d.ts +0 -0
- package/dist/{interfaces → cjs/interfaces}/queue-scheduler-options.js +0 -0
- package/dist/cjs/interfaces/queue-scheduler-options.js.map +1 -0
- package/dist/{interfaces → cjs/interfaces}/rate-limiter-options.d.ts +0 -0
- package/dist/{interfaces → cjs/interfaces}/rate-limiter-options.js +0 -0
- package/dist/cjs/interfaces/rate-limiter-options.js.map +1 -0
- package/dist/cjs/interfaces/redis-options.d.ts +5 -0
- package/dist/{interfaces → cjs/interfaces}/redis-options.js +0 -0
- package/dist/cjs/interfaces/redis-options.js.map +1 -0
- package/dist/{interfaces → cjs/interfaces}/redis-streams.d.ts +0 -0
- package/dist/{interfaces → cjs/interfaces}/redis-streams.js +0 -0
- package/dist/cjs/interfaces/redis-streams.js.map +1 -0
- package/dist/{interfaces → cjs/interfaces}/repeat-options.d.ts +0 -0
- package/dist/{interfaces → cjs/interfaces}/repeat-options.js +0 -0
- package/dist/cjs/interfaces/repeat-options.js.map +1 -0
- package/dist/{interfaces → cjs/interfaces}/sandboxed-job-processor.d.ts +0 -0
- package/dist/{interfaces → cjs/interfaces}/sandboxed-job-processor.js +0 -0
- package/dist/cjs/interfaces/sandboxed-job-processor.js.map +1 -0
- package/dist/{interfaces → cjs/interfaces}/sandboxed-job.d.ts +0 -0
- package/dist/{interfaces → cjs/interfaces}/sandboxed-job.js +0 -0
- package/dist/cjs/interfaces/sandboxed-job.js.map +1 -0
- package/dist/{interfaces → cjs/interfaces}/worker-options.d.ts +0 -0
- package/dist/{interfaces → cjs/interfaces}/worker-options.js +0 -0
- package/dist/cjs/interfaces/worker-options.js.map +1 -0
- package/dist/{utils.d.ts → cjs/utils.d.ts} +0 -0
- package/dist/{utils.js → cjs/utils.js} +0 -0
- package/dist/cjs/utils.js.map +1 -0
- package/dist/esm/classes/backoffs.d.ts +15 -0
- package/dist/esm/classes/backoffs.js +44 -0
- package/dist/esm/classes/backoffs.js.map +1 -0
- package/dist/esm/classes/child-pool.d.ts +22 -0
- package/dist/esm/classes/child-pool.js +125 -0
- package/dist/esm/classes/child-pool.js.map +1 -0
- package/dist/esm/classes/child-processor.d.ts +24 -0
- package/dist/esm/classes/child-processor.js +165 -0
- package/dist/esm/classes/child-processor.js.map +1 -0
- package/dist/esm/classes/compat.d.ts +316 -0
- package/dist/esm/classes/compat.js +674 -0
- package/dist/esm/classes/compat.js.map +1 -0
- package/dist/esm/classes/flow-producer.d.ts +148 -0
- package/dist/esm/classes/flow-producer.js +228 -0
- package/dist/esm/classes/flow-producer.js.map +1 -0
- package/dist/esm/classes/index.d.ts +14 -0
- package/dist/esm/classes/index.js +15 -0
- package/dist/esm/classes/index.js.map +1 -0
- package/dist/esm/classes/job.d.ts +338 -0
- package/dist/esm/classes/job.js +623 -0
- package/dist/esm/classes/job.js.map +1 -0
- package/dist/esm/classes/master.d.ts +1 -0
- package/dist/esm/classes/master.js +35 -0
- package/dist/esm/classes/master.js.map +1 -0
- package/dist/esm/classes/process-utils.d.ts +7 -0
- package/dist/esm/classes/process-utils.js +31 -0
- package/dist/esm/classes/process-utils.js.map +1 -0
- package/dist/esm/classes/queue-base.d.ts +22 -0
- package/dist/esm/classes/queue-base.js +62 -0
- package/dist/esm/classes/queue-base.js.map +1 -0
- package/dist/esm/classes/queue-events.d.ts +153 -0
- package/dist/esm/classes/queue-events.js +108 -0
- package/dist/esm/classes/queue-events.js.map +1 -0
- package/dist/esm/classes/queue-getters.d.ts +54 -0
- package/dist/esm/classes/queue-getters.js +207 -0
- package/dist/esm/classes/queue-getters.js.map +1 -0
- package/dist/esm/classes/queue-keys.d.ts +10 -0
- package/dist/esm/classes/queue-keys.js +40 -0
- package/dist/esm/classes/queue-keys.js.map +1 -0
- package/dist/esm/classes/queue-scheduler.d.ts +35 -0
- package/dist/esm/classes/queue-scheduler.js +156 -0
- package/dist/esm/classes/queue-scheduler.js.map +1 -0
- package/dist/esm/classes/queue.d.ts +143 -0
- package/dist/esm/classes/queue.js +195 -0
- package/dist/esm/classes/queue.js.map +1 -0
- package/dist/esm/classes/redis-connection.d.ts +28 -0
- package/dist/esm/classes/redis-connection.js +164 -0
- package/dist/esm/classes/redis-connection.js.map +1 -0
- package/dist/esm/classes/repeat.d.ts +20 -0
- package/dist/esm/classes/repeat.js +140 -0
- package/dist/esm/classes/repeat.js.map +1 -0
- package/dist/esm/classes/sandbox.d.ts +4 -0
- package/dist/esm/classes/sandbox.js +56 -0
- package/dist/esm/classes/sandbox.js.map +1 -0
- package/dist/esm/classes/scripts.d.ts +82 -0
- package/dist/esm/classes/scripts.js +510 -0
- package/dist/esm/classes/scripts.js.map +1 -0
- package/dist/esm/classes/timer-manager.d.ts +17 -0
- package/dist/esm/classes/timer-manager.js +47 -0
- package/dist/esm/classes/timer-manager.js.map +1 -0
- package/dist/esm/classes/worker.d.ts +168 -0
- package/dist/esm/classes/worker.js +469 -0
- package/dist/esm/classes/worker.js.map +1 -0
- package/dist/esm/commands/addJob-9.lua +179 -0
- package/dist/esm/commands/changeDelay-4.lua +41 -0
- package/dist/esm/commands/cleanJobsInSet-2.lua +65 -0
- package/dist/esm/commands/drain-4.lua +36 -0
- package/dist/esm/commands/extendLock-2.lua +23 -0
- package/dist/esm/commands/getState-7.lua +63 -0
- package/dist/esm/commands/getStateV2-7.lua +51 -0
- package/dist/esm/commands/includes/destructureJobKey.lua +12 -0
- package/dist/esm/commands/includes/updateParentDepsIfNeeded.lua +19 -0
- package/dist/esm/commands/index.d.ts +4 -0
- package/dist/esm/commands/index.js +5 -0
- package/dist/esm/commands/index.js.map +1 -0
- package/dist/esm/commands/isFinished-3.lua +48 -0
- package/dist/esm/commands/isJobInList-1.lua +20 -0
- package/dist/esm/commands/moveStalledJobsToWait-8.lua +112 -0
- package/dist/esm/commands/moveToActive-8.lua +100 -0
- package/dist/esm/commands/moveToDelayed-5.lua +45 -0
- package/dist/esm/commands/moveToFinished-8.lua +159 -0
- package/dist/esm/commands/moveToWaitingChildren-4.lua +60 -0
- package/dist/esm/commands/obliterate-2.lua +129 -0
- package/dist/esm/commands/pause-4.lua +27 -0
- package/dist/esm/commands/promote-5.lua +54 -0
- package/dist/esm/commands/releaseLock-1.lua +19 -0
- package/dist/esm/commands/removeJob-1.lua +115 -0
- package/dist/esm/commands/removeRepeatable-2.lua +23 -0
- package/dist/esm/commands/reprocessJob-4.lua +32 -0
- package/dist/esm/commands/retryJob-4.lua +34 -0
- package/dist/esm/commands/script-loader.d.ts +120 -0
- package/dist/esm/commands/script-loader.js +395 -0
- package/dist/esm/commands/script-loader.js.map +1 -0
- package/dist/esm/commands/takeLock-1.lua +17 -0
- package/dist/esm/commands/updateDelaySet-7.lua +73 -0
- package/dist/esm/commands/updateProgress-2.lua +15 -0
- package/dist/esm/enums/error-codes.enum.d.ts +7 -0
- package/dist/esm/enums/error-codes.enum.js +9 -0
- package/dist/esm/enums/error-codes.enum.js.map +1 -0
- package/dist/esm/enums/index.d.ts +1 -0
- package/dist/esm/enums/index.js +2 -0
- package/dist/esm/enums/index.js.map +1 -0
- package/dist/esm/index.d.ts +5 -0
- package/dist/esm/index.js +6 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/interfaces/advanced-options.d.ts +6 -0
- package/dist/esm/interfaces/advanced-options.js +2 -0
- package/dist/esm/interfaces/advanced-options.js.map +1 -0
- package/dist/esm/interfaces/backoff-options.d.ts +15 -0
- package/dist/esm/interfaces/backoff-options.js +2 -0
- package/dist/esm/interfaces/backoff-options.js.map +1 -0
- package/dist/esm/interfaces/child-command.d.ts +5 -0
- package/dist/esm/interfaces/child-command.js +7 -0
- package/dist/esm/interfaces/child-command.js.map +1 -0
- package/dist/esm/interfaces/child-message.d.ts +6 -0
- package/dist/esm/interfaces/child-message.js +2 -0
- package/dist/esm/interfaces/child-message.js.map +1 -0
- package/dist/esm/interfaces/connection.d.ts +8 -0
- package/dist/esm/interfaces/connection.js +2 -0
- package/dist/esm/interfaces/connection.js.map +1 -0
- package/dist/esm/interfaces/flow-job.d.ts +14 -0
- package/dist/esm/interfaces/flow-job.js +2 -0
- package/dist/esm/interfaces/flow-job.js.map +1 -0
- package/dist/esm/interfaces/index.d.ts +19 -0
- package/dist/esm/interfaces/index.js +20 -0
- package/dist/esm/interfaces/index.js.map +1 -0
- package/dist/esm/interfaces/jobs-options.d.ts +91 -0
- package/dist/esm/interfaces/jobs-options.js +2 -0
- package/dist/esm/interfaces/jobs-options.js.map +1 -0
- package/dist/esm/interfaces/parent-command.d.ts +9 -0
- package/dist/esm/interfaces/parent-command.js +11 -0
- package/dist/esm/interfaces/parent-command.js.map +1 -0
- package/dist/esm/interfaces/parent-message.d.ts +8 -0
- package/dist/esm/interfaces/parent-message.js +2 -0
- package/dist/esm/interfaces/parent-message.js.map +1 -0
- package/dist/esm/interfaces/parent.d.ts +11 -0
- package/dist/esm/interfaces/parent.js +2 -0
- package/dist/esm/interfaces/parent.js.map +1 -0
- package/dist/esm/interfaces/queue-options.d.ts +72 -0
- package/dist/esm/interfaces/queue-options.js +6 -0
- package/dist/esm/interfaces/queue-options.js.map +1 -0
- package/dist/esm/interfaces/queue-scheduler-options.d.ts +23 -0
- package/dist/esm/interfaces/queue-scheduler-options.js +2 -0
- package/dist/esm/interfaces/queue-scheduler-options.js.map +1 -0
- package/dist/esm/interfaces/rate-limiter-options.d.ts +30 -0
- package/dist/esm/interfaces/rate-limiter-options.js +2 -0
- package/dist/esm/interfaces/rate-limiter-options.js.map +1 -0
- package/dist/esm/interfaces/redis-options.d.ts +5 -0
- package/dist/esm/interfaces/redis-options.js +2 -0
- package/dist/esm/interfaces/redis-options.js.map +1 -0
- package/dist/esm/interfaces/redis-streams.d.ts +4 -0
- package/dist/esm/interfaces/redis-streams.js +2 -0
- package/dist/esm/interfaces/redis-streams.js.map +1 -0
- package/dist/esm/interfaces/repeat-options.d.ts +44 -0
- package/dist/esm/interfaces/repeat-options.js +2 -0
- package/dist/esm/interfaces/repeat-options.js.map +1 -0
- package/dist/esm/interfaces/sandboxed-job-processor.d.ts +5 -0
- package/dist/esm/interfaces/sandboxed-job-processor.js +2 -0
- package/dist/esm/interfaces/sandboxed-job-processor.js.map +1 -0
- package/dist/esm/interfaces/sandboxed-job.d.ts +13 -0
- package/dist/esm/interfaces/sandboxed-job.js +2 -0
- package/dist/esm/interfaces/sandboxed-job.js.map +1 -0
- package/dist/esm/interfaces/worker-options.d.ts +32 -0
- package/dist/esm/interfaces/worker-options.js +2 -0
- package/dist/esm/interfaces/worker-options.js.map +1 -0
- package/dist/esm/tsdoc-metadata.json +11 -0
- package/dist/esm/utils.d.ts +29 -0
- package/dist/esm/utils.js +124 -0
- package/dist/esm/utils.js.map +1 -0
- package/package.json +14 -12
- package/dist/classes/backoffs.js.map +0 -1
- package/dist/classes/child-pool.js.map +0 -1
- package/dist/classes/child-processor.js.map +0 -1
- package/dist/classes/compat.js.map +0 -1
- package/dist/classes/flow-producer.js.map +0 -1
- package/dist/classes/index.js.map +0 -1
- package/dist/classes/job.js.map +0 -1
- package/dist/classes/master.js.map +0 -1
- package/dist/classes/process-utils.js.map +0 -1
- package/dist/classes/queue-base.js.map +0 -1
- package/dist/classes/queue-events.js.map +0 -1
- package/dist/classes/queue-getters.js.map +0 -1
- package/dist/classes/queue-keys.js.map +0 -1
- package/dist/classes/queue-scheduler.js.map +0 -1
- package/dist/classes/queue.js.map +0 -1
- package/dist/classes/redis-connection.js.map +0 -1
- package/dist/classes/repeat.js.map +0 -1
- package/dist/classes/sandbox.js.map +0 -1
- package/dist/classes/scripts.js.map +0 -1
- package/dist/classes/timer-manager.js.map +0 -1
- package/dist/classes/worker.js.map +0 -1
- package/dist/commands/index.js.map +0 -1
- package/dist/commands/script-loader.js.map +0 -1
- package/dist/enums/error-codes.enum.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/interfaces/advanced-options.js.map +0 -1
- package/dist/interfaces/backoff-options.js.map +0 -1
- package/dist/interfaces/child-command.js.map +0 -1
- package/dist/interfaces/child-message.js.map +0 -1
- package/dist/interfaces/connection.js.map +0 -1
- package/dist/interfaces/index.js.map +0 -1
- package/dist/interfaces/jobs-options.js.map +0 -1
- package/dist/interfaces/parent-command.js.map +0 -1
- package/dist/interfaces/parent-message.js.map +0 -1
- package/dist/interfaces/queue-options.js.map +0 -1
- package/dist/interfaces/queue-scheduler-options.js.map +0 -1
- package/dist/interfaces/rate-limiter-options.js.map +0 -1
- package/dist/interfaces/redis-options.d.ts +0 -5
- package/dist/interfaces/redis-options.js.map +0 -1
- package/dist/interfaces/redis-streams.js.map +0 -1
- package/dist/interfaces/repeat-options.js.map +0 -1
- package/dist/interfaces/sandboxed-job-processor.js.map +0 -1
- package/dist/interfaces/sandboxed-job.js.map +0 -1
- package/dist/interfaces/worker-options.js.map +0 -1
- package/dist/utils.js.map +0 -1
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"worker.js","sourceRoot":"","sources":["../../../src/classes/worker.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,179 @@
|
|
1
|
+
--[[
|
2
|
+
Adds a job to the queue by doing the following:
|
3
|
+
- Increases the job counter if needed.
|
4
|
+
- Creates a new job key with the job data.
|
5
|
+
|
6
|
+
- if delayed:
|
7
|
+
- computes timestamp.
|
8
|
+
- adds to delayed zset.
|
9
|
+
- Emits a global event 'delayed' if the job is delayed.
|
10
|
+
- if not delayed
|
11
|
+
- Adds the jobId to the wait/paused list in one of three ways:
|
12
|
+
- LIFO
|
13
|
+
- FIFO
|
14
|
+
- prioritized.
|
15
|
+
- Adds the job to the "added" list so that workers gets notified.
|
16
|
+
|
17
|
+
Input:
|
18
|
+
KEYS[1] 'wait',
|
19
|
+
KEYS[2] 'paused'
|
20
|
+
KEYS[3] 'meta'
|
21
|
+
KEYS[4] 'id'
|
22
|
+
KEYS[5] 'delayed'
|
23
|
+
KEYS[6] 'priority'
|
24
|
+
KEYS[7] 'completed'
|
25
|
+
KEYS[8] events stream key
|
26
|
+
KEYS[9] delay stream key
|
27
|
+
|
28
|
+
ARGV[1] msgpacked arguments array
|
29
|
+
[1] key prefix,
|
30
|
+
[2] custom id (will not generate one automatically)
|
31
|
+
[3] name
|
32
|
+
[4] timestamp
|
33
|
+
[5] parentKey?
|
34
|
+
[6] waitChildrenKey key.
|
35
|
+
[7] parent dependencies key.
|
36
|
+
|
37
|
+
ARGV[2] Json stringified job data
|
38
|
+
ARGV[3] msgpacked options
|
39
|
+
|
40
|
+
Output:
|
41
|
+
jobId - OK
|
42
|
+
-5 - Missing parent key
|
43
|
+
]]
|
44
|
+
local jobId
|
45
|
+
local jobIdKey
|
46
|
+
local rcall = redis.call
|
47
|
+
|
48
|
+
local args = cmsgpack.unpack(ARGV[1])
|
49
|
+
|
50
|
+
local data = ARGV[2]
|
51
|
+
local opts = cmsgpack.unpack(ARGV[3])
|
52
|
+
|
53
|
+
local parentKey = args[5]
|
54
|
+
local parentId
|
55
|
+
local parentQueueKey
|
56
|
+
local parentData
|
57
|
+
|
58
|
+
-- Includes
|
59
|
+
--- @include "includes/destructureJobKey"
|
60
|
+
|
61
|
+
if parentKey ~= nil then
|
62
|
+
if rcall("EXISTS", parentKey) ~= 1 then
|
63
|
+
return -5
|
64
|
+
end
|
65
|
+
|
66
|
+
parentId = getJobIdFromKey(parentKey)
|
67
|
+
parentQueueKey = getJobKeyPrefix(parentKey, ":" .. parentId)
|
68
|
+
local parent = {}
|
69
|
+
parent['id'] = parentId
|
70
|
+
parent['queueKey'] = parentQueueKey
|
71
|
+
parentData = cjson.encode(parent)
|
72
|
+
end
|
73
|
+
|
74
|
+
local jobCounter = rcall("INCR", KEYS[4])
|
75
|
+
|
76
|
+
-- Includes
|
77
|
+
--- @include "includes/updateParentDepsIfNeeded"
|
78
|
+
|
79
|
+
local parentDependenciesKey = args[7]
|
80
|
+
if args[2] == "" then
|
81
|
+
jobId = jobCounter
|
82
|
+
jobIdKey = args[1] .. jobId
|
83
|
+
else
|
84
|
+
jobId = args[2]
|
85
|
+
jobIdKey = args[1] .. jobId
|
86
|
+
if rcall("EXISTS", jobIdKey) == 1 then
|
87
|
+
if parentKey ~= nil then
|
88
|
+
if rcall("ZSCORE", KEYS[7], jobId) ~= false then
|
89
|
+
local returnvalue = rcall("HGET", jobIdKey, "returnvalue")
|
90
|
+
updateParentDepsIfNeeded(parentKey, parentQueueKey, parentDependenciesKey, parentId, jobIdKey, returnvalue)
|
91
|
+
else
|
92
|
+
if parentDependenciesKey ~= nil then
|
93
|
+
rcall("SADD", parentDependenciesKey, jobIdKey)
|
94
|
+
end
|
95
|
+
end
|
96
|
+
rcall("HMSET", jobIdKey, "parentKey", parentKey, "parent", parentData)
|
97
|
+
end
|
98
|
+
return jobId .. "" -- convert to string
|
99
|
+
end
|
100
|
+
end
|
101
|
+
|
102
|
+
-- Store the job.
|
103
|
+
local jsonOpts = cjson.encode(opts)
|
104
|
+
local delay = opts['delay'] or 0
|
105
|
+
local priority = opts['priority'] or 0
|
106
|
+
local timestamp = args[4]
|
107
|
+
|
108
|
+
if parentKey ~= nil then
|
109
|
+
rcall("HMSET", jobIdKey, "name", args[3], "data", ARGV[2], "opts", jsonOpts,
|
110
|
+
"timestamp", timestamp, "delay", delay, "priority", priority, "parentKey", parentKey, "parent", parentData)
|
111
|
+
else
|
112
|
+
rcall("HMSET", jobIdKey, "name", args[3], "data", ARGV[2], "opts", jsonOpts,
|
113
|
+
"timestamp", timestamp, "delay", delay, "priority", priority )
|
114
|
+
end
|
115
|
+
|
116
|
+
-- TODO: do not send data and opts to the event added (for performance reasons).
|
117
|
+
rcall("XADD", KEYS[8], "*", "event", "added", "jobId", jobId, "name", args[3], "data", ARGV[2], "opts", jsonOpts)
|
118
|
+
|
119
|
+
-- Check if job is delayed
|
120
|
+
local delayedTimestamp = (delay > 0 and (timestamp + delay)) or 0
|
121
|
+
|
122
|
+
-- Check if job is a parent, if so add to the parents set
|
123
|
+
local waitChildrenKey = args[6]
|
124
|
+
if waitChildrenKey ~= nil then
|
125
|
+
rcall("ZADD", waitChildrenKey, timestamp, jobId)
|
126
|
+
rcall("XADD", KEYS[8], "*", "event", "waiting-children", "jobId", jobId)
|
127
|
+
elseif (delayedTimestamp ~= 0) then
|
128
|
+
local timestamp = delayedTimestamp * 0x1000 + bit.band(jobCounter, 0xfff)
|
129
|
+
rcall("ZADD", KEYS[5], timestamp, jobId)
|
130
|
+
rcall("XADD", KEYS[8], "*", "event", "delayed", "jobId", jobId, "delay",
|
131
|
+
delayedTimestamp)
|
132
|
+
rcall("XADD", KEYS[9], "*", "nextTimestamp", delayedTimestamp)
|
133
|
+
else
|
134
|
+
local target
|
135
|
+
|
136
|
+
-- We check for the meta.paused key to decide if we are paused or not
|
137
|
+
-- (since an empty list and !EXISTS are not really the same)
|
138
|
+
local paused
|
139
|
+
if rcall("HEXISTS", KEYS[3], "paused") ~= 1 then
|
140
|
+
target = KEYS[1]
|
141
|
+
paused = false
|
142
|
+
else
|
143
|
+
target = KEYS[2]
|
144
|
+
paused = true
|
145
|
+
end
|
146
|
+
|
147
|
+
-- Standard or priority add
|
148
|
+
if priority == 0 then
|
149
|
+
-- LIFO or FIFO
|
150
|
+
local pushCmd = opts['lifo'] and 'RPUSH' or 'LPUSH';
|
151
|
+
rcall(pushCmd, target, jobId)
|
152
|
+
else
|
153
|
+
-- Priority add
|
154
|
+
rcall("ZADD", KEYS[6], priority, jobId)
|
155
|
+
local count = rcall("ZCOUNT", KEYS[6], 0, priority)
|
156
|
+
|
157
|
+
local len = rcall("LLEN", target)
|
158
|
+
local id = rcall("LINDEX", target, len - (count - 1))
|
159
|
+
if id then
|
160
|
+
rcall("LINSERT", target, "BEFORE", id, jobId)
|
161
|
+
else
|
162
|
+
rcall("RPUSH", target, jobId)
|
163
|
+
end
|
164
|
+
end
|
165
|
+
-- Emit waiting event
|
166
|
+
rcall("XADD", KEYS[8], "*", "event", "waiting", "jobId", jobId)
|
167
|
+
end
|
168
|
+
|
169
|
+
-- Check if this job is a child of another job, if so add it to the parents dependencies
|
170
|
+
-- TODO: Should not be possible to add a child job to a parent that is not in the "waiting-children" status.
|
171
|
+
-- fail in this case.
|
172
|
+
if parentDependenciesKey ~= nil then
|
173
|
+
rcall("SADD", parentDependenciesKey, jobIdKey)
|
174
|
+
end
|
175
|
+
|
176
|
+
local maxEvents = rcall("HGET", KEYS[3], "opts.maxLenEvents")
|
177
|
+
if (maxEvents) then rcall("XTRIM", KEYS[8], "MAXLEN", "~", maxEvents) end
|
178
|
+
|
179
|
+
return jobId .. "" -- convert to string
|
@@ -0,0 +1,41 @@
|
|
1
|
+
--[[
|
2
|
+
Change job delay when it is in delayed set.
|
3
|
+
Input:
|
4
|
+
KEYS[1] delayed key
|
5
|
+
KEYS[2] job key
|
6
|
+
KEYS[3] events stream
|
7
|
+
KEYS[4] delayed stream
|
8
|
+
|
9
|
+
ARGV[1] delayedTimestamp
|
10
|
+
ARGV[2] the id of the job
|
11
|
+
Output:
|
12
|
+
0 - OK
|
13
|
+
-1 - Missing job.
|
14
|
+
-3 - Job not in delayed set.
|
15
|
+
|
16
|
+
Events:
|
17
|
+
- delayed key.
|
18
|
+
]]
|
19
|
+
local rcall = redis.call
|
20
|
+
|
21
|
+
if rcall("EXISTS", KEYS[2]) == 1 then
|
22
|
+
|
23
|
+
local jobId = ARGV[2]
|
24
|
+
local score = tonumber(ARGV[1])
|
25
|
+
local delayedTimestamp = (score / 0x1000)
|
26
|
+
|
27
|
+
local numRemovedElements = rcall("ZREM", KEYS[1], jobId)
|
28
|
+
|
29
|
+
if (numRemovedElements < 1) then
|
30
|
+
return -3
|
31
|
+
end
|
32
|
+
|
33
|
+
rcall("ZADD", KEYS[1], score, jobId)
|
34
|
+
|
35
|
+
rcall("XADD", KEYS[3], "*", "event", "delayed", "jobId", jobId, "delay", delayedTimestamp);
|
36
|
+
rcall("XADD", KEYS[4], "*", "nextTimestamp", delayedTimestamp);
|
37
|
+
|
38
|
+
return 0
|
39
|
+
else
|
40
|
+
return -1
|
41
|
+
end
|
@@ -0,0 +1,65 @@
|
|
1
|
+
--[[
|
2
|
+
Remove jobs from the specific set.
|
3
|
+
|
4
|
+
Input:
|
5
|
+
KEYS[1] set key,
|
6
|
+
KEYS[2] events stream key
|
7
|
+
|
8
|
+
ARGV[1] jobId
|
9
|
+
ARGV[2] timestamp
|
10
|
+
ARGV[3] limit the number of jobs to be removed. 0 is unlimited
|
11
|
+
ARGV[4] set name, can be any of 'wait', 'active', 'paused', 'delayed', 'completed', or 'failed'
|
12
|
+
]]
|
13
|
+
local rcall = redis.call
|
14
|
+
local command = "ZRANGE"
|
15
|
+
local isList = false
|
16
|
+
|
17
|
+
if ARGV[4] == "wait" or ARGV[4] == "active" or ARGV[4] == "paused" then
|
18
|
+
command = "LRANGE"
|
19
|
+
isList = true
|
20
|
+
end
|
21
|
+
|
22
|
+
local rangeStart = 0
|
23
|
+
local rangeEnd = -1
|
24
|
+
|
25
|
+
local limit = tonumber(ARGV[3])
|
26
|
+
|
27
|
+
-- If we're only deleting _n_ items, avoid retrieving all items
|
28
|
+
-- for faster performance
|
29
|
+
--
|
30
|
+
-- Start from the tail of the list, since that's where oldest elements
|
31
|
+
-- are generally added for FIFO lists
|
32
|
+
if limit > 0 then
|
33
|
+
rangeStart = -1 - limit + 1
|
34
|
+
rangeEnd = -1
|
35
|
+
end
|
36
|
+
|
37
|
+
local jobs = rcall(command, KEYS[1], rangeStart, rangeEnd)
|
38
|
+
local deleted = {}
|
39
|
+
local deletedCount = 0
|
40
|
+
local jobTS
|
41
|
+
for _, job in ipairs(jobs) do
|
42
|
+
if limit > 0 and deletedCount >= limit then
|
43
|
+
break
|
44
|
+
end
|
45
|
+
|
46
|
+
local jobKey = ARGV[1] .. job
|
47
|
+
if (rcall("EXISTS", jobKey .. ":lock") == 0) then
|
48
|
+
jobTS = rcall("HGET", jobKey, "timestamp")
|
49
|
+
if (not jobTS or jobTS < ARGV[2]) then
|
50
|
+
if isList then
|
51
|
+
rcall("LREM", KEYS[1], 0, job)
|
52
|
+
else
|
53
|
+
rcall("ZREM", KEYS[1], job)
|
54
|
+
end
|
55
|
+
rcall("DEL", jobKey)
|
56
|
+
rcall("DEL", jobKey .. ":logs")
|
57
|
+
deletedCount = deletedCount + 1
|
58
|
+
table.insert(deleted, job)
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
62
|
+
|
63
|
+
rcall("XADD", KEYS[2], "*", "event", "cleaned", "count", deletedCount)
|
64
|
+
|
65
|
+
return deleted
|
@@ -0,0 +1,36 @@
|
|
1
|
+
--[[
|
2
|
+
Drains the queue, removes all jobs that are waiting
|
3
|
+
or delayed, but not active, completed or failed
|
4
|
+
|
5
|
+
Input:
|
6
|
+
KEYS[1] 'wait',
|
7
|
+
KEYS[2] 'paused'
|
8
|
+
KEYS[3] 'delayed'
|
9
|
+
KEYS[4] 'priority'
|
10
|
+
|
11
|
+
ARGV[1] queue key prefix
|
12
|
+
]]
|
13
|
+
local rcall = redis.call
|
14
|
+
local queueBaseKey = ARGV[1]
|
15
|
+
|
16
|
+
local function removeJobs (list)
|
17
|
+
for _, id in ipairs(list) do
|
18
|
+
rcall("DEL", queueBaseKey .. id)
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
local wait_ids = rcall("LRANGE", KEYS[1] , 0, -1)
|
23
|
+
local paused_ids = rcall("LRANGE", KEYS[2] , 0, -1)
|
24
|
+
|
25
|
+
removeJobs(wait_ids)
|
26
|
+
removeJobs(paused_ids)
|
27
|
+
|
28
|
+
if KEYS[3] ~= "" then
|
29
|
+
local delayed_ids = rcall("ZRANGE", KEYS[3] , 0, -1)
|
30
|
+
removeJobs(delayed_ids)
|
31
|
+
rcall("DEL", KEYS[3])
|
32
|
+
end
|
33
|
+
|
34
|
+
rcall("DEL", KEYS[1])
|
35
|
+
rcall("DEL", KEYS[2])
|
36
|
+
rcall("DEL", KEYS[4])
|
@@ -0,0 +1,23 @@
|
|
1
|
+
--[[
|
2
|
+
Extend lock and removes the job from the stalled set.
|
3
|
+
|
4
|
+
Input:
|
5
|
+
KEYS[1] 'lock',
|
6
|
+
KEYS[2] 'stalled'
|
7
|
+
|
8
|
+
ARGV[1] token
|
9
|
+
ARGV[2] lock duration in milliseconds
|
10
|
+
ARGV[3] jobid
|
11
|
+
|
12
|
+
Output:
|
13
|
+
"1" if lock extented succesfully.
|
14
|
+
]]
|
15
|
+
local rcall = redis.call
|
16
|
+
if rcall("GET", KEYS[1]) == ARGV[1] then
|
17
|
+
-- if rcall("SET", KEYS[1], ARGV[1], "PX", ARGV[2], "XX") then
|
18
|
+
if rcall("SET", KEYS[1], ARGV[1], "PX", ARGV[2]) then
|
19
|
+
rcall("SREM", KEYS[2], ARGV[3])
|
20
|
+
return 1
|
21
|
+
end
|
22
|
+
end
|
23
|
+
return 0
|
@@ -0,0 +1,63 @@
|
|
1
|
+
--[[
|
2
|
+
Get a job state
|
3
|
+
|
4
|
+
Input:
|
5
|
+
KEYS[1] 'completed' key,
|
6
|
+
KEYS[2] 'failed' key
|
7
|
+
KEYS[3] 'delayed' key
|
8
|
+
KEYS[4] 'active' key
|
9
|
+
KEYS[5] 'wait' key
|
10
|
+
KEYS[6] 'paused' key
|
11
|
+
KEYS[7] waitChildrenKey key
|
12
|
+
|
13
|
+
ARGV[1] job id
|
14
|
+
Output:
|
15
|
+
'completed'
|
16
|
+
'failed'
|
17
|
+
'delayed'
|
18
|
+
'active'
|
19
|
+
'waiting'
|
20
|
+
'waiting-children'
|
21
|
+
'unknown'
|
22
|
+
]]
|
23
|
+
if redis.call("ZSCORE", KEYS[1], ARGV[1]) ~= false then
|
24
|
+
return "completed"
|
25
|
+
end
|
26
|
+
|
27
|
+
if redis.call("ZSCORE", KEYS[2], ARGV[1]) ~= false then
|
28
|
+
return "failed"
|
29
|
+
end
|
30
|
+
|
31
|
+
if redis.call("ZSCORE", KEYS[3], ARGV[1]) ~= false then
|
32
|
+
return "delayed"
|
33
|
+
end
|
34
|
+
|
35
|
+
local function item_in_list (list, item)
|
36
|
+
for _, v in pairs(list) do
|
37
|
+
if v == item then
|
38
|
+
return 1
|
39
|
+
end
|
40
|
+
end
|
41
|
+
return nil
|
42
|
+
end
|
43
|
+
|
44
|
+
local active_items = redis.call("LRANGE", KEYS[4] , 0, -1)
|
45
|
+
if item_in_list(active_items, ARGV[1]) ~= nil then
|
46
|
+
return "active"
|
47
|
+
end
|
48
|
+
|
49
|
+
local wait_items = redis.call("LRANGE", KEYS[5] , 0, -1)
|
50
|
+
if item_in_list(wait_items, ARGV[1]) ~= nil then
|
51
|
+
return "waiting"
|
52
|
+
end
|
53
|
+
|
54
|
+
local paused_items = redis.call("LRANGE", KEYS[6] , 0, -1)
|
55
|
+
if item_in_list(paused_items, ARGV[1]) ~= nil then
|
56
|
+
return "waiting"
|
57
|
+
end
|
58
|
+
|
59
|
+
if redis.call("ZSCORE", KEYS[7], ARGV[1]) ~= false then
|
60
|
+
return "waiting-children"
|
61
|
+
end
|
62
|
+
|
63
|
+
return "unknown"
|
@@ -0,0 +1,51 @@
|
|
1
|
+
--[[
|
2
|
+
Get a job state
|
3
|
+
|
4
|
+
Input:
|
5
|
+
KEYS[1] 'completed' key,
|
6
|
+
KEYS[2] 'failed' key
|
7
|
+
KEYS[3] 'delayed' key
|
8
|
+
KEYS[4] 'active' key
|
9
|
+
KEYS[5] 'wait' key
|
10
|
+
KEYS[6] 'paused' key
|
11
|
+
KEYS[7] waitChildrenKey key
|
12
|
+
|
13
|
+
ARGV[1] job id
|
14
|
+
Output:
|
15
|
+
'completed'
|
16
|
+
'failed'
|
17
|
+
'delayed'
|
18
|
+
'active'
|
19
|
+
'waiting'
|
20
|
+
'waiting-children'
|
21
|
+
'unknown'
|
22
|
+
]]
|
23
|
+
if redis.call("ZSCORE", KEYS[1], ARGV[1]) ~= false then
|
24
|
+
return "completed"
|
25
|
+
end
|
26
|
+
|
27
|
+
if redis.call("ZSCORE", KEYS[2], ARGV[1]) ~= false then
|
28
|
+
return "failed"
|
29
|
+
end
|
30
|
+
|
31
|
+
if redis.call("ZSCORE", KEYS[3], ARGV[1]) ~= false then
|
32
|
+
return "delayed"
|
33
|
+
end
|
34
|
+
|
35
|
+
if redis.call("LPOS", KEYS[4] , ARGV[1]) ~= false then
|
36
|
+
return "active"
|
37
|
+
end
|
38
|
+
|
39
|
+
if redis.call("LPOS", KEYS[5] , ARGV[1]) ~= false then
|
40
|
+
return "waiting"
|
41
|
+
end
|
42
|
+
|
43
|
+
if redis.call("LPOS", KEYS[6] , ARGV[1]) ~= false then
|
44
|
+
return "waiting"
|
45
|
+
end
|
46
|
+
|
47
|
+
if redis.call("ZSCORE", KEYS[7] , ARGV[1]) ~= false then
|
48
|
+
return "waiting-children"
|
49
|
+
end
|
50
|
+
|
51
|
+
return "unknown"
|
@@ -0,0 +1,12 @@
|
|
1
|
+
--[[
|
2
|
+
Functions to destructure job key.
|
3
|
+
Just a bit of warning, these functions may be a bit slow and affect performance significantly.
|
4
|
+
]]
|
5
|
+
|
6
|
+
local getJobIdFromKey = function (jobKey)
|
7
|
+
return string.match(jobKey, ".*:(.*)")
|
8
|
+
end
|
9
|
+
|
10
|
+
local getJobKeyPrefix = function (jobKey, jobId)
|
11
|
+
return string.sub(jobKey, 0, #jobKey - #jobId)
|
12
|
+
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
--[[
|
2
|
+
Validate and move or add dependencies to parent.
|
3
|
+
]]
|
4
|
+
|
5
|
+
local function updateParentDepsIfNeeded(parentKey, parentQueueKey, parentDependenciesKey, parentId, jobIdKey, returnvalue )
|
6
|
+
local processedSet = parentKey .. ":processed"
|
7
|
+
rcall("HSET", processedSet, jobIdKey, returnvalue)
|
8
|
+
local activeParent = rcall("ZSCORE", parentQueueKey .. ":waiting-children", parentId)
|
9
|
+
if rcall("SCARD", parentDependenciesKey) == 0 and activeParent then
|
10
|
+
rcall("ZREM", parentQueueKey .. ":waiting-children", parentId)
|
11
|
+
if rcall("HEXISTS", parentQueueKey .. ":meta", "paused") ~= 1 then
|
12
|
+
rcall("RPUSH", parentQueueKey .. ":wait", parentId)
|
13
|
+
else
|
14
|
+
rcall("RPUSH", parentQueueKey .. ":paused", parentId)
|
15
|
+
end
|
16
|
+
local parentEventStream = parentQueueKey .. ":events"
|
17
|
+
rcall("XADD", parentEventStream, "*", "event", "active", "jobId", parentId, "prev", "waiting-children")
|
18
|
+
end
|
19
|
+
end
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAA2B,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAE7E,MAAM,YAAY,GAAG,IAAI,YAAY,EAAE,CAAC;AAExC,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,CAAC"}
|
@@ -0,0 +1,48 @@
|
|
1
|
+
--[[
|
2
|
+
Checks if a job is finished (.i.e. is in the completed or failed set)
|
3
|
+
|
4
|
+
Input:
|
5
|
+
KEYS[1] completed key
|
6
|
+
KEYS[2] failed key
|
7
|
+
KEYS[3] job key
|
8
|
+
|
9
|
+
ARGV[1] job id
|
10
|
+
ARGV[2] return value?
|
11
|
+
Output:
|
12
|
+
0 - Not finished.
|
13
|
+
1 - Completed.
|
14
|
+
2 - Failed.
|
15
|
+
-5 - Missing job.
|
16
|
+
]]
|
17
|
+
local rcall = redis.call
|
18
|
+
if rcall("EXISTS", KEYS[3]) ~= 1 then
|
19
|
+
if ARGV[2] == "1" then
|
20
|
+
|
21
|
+
return {-5,"Missing key for job " .. KEYS[3] .. ". isFinished"}
|
22
|
+
end
|
23
|
+
return -5
|
24
|
+
end
|
25
|
+
|
26
|
+
if rcall("ZSCORE", KEYS[1], ARGV[1]) ~= false then
|
27
|
+
if ARGV[2] == "1" then
|
28
|
+
local returnValue = rcall("HGET", KEYS[3], "returnvalue")
|
29
|
+
|
30
|
+
return {1,returnValue}
|
31
|
+
end
|
32
|
+
return 1
|
33
|
+
end
|
34
|
+
|
35
|
+
if rcall("ZSCORE", KEYS[2], ARGV[1]) ~= false then
|
36
|
+
if ARGV[2] == "1" then
|
37
|
+
local failedReason = rcall("HGET", KEYS[3], "failedReason")
|
38
|
+
|
39
|
+
return {2,failedReason}
|
40
|
+
end
|
41
|
+
return 2
|
42
|
+
end
|
43
|
+
|
44
|
+
if ARGV[2] == "1" then
|
45
|
+
return {0}
|
46
|
+
end
|
47
|
+
|
48
|
+
return 0
|
@@ -0,0 +1,20 @@
|
|
1
|
+
--[[
|
2
|
+
Checks if job is in a given list.
|
3
|
+
|
4
|
+
Input:
|
5
|
+
KEYS[1]
|
6
|
+
ARGV[1]
|
7
|
+
|
8
|
+
Output:
|
9
|
+
1 if element found in the list.
|
10
|
+
]]
|
11
|
+
local function item_in_list (list, item)
|
12
|
+
for _, v in pairs(list) do
|
13
|
+
if v == item then
|
14
|
+
return 1
|
15
|
+
end
|
16
|
+
end
|
17
|
+
return nil
|
18
|
+
end
|
19
|
+
local items = redis.call("LRANGE", KEYS[1] , 0, -1)
|
20
|
+
return item_in_list(items, ARGV[1])
|