La razón fue en nuestro caso:Sidekiq puede buscar la cola incorrecta. De manera predeterminada, Sidekiq usa una cola denominada "predeterminada". Usamos dos nombres de cola diferentes y los definimos en config/sidekiq.yml
# configuration file for Sidekiq
:queues:
- queue_name_1
- queue_name_2
El problema es que este archivo de configuración no se carga automáticamente por defecto en su entorno de desarrollo (a diferencia de database.yml
o thinking_sphinx.yml
por ejemplo) mediante un simple bundle exec sidekiq
dominio. Por lo tanto, escribimos nuestros trabajos en dos colas determinadas y Sidekiq estaba esperando trabajos en una tercera cola (la predeterminada). Tienes que pasar la ruta al archivo de configuración como un parámetro a través de -C
o --config
opción:
bundle exec sidekiq -C ./config/sidekiq.yml
o puede pasar los nombres de las colas directamente (aquí no se permiten espacios después de la coma):
bundle exec sidekiq -q queue_name_1,queue_name_2
Para encontrar el problema, es útil pasar la opción -v
o --verbose
en la línea de comando, también, o para usar :verbose: true
en el sidekiq.yml
expediente. Todo lo que está definido en un archivo de configuración es, por supuesto, inútil si el archivo de configuración no está cargado. Por lo tanto, asegúrese de estar usando el archivo de configuración correcto primero.