-
Notifications
You must be signed in to change notification settings - Fork 211
Description
Hi,
I've been getting some errors with SolidQueue lately in development and production environments.
I added the gem later in the project and configure as specifed in the doc (README). Whenever I run the command: bin/rails solid_queue:start, I get the error: NoMethodError: undefined method `new' for an instance of JSON (NoMethodError).
The same issue arises when I run bin/rails.
I am running on Ruby 8 and Rails 8.0.4
See below the steps and output
:~/development$ bin/rails solid_queue:start --trace
** Invoke solid_queue:start (first_time)
** Invoke environment (first_time)
** Execute environment
** Execute solid_queue:start
bin/rails aborted!
NoMethodError: undefined method `new' for an instance of JSON (NoMethodError)
return @object_class.new
^^^^
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/activerecord-8.0.4/lib/active_record/coders/column_serializer.rb:32:in `load'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/activerecord-8.0.4/lib/active_record/coders/yaml_column.rb:89:in `check_arity_of_constructor'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/activerecord-8.0.4/lib/active_record/coders/column_serializer.rb:13:in `initialize'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/activerecord-8.0.4/lib/active_record/coders/yaml_column.rb:60:in `initialize'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/activerecord-8.0.4/lib/active_record/store.rb:270:in `new'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/activerecord-8.0.4/lib/active_record/store.rb:270:in `initialize'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/activerecord-8.0.4/lib/active_record/store.rb:108:in `new'
/home/deva/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/activerecord-8.0.4/lib/active_record/store.rb:108:in `store'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/solid_queue-1.2.4/app/models/solid_queue/process.rb:9:in `<class:Process>'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/solid_queue-1.2.4/app/models/solid_queue/process.rb:3:in `<main>'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/3.3.0/bundled_gems.rb:74:in `require'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/3.3.0/bundled_gems.rb:74:in `block (2 levels) in replace_require'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/bootsnap-1.20.1/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:30:in `require'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/zeitwerk-2.7.4/lib/zeitwerk/core_ext/kernel.rb:26:in `require'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/solid_queue-1.2.4/lib/solid_queue/processes/registrable.rb:22:in `block in register'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/activesupport-8.0.4/lib/active_support/execution_wrapper.rb:91:in `wrap'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/solid_queue-1.2.4/lib/solid_queue/app_executor.rb:7:in `wrap_in_app_executor'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/solid_queue-1.2.4/lib/solid_queue/processes/registrable.rb:21:in `register'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/activesupport-8.0.4/lib/active_support/callbacks.rb:361:in `block in make_lambda'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/activesupport-8.0.4/lib/active_support/callbacks.rb:207:in `call'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/activesupport-8.0.4/lib/active_support/callbacks.rb:563:in `block in invoke_after'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/activesupport-8.0.4/lib/active_support/callbacks.rb:563:in `each'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/activesupport-8.0.4/lib/active_support/callbacks.rb:563:in `invoke_after'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/activesupport-8.0.4/lib/active_support/callbacks.rb:110:in `run_callbacks'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/solid_queue-1.2.4/lib/solid_queue/supervisor.rb:51:in `block in boot'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/activesupport-8.0.4/lib/active_support/notifications.rb:210:in `block in instrument'
/home/papebarka/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/activesupport-8.0.4/lib/active_support/notifications/instrumenter.rb:58:in `instrument'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/activesupport-8.0.4/lib/active_support/notifications.rb:210:in `instrument'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/solid_queue-1.2.4/lib/solid_queue.rb:73:in `instrument'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/solid_queue-1.2.4/lib/solid_queue/supervisor.rb:50:in `boot'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/solid_queue-1.2.4/lib/solid_queue/supervisor.rb:32:in `start'
<internal:kernel>:90:in `tap'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/solid_queue-1.2.4/lib/solid_queue/supervisor.rb:16:in `start'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/solid_queue-1.2.4/lib/solid_queue/tasks.rb:9:in `block (2 levels) in <main>'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/rake-13.3.1/lib/rake/task.rb:281:in `block in execute'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/rake-13.3.1/lib/rake/task.rb:281:in `each'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/rake-13.3.1/lib/rake/task.rb:281:in `execute'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/rake-13.3.1/lib/rake/task.rb:219:in `block in invoke_with_call_chain'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/rake-13.3.1/lib/rake/task.rb:199:in `synchronize'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/rake-13.3.1/lib/rake/task.rb:199:in `invoke_with_call_chain'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/rake-13.3.1/lib/rake/task.rb:188:in `invoke'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/rake-13.3.1/lib/rake/application.rb:188:in `invoke_task'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/rake-13.3.1/lib/rake/application.rb:138:in `block (2 levels) in top_level'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/rake-13.3.1/lib/rake/application.rb:138:in `each'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/rake-13.3.1/lib/rake/application.rb:138:in `block in top_level'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/rake-13.3.1/lib/rake/application.rb:147:in `run_with_threads'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/rake-13.3.1/lib/rake/application.rb:132:in `top_level'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/railties-8.0.4/lib/rails/commands/rake/rake_command.rb:27:in `block (2 levels) in perform'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/rake-13.3.1/lib/rake/application.rb:214:in `standard_exception_handling'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/railties-8.0.4/lib/rails/commands/rake/rake_command.rb:27:in `block in perform'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/railties-8.0.4/lib/rails/commands/rake/rake_command.rb:44:in `block in with_rake'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/rake-13.3.1/lib/rake/rake_module.rb:59:in `with_application'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/railties-8.0.4/lib/rails/commands/rake/rake_command.rb:41:in `with_rake'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/railties-8.0.4/lib/rails/commands/rake/rake_command.rb:20:in `perform'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/railties-8.0.4/lib/rails/command.rb:150:in `invoke_rake'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/railties-8.0.4/lib/rails/command.rb:67:in `block in invoke'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/railties-8.0.4/lib/rails/command.rb:143:in `with_argv'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/railties-8.0.4/lib/rails/command.rb:63:in `invoke'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/railties-8.0.4/lib/rails/commands.rb:18:in `<main>'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/3.3.0/bundled_gems.rb:74:in `require'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/3.3.0/bundled_gems.rb:74:in `block (2 levels) in replace_require'
/home/dev/.rbenv/versions/3.3.1/lib/ruby/gems/3.3.0/gems/bootsnap-1.20.1/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:30:in `require'
bin/rails:4:in `<main>'
Tasks: TOP => solid_queue:start
Errors I get from the development log when I start the server:
SolidQueue-1.2.4 Started Supervisor (6.3ms) pid: 28034, hostname: "LAPTOP-2L1R281R", process_id: nil, name: "supervisor-f7a86c4bacd160e19ef0"
Here is the content of queue.yml:
`
default: &default
dispatchers:
- polling_interval: 1
batch_size: 500
workers:
- queues: "*"
threads: 3
processes: <%= ENV.fetch("JOB_CONCURRENCY", 1) %>
polling_interval: 0.1
development:
<<: *default
database: strtup_development
test:
<<: *default
production:
<<: *default
`
The related configuration in develoment environment:
config.active_job.queue_adapter = :solid_queue