puma: Restarting via `SIGUSR2` broken in 3.9.0 works in 3.8.2
Steps to reproduce
-
Updated application from puma 3.8.2 to 3.9.0
-
start puma server
bundle exec puma -p 3000
-
send USR2
kill -SIGUSR2 <pid>
Expected behavior
Puma server should be restarting and does so correctly in 3.8.2
Actual behavior
With version 3.9.0 the outcome is
* Listening on tcp://0.0.0.0:3000
Use Ctrl-C to stop
* Restarting...
/usr/local/lib/ruby/2.3.0/rubygems/dependency.rb:319:in `to_specs': Could not find 'puma' (>= 0.a) among 19 total gem(s) (Gem::LoadError)
System configuration
Ruby version: ruby 2.3.1p112 (2016-04-26 revision 54768) [x86_64-linux] Rails version: rails-5.0.3
About this issue
- Original URL
- State: closed
- Created 7 years ago
- Reactions: 1
- Comments: 42 (31 by maintainers)
none of the options and workarounds worked for me on 3.9.1, had to rollback to 3.8.2 which works fine
Closed by #1385
I can confirm that switching back to puma 3.8.1 solved the issue.
@stereobooster the error is different:
As mentioned here, fIx is for:
but the error I (and probably others) am getting is:
Info:
Okay, using
puma-3.8.1
is the clean and simple workaround. Thanks @dguettler and @tagliala.Same here. Workaround didn’t help, downgrading to 3.8.2 works
Experienced the same problem - simply updating to the latest version of bundler (1.15.1) fixed it for me.
add gemspec to Gemfile and remove the dependencies like https://github.com/puma/puma/pull/1313 does then
-> kaboom
hmm I think this is because it restarts with an environment that does not have bundler so should tweak the restart command to include bundle exec … I though I tried that … for now might be able to fix it by setting
--restart-command
manually will take a look shortly