Error when rebuilding/upgrading discourse due to bad plugin

Hi, in my discourse instance called “multi” (multisite), I noticed I had lot’s of util.rb:23 processes eating the ram/swap, so much I couldn’t ./launcher stop multi (no free HDD left…), so I unsuccessfully killed ruby, and then docker stop multi.

When trying to _./launcher rebuild multi, I have a fail error message:

FAILED
--------------------
Pups::ExecError: cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate' failed with return #<Process::Status: pid 1727 exit 1>
Location of failure: /pups/lib/pups/exec_command.rb:108:in `spawn'
exec failed with the params {"cd"=>"$home", "hook"=>"bundle_exec", "cmd"=>["su discourse -c 'bundle install --deployment --verbose --without test --without development --retry 3 --jobs 4'", "su discourse -c 'bundle exec rake db:migrate'", "su discourse -c 'bundle exec rake assets:precompile'"]}
d345ee0a5fb90227b0e5c676a371e5ca88d56da7a26fa896017d1e3de3e1d798
** FAILED TO BOOTSTRAP ** please scroll up and look for earlier error messages, there may be more than one

And here’s the error the caused it (pretty much right at the top):

I, [2017-12-26T21:05:30.619481 #14]  INFO -- : > cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate'
rake aborted!
LoadError: cannot load such file -- simple-rss
/var/www/discourse/vendor/bundle/ruby/2.4.0/gems/activesupport-5.1.4/lib/active_support/dependencies.rb:292:in `require'
/var/www/discourse/vendor/bundle/ruby/2.4.0/gems/activesupport-5.1.4/lib/active_support/dependencies.rb:292:in `block in require'
/var/www/discourse/vendor/bundle/ruby/2.4.0/gems/activesupport-5.1.4/lib/active_support/dependencies.rb:258:in `load_dependency'
/var/www/discourse/vendor/bundle/ruby/2.4.0/gems/activesupport-5.1.4/lib/active_support/dependencies.rb:292:in `require'
/var/www/discourse/plugins/discourse-autobot/app/jobs/regular/poll_website_feed.rb:5:in `<class:PollWebsiteFeed>'
/var/www/discourse/plugins/discourse-autobot/app/jobs/regular/poll_website_feed.rb:4:in `<module:Jobs>'
/var/www/discourse/plugins/discourse-autobot/app/jobs/regular/poll_website_feed.rb:3:in `<top (required)>'
/var/www/discourse/plugins/discourse-autobot/app/jobs/base.rb:23:in `require_relative'
/var/www/discourse/plugins/discourse-autobot/app/jobs/base.rb:23:in `<top (required)>'
/var/www/discourse/vendor/bundle/ruby/2.4.0/gems/activesupport-5.1.4/lib/active_support/dependencies.rb:286:in `load'
/var/www/discourse/vendor/bundle/ruby/2.4.0/gems/activesupport-5.1.4/lib/active_support/dependencies.rb:286:in `block in load'
/var/www/discourse/vendor/bundle/ruby/2.4.0/gems/activesupport-5.1.4/lib/active_support/dependencies.rb:258:in `load_dependency'
/var/www/discourse/vendor/bundle/ruby/2.4.0/gems/activesupport-5.1.4/lib/active_support/dependencies.rb:286:in `load'
/var/www/discourse/plugins/discourse-autobot/plugin.rb:25:in `block (2 levels) in activate!'
/var/www/discourse/plugins/discourse-autobot/plugin.rb:25:in `each'
/var/www/discourse/plugins/discourse-autobot/plugin.rb:25:in `block in activate!'
/var/www/discourse/lib/plugin/instance.rb:270:in `block in notify_after_initialize'
/var/www/discourse/lib/plugin/instance.rb:268:in `each'
/var/www/discourse/lib/plugin/instance.rb:268:in `notify_after_initialize'
/var/www/discourse/config/application.rb:219:in `each'
/var/www/discourse/config/application.rb:219:in `block in <class:Application>'
/var/www/discourse/vendor/bundle/ruby/2.4.0/gems/activesupport-5.1.4/lib/active_support/lazy_load_hooks.rb:67:in `block in execute_hook'
/var/www/discourse/vendor/bundle/ruby/2.4.0/gems/activesupport-5.1.4/lib/active_support/lazy_load_hooks.rb:60:in `with_execution_control'
/var/www/discourse/vendor/bundle/ruby/2.4.0/gems/activesupport-5.1.4/lib/active_support/lazy_load_hooks.rb:65:in `execute_hook'
/var/www/discourse/vendor/bundle/ruby/2.4.0/gems/activesupport-5.1.4/lib/active_support/lazy_load_hooks.rb:50:in `block in run_load_hooks'
/var/www/discourse/vendor/bundle/ruby/2.4.0/gems/activesupport-5.1.4/lib/active_support/lazy_load_hooks.rb:49:in `each'
/var/www/discourse/vendor/bundle/ruby/2.4.0/gems/activesupport-5.1.4/lib/active_support/lazy_load_hooks.rb:49:in `run_load_hooks'
/var/www/discourse/vendor/bundle/ruby/2.4.0/gems/railties-5.1.4/lib/rails/application/finisher.rb:73:in `block in <module:Finisher>'
/var/www/discourse/vendor/bundle/ruby/2.4.0/gems/railties-5.1.4/lib/rails/initializable.rb:30:in `instance_exec'
/var/www/discourse/vendor/bundle/ruby/2.4.0/gems/railties-5.1.4/lib/rails/initializable.rb:30:in `run'
/var/www/discourse/vendor/bundle/ruby/2.4.0/gems/railties-5.1.4/lib/rails/initializable.rb:59:in `block in run_initializers'
/var/www/discourse/vendor/bundle/ruby/2.4.0/gems/railties-5.1.4/lib/rails/initializable.rb:58:in `run_initializers'
/var/www/discourse/vendor/bundle/ruby/2.4.0/gems/railties-5.1.4/lib/rails/application.rb:353:in `initialize!'
/var/www/discourse/vendor/bundle/ruby/2.4.0/gems/railties-5.1.4/lib/rails/railtie.rb:185:in `public_send'
/var/www/discourse/vendor/bundle/ruby/2.4.0/gems/railties-5.1.4/lib/rails/railtie.rb:185:in `method_missing'
/var/www/discourse/config/environment.rb:5:in `<top (required)>'
/var/www/discourse/vendor/bundle/ruby/2.4.0/gems/activesupport-5.1.4/lib/active_support/dependencies.rb:292:in `require'
/var/www/discourse/vendor/bundle/ruby/2.4.0/gems/activesupport-5.1.4/lib/active_support/dependencies.rb:292:in `block in require'
/var/www/discourse/vendor/bundle/ruby/2.4.0/gems/activesupport-5.1.4/lib/active_support/dependencies.rb:258:in `load_dependency'
/var/www/discourse/vendor/bundle/ruby/2.4.0/gems/activesupport-5.1.4/lib/active_support/dependencies.rb:292:in `require'
/var/www/discourse/vendor/bundle/ruby/2.4.0/gems/railties-5.1.4/lib/rails/application.rb:329:in `require_environment!'
/var/www/discourse/vendor/bundle/ruby/2.4.0/gems/railties-5.1.4/lib/rails/application.rb:445:in `block in run_tasks_blocks'
/var/www/discourse/vendor/bundle/ruby/2.4.0/gems/rake-12.1.0/exe/rake:27:in `<top (required)>'
/usr/local/bin/bundle:23:in `load'
/usr/local/bin/bundle:23:in `<main>'
Tasks: TOP => db:migrate => environment
(See full trace by running task with --trace)
I, [2017-12-26T21:06:26.475478 #14]  INFO -- : gem install yt-support -v 0.1.3 -i /var/www/discourse/plugins/discourse-autobot/gems/2.4.2 --no-document --ignore-dependencies
Successfully installed yt-support-0.1.3
1 gem installed
gem install yt -v 0.32.1 -i /var/www/discourse/plugins/discourse-autobot/gems/2.4.2 --no-document --ignore-dependencies
Successfully installed yt-0.32.1
1 gem installed
gem install geocoder -v 1.4.4 -i /var/www/discourse/plugins/discourse-locations/gems/2.4.2 --no-document --ignore-dependencies
Successfully installed geocoder-1.4.4
1 gem installed
gem install omniauth-discord -v 0.1.5 -i /var/www/discourse/plugins/discourse-plugin-discord-auth/gems/2.4.2 --no-document --ignore-dependencies
Successfully installed omniauth-discord-0.1.5
1 gem installed
gem install omniauth-linkedin-oauth2 -v 0.2.5 -i /var/www/discourse/plugins/discourse-plugin-linkedin-auth/gems/2.4.2 --no-document --ignore-dependencies
Successfully installed omniauth-linkedin-oauth2-0.2.5
1 gem installed
gem install hkdf -v 0.3.0 -i /var/www/discourse/plugins/discourse-push-notifications/gems/2.4.2 --no-document --ignore-dependencies
Successfully installed hkdf-0.3.0
1 gem installed
gem install webpush -v 0.3.2 -i /var/www/discourse/plugins/discourse-push-notifications/gems/2.4.2 --no-document --ignore-dependencies
Successfully installed webpush-0.3.2
1 gem installed

I, [2017-12-26T21:06:26.478162 #14]  INFO -- : Terminating async processes
I, [2017-12-26T21:06:26.478635 #14]  INFO -- : Sending INT to HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/9.5/bin/postmaster -D /etc/postgresql/9.5/main pid: 43
2017-12-26 21:06:26.479 UTC [43] LOG:  received fast shutdown request
2017-12-26 21:06:26.480 UTC [43] LOG:  aborting any active transactions
2017-12-26 21:06:26.481 UTC [50] LOG:  autovacuum launcher shutting down
I, [2017-12-26T21:06:26.479127 #14]  INFO -- : Sending TERM to exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf pid: 1414
1414:signal-handler (1514322386) Received SIGTERM scheduling shutdown...
2017-12-26 21:06:26.486 UTC [47] LOG:  shutting down
1414:M 26 Dec 21:06:26.487 # User requested shutdown...
1414:M 26 Dec 21:06:26.487 * Saving the final RDB snapshot before exiting.
2017-12-26 21:06:26.502 UTC [47] LOG:  database system is shut down
1414:M 26 Dec 21:06:26.631 * DB saved on disk
1414:M 26 Dec 21:06:26.631 # Redis is now ready to exit, bye bye...

Then I tried to

./launcher start multi
./launcher enter multi
gem install simple-rss
gem update bundler
exit
./launcher cleanup
./launcher rebuild multi

But I got the same results. Before trying all that, I had increased my RAM and HDD resources, so this can’t be a problem (free -mh returns 1.6GBram + 1GBswap of free memory).

Has anyone had this problem, or could guide me on how to solve this?
Thanks in advance!

The auto bot plugin is broken and deprecated, remove it and rebuild.

5 Likes