Потерянные рабочие места
Хотя я перезапускаю рабочих-резервистов во время развертывания, если приходит новое задание, тогда эти задания устанавливаются как помещенные в очередь в статусе восстановления, но на самом деле они не ставятся в очередь в режиме ожидания. Так что моя работа потеряна.
ruby-1.9.2-p180 :027 > status=Resque::Status.get("f050dd20bc45012e1e77723c9193eb99")
=> #<Resque::Status {"time"=>1315485749, "status"=>"queued", "uuid"=>"f050dd20bc45012e1e77723c9193eb99"}>
ruby-1.9.2-p180 :022 > status.status
=> "queued"
ruby-1.9.2-p180 :033 > Resque.info
=> {:pending=>0, :processed=>12943, :queues=>9, :workers=>10, :working=>0, :failed=>8911, :servers=>["redis://192.168.###.###:6379/0"], :environment=>"production"}
Как вы можете видеть, существует 12 заданий со статусом в очереди, но они не отображаются на вкладке Очереди, так как в режиме ожидания нет ожидающих заданий.
Как я могу исправить эту проблему?
Есть ли способ, чтобы реквизировать этих работников?
1 ответ
Решение
Это исправлено в 0.3.3 https://github.com/quirkey/resque-status/commit/dde6dcadcc248561aa223b6085b40d1c6e6a621b