O motivo foi no nosso caso:o Sidekiq pode procurar a fila errada. Por padrão, o Sidekiq usa uma fila chamada "padrão". Usamos dois nomes de filas diferentes e os definimos em config/sidekiq.yml
# configuration file for Sidekiq
:queues:
- queue_name_1
- queue_name_2
O problema é que este arquivo de configuração não é carregado automaticamente por padrão em seu ambiente de desenvolvimento (ao contrário de
database.yml
ou thinking_sphinx.yml
por exemplo) por um simples bundle exec sidekiq
comando. Assim, escrevemos nossos trabalhos em duas determinadas filas, e o Sidekiq estava aguardando trabalhos em uma terceira fila (a padrão). Você tem que passar o caminho para o arquivo de configuração como um parâmetro através do -C
ou --config
opção:bundle exec sidekiq -C ./config/sidekiq.yml
ou você pode passar os nomes das filas diretamente (sem espaços permitidos aqui após a vírgula):
bundle exec sidekiq -q queue_name_1,queue_name_2
Para descobrir o problema é útil passar a opção
-v
ou --verbose
na linha de comando também, ou usar :verbose: true
no sidekiq.yml
Arquivo. Tudo o que é definido em um arquivo de configuração é obviamente inútil se o arquivo de configuração não estiver carregado. Portanto, certifique-se de estar usando o arquivo de configuração correto primeiro.