seomoz / qless-core

Core Lua Scripts for qless
MIT License
85 stars 33 forks source link

moving a recurring job puts things in an inconsistent state #1

Closed myronmarston closed 11 years ago

myronmarston commented 11 years ago

It appears that moving a recurring job puts things in an inconsistent state. @proby noticed that in the move code it removes the jid entry from a bunch of sorted sets related to the old queue, but it does not remove it from the -recur set. Maybe this is the source of the inconsistency?

dlecocq commented 11 years ago

Actually, RecurringJob uses this code path in recur:update. What kinds of inconsistency are you guys seeing?

myronmarston commented 11 years ago

For one, canceled recurring jobs remain in redis and remain on the Qless Web UI. We haven't found a way to get rid of them completely.

There were deeper inconsistencies that @benkirzhner and I saw yesterday but I didn't investigate deep enough to give you much in the way of specifics. Canceling a recurring job appeared to delete jobs that had been spun off from the canceled jobs....at least, we started to get nil from jobs[jid] after canceling a recurring job so we thought that it may have canceled a jid we had. We also ran into a weird "invalid JSON" error (I forgot the wording) in one of the lua scripts.

dlecocq commented 11 years ago

Issue appears to be stale, and with the switch to unified, I'm feeling pretty confident this has been taken care of. I've not heard of this cropping up in a long while.