Skip to content

rake queuebus:subscribe not creating the subscribers #24

@imi56

Description

@imi56

There is no solution available on stackoverflow.
Gem versions:
rails version: 6.0

sidekiq (5.2.8)
      connection_pool (~> 2.2, >= 2.2.2)
      rack (< 2.1.0)
      rack-protection (>= 1.5.0)
      redis (>= 3.3.5, < 5)
sidekiq-bus (0.9.0)
      queue-bus (>= 0.7, < 1)
      sidekiq (~> 5.0, >= 3.0.0)
      sidekiq-scheduler (~> 3.0)

Here is the full trace of rake queuebus:subscribe

** Invoke queuebus:subscribe (first_time)
** Invoke queuebus:preload (first_time)
** Execute queuebus:preload
** Execute queuebus:subscribe
rake aborted!
No subscriptions created
/Users/Imi/.rvm/gems/ruby-2.6.0/gems/queue-bus-0.9.0/lib/queue_bus/tasks.rb:10:in `block (2 levels) in <top (required)>'
/Users/Imi/.rvm/gems/ruby-2.6.0/gems/rake-13.0.1/lib/rake/task.rb:281:in `block in execute'
/Users/Imi/.rvm/gems/ruby-2.6.0/gems/rake-13.0.1/lib/rake/task.rb:281:in `each'
/Users/Imi/.rvm/gems/ruby-2.6.0/gems/rake-13.0.1/lib/rake/task.rb:281:in `execute'
/Users/Imi/.rvm/gems/ruby-2.6.0/gems/rake-13.0.1/lib/rake/task.rb:219:in `block in invoke_with_call_chain'
/Users/Imi/.rvm/rubies/ruby-2.6.0/lib/ruby/2.6.0/monitor.rb:230:in `mon_synchronize'
/Users/Imi/.rvm/gems/ruby-2.6.0/gems/rake-13.0.1/lib/rake/task.rb:199:in `invoke_with_call_chain'
/Users/Imi/.rvm/gems/ruby-2.6.0/gems/rake-13.0.1/lib/rake/task.rb:188:in `invoke'
/Users/Imi/.rvm/gems/ruby-2.6.0/gems/rake-13.0.1/lib/rake/application.rb:160:in `invoke_task'
/Users/Imi/.rvm/gems/ruby-2.6.0/gems/rake-13.0.1/lib/rake/application.rb:116:in `block (2 levels) in top_level'
/Users/Imi/.rvm/gems/ruby-2.6.0/gems/rake-13.0.1/lib/rake/application.rb:116:in `each'
/Users/Imi/.rvm/gems/ruby-2.6.0/gems/rake-13.0.1/lib/rake/application.rb:116:in `block in top_level'
/Users/Imi/.rvm/gems/ruby-2.6.0/gems/rake-13.0.1/lib/rake/application.rb:125:in `run_with_threads'
/Users/Imi/.rvm/gems/ruby-2.6.0/gems/rake-13.0.1/lib/rake/application.rb:110:in `top_level'
/Users/Imi/.rvm/gems/ruby-2.6.0/gems/rake-13.0.1/lib/rake/application.rb:83:in `block in run'
/Users/Imi/.rvm/gems/ruby-2.6.0/gems/rake-13.0.1/lib/rake/application.rb:186:in `standard_exception_handling'
/Users/Imi/.rvm/gems/ruby-2.6.0/gems/rake-13.0.1/lib/rake/application.rb:80:in `run'
/Users/Imi/.rvm/gems/ruby-2.6.0/gems/rake-13.0.1/exe/rake:27:in `<top (required)>'
/Users/Imi/.rvm/gems/ruby-2.6.0/bin/rake:23:in `load'
/Users/Imi/.rvm/gems/ruby-2.6.0/bin/rake:23:in `<main>'
/Users/Imi/.rvm/gems/ruby-2.6.0/bin/ruby_executable_hooks:24:in `eval'
/Users/Imi/.rvm/gems/ruby-2.6.0/bin/ruby_executable_hooks:24:in `<main>'
Tasks: TOP => queuebus:subscribe

I am publishing the event (QueueBus.publish('concern_created', phone: '0000000005')) from rails console. As soon as I publish the event processed count in sidekiq is increased by one.

subscribers/base_subscriber.rb

class BaseSubscriber
  include QueueBus::Subscriber
  application :concern_api
end

subscribers/concern_subscriber.rb

class ConcernSubscriber < BaseSubscriber
  subscribe_queue :concern_events, :concern_created

  def concern_created(attr)
    put "******" * 20
    PartnerInvitation.create!({phone: attr['phone']})
  end
end

initializers/sidekiq.rb

require 'sidekiq'
require 'sidekiq/web'

Sidekiq.configure_server do |config|
  config.redis = { url: Rails.application.config_for(:redis)[:url] }
end

Sidekiq.configure_client do |config|
  config.redis = { url: Rails.application.config_for(:redis)[:url] }
end

# https://github.com/queue-bus/sidekiq-bus
if Sidekiq.server?
  # Load the queues into sidekiq:
  weights = {
    'app_events'    => 10,
    'app_heartbeat' => 3,
    'app_refresh'   => 1
  }
  Sidekiq.options[:queues] = SidekiqBus.generate_weighted_queues(overrides: weights, default: 2)
end

config/sidekiq.yml

:verbose: true
:timeout: 25
:queues:
  - critical
  - concern_events
  - default
  - low

Note: rake queuebus:queues returns only bus_incoming

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions