Describe the bug
Parallel request to replay dead job enqueues same job twice in the ready queue.
To Reproduce
(deftest parallel-replay-same-job
(testing "Check the output for parallel prioritisation and deletion"
(f/create-jobs {:dead 1})
(let [[job] (dead-jobs/get-by-range tu/redis-conn 0 0)
response (pcalls (fn [] (dead-jobs/replay-job tu/redis-conn job)) (fn [] (dead-jobs/replay-job tu/redis-conn job)))
_ (println response)
_ (println (enqueued-jobs/get-by-range tu/redis-conn tu/queue 0 10));; 2 jobs
_ (println (enqueued-jobs/size tu/redis-conn tu/queue)) ;; 2
_ (println (dead-jobs/get-by-range tu/redis-conn 0 10))]))) ;; 0
Versions
- Goose: 0.5.1
- Clojure: 1.11.0
Screenshots
If applicable, add screenshots to help explain your problem.
Describe the bug
Parallel request to replay dead job enqueues same job twice in the ready queue.
To Reproduce
Versions
Screenshots
If applicable, add screenshots to help explain your problem.