Anledningen var i vårt fall:Sidekiq kan leta efter fel kö. Som standard använder Sidekiq en kö som heter "default". Vi använde två olika könamn och definierade dem i config/sidekiq.yml
# configuration file for Sidekiq
:queues:
- queue_name_1
- queue_name_2
Problemet är att den här konfigurationsfilen inte laddas automatiskt som standard i din utvecklingsmiljö (till skillnad från database.yml
eller thinking_sphinx.yml
till exempel) av en enkel bundle exec sidekiq
kommando. Således skrev vi våra jobb i två vissa köer, och Sidekiq väntade på jobb i en tredje kö (standardkön). Du måste skicka sökvägen till konfigurationsfilen som en parameter genom -C
eller --config
alternativ:
bundle exec sidekiq -C ./config/sidekiq.yml
eller så kan du skicka könamnen direkt (inga blanksteg tillåtna här efter kommatecken):
bundle exec sidekiq -q queue_name_1,queue_name_2
För att ta reda på problemet är det bra att skicka alternativet -v
eller --verbose
på kommandoraden också, eller för att använda :verbose: true
i sidekiq.yml
fil. Allt som är definierat i en konfigurationsfil är naturligtvis värdelöst om konfigurationsfilen inte är laddad. Se därför till att du använder rätt konfigurationsfil först.