NicolasLM / spinach

Modern Redis task queue for Python 3
https://spinach.readthedocs.io
BSD 2-Clause "Simplified" License
63 stars 4 forks source link

RedisBroker: Track non-idempotent jobs as running, too #38

Closed 0xDEC0DE closed 5 months ago

0xDEC0DE commented 5 months ago

Push running-job markers down into the Redis for all jobs, and move the logic for re-enqueueing jobs from dead brokers into the script itself. Non-idempotent jobs running on a dead broker are still NOT re-enqueued.

This should cause non-idempotent jobs to no longer run "invisibly" on a Redis broker, as well as causing dead brokers to signal any non-idempotent jobs that were running on them as failed.

Fixes: Issue #18

bigjools commented 5 months ago

Got hit by this one today when that worker got killed!