Skip to content

Passenger compilation fails with "private method `ruby2_keywords' called" #1712

Closed

Description

The gem makes Passenger compilation failed when the profiler is enabled:

The application encountered the following error: private method `ruby2_keywords' called

I think the problem was introduced in #1363.

Whole stack trace, Ruby and the gem versions below.

[ N 2021-10-07 08:42:57.6956 8/T1 age/Wat/WatchdogMain.cpp:1373 ]: Starting Passenger watchdog...
[ N 2021-10-07 08:42:57.7098 11/T1 age/Cor/CoreMain.cpp:1340 ]: Starting Passenger core...
[ N 2021-10-07 08:42:57.7100 11/T1 age/Cor/CoreMain.cpp:256 ]: Passenger core running in multi-application mode.
[ N 2021-10-07 08:42:57.7414 11/T1 age/Cor/CoreMain.cpp:1015 ]: Passenger core online, PID 11
App 86 output:  [passenger_native_support.so] trying to compile for the current user (deploy) and Ruby interpreter...
App 86 output:      (set PASSENGER_COMPILE_NATIVE_SUPPORT_BINARY=0 to disable)
[ N 2021-10-07 08:43:00.1750 11/T5 age/Cor/SecurityUpdateChecker.h:519 ]: Security update check: no update found (next check in 24 hours)
App 86 output:      Compilation successful. The logs are here:
App 86 output:      /tmp/passenger_native_support-1xgapjj.log
App 86 output:  [passenger_native_support.so] successfully loaded.
App 86 output: Error: The application encountered the following error: private method `ruby2_keywords' called for #<Proc:0x005638a77b6480> (NoMethodError)
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/gems/ddtrace-0.52.0/lib/ddtrace/profiling/ext/cthread.rb:88:in `initialize'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/gems/ddtrace-0.52.0/lib/ddtrace/workers/async.rb:133:in `new'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/gems/ddtrace-0.52.0/lib/ddtrace/workers/async.rb:133:in `start_worker'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/gems/ddtrace-0.52.0/lib/ddtrace/workers/async.rb:122:in `block in start_async'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/gems/ddtrace-0.52.0/lib/ddtrace/workers/async.rb:111:in `synchronize'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/gems/ddtrace-0.52.0/lib/ddtrace/workers/async.rb:111:in `start_async'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/gems/ddtrace-0.52.0/lib/ddtrace/workers/async.rb:22:in `perform'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/gems/ddtrace-0.52.0/lib/ddtrace/workers/polling.rb:20:in `perform'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/gems/ddtrace-0.52.0/lib/ddtrace/profiling/collectors/stack.rb:68:in `start'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/gems/ddtrace-0.52.0/lib/ddtrace/profiling/profiler.rb:15:in `each'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/gems/ddtrace-0.52.0/lib/ddtrace/profiling/profiler.rb:15:in `start'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/gems/ddtrace-0.52.0/lib/ddtrace/configuration/components.rb:240:in `startup!'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/gems/ddtrace-0.52.0/lib/ddtrace/configuration.rb:156:in `build_components'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/gems/ddtrace-0.52.0/lib/ddtrace/configuration.rb:55:in `block in configure'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/gems/ddtrace-0.52.0/lib/ddtrace/configuration.rb:137:in `block in safely_synchronize'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/gems/ddtrace-0.52.0/lib/ddtrace/configuration.rb:135:in `synchronize'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/gems/ddtrace-0.52.0/lib/ddtrace/configuration.rb:135:in `safely_synchronize'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/gems/ddtrace-0.52.0/lib/ddtrace/configuration.rb:50:in `configure'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/gems/ddtrace-0.52.0/lib/ddtrace/contrib/extensions.rb:40:in `configure'
App 86 output:     /opt/onesignal/config/initializers/datadog.rb:4:in `<top (required)>'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/bundler/gems/rails-8efdd545f3d4/activesupport/lib/active_support/dependencies.rb:286:in `load'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/bundler/gems/rails-8efdd545f3d4/activesupport/lib/active_support/dependencies.rb:286:in `block in load'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/bundler/gems/rails-8efdd545f3d4/activesupport/lib/active_support/dependencies.rb:258:in `load_dependency'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/bundler/gems/rails-8efdd545f3d4/activesupport/lib/active_support/dependencies.rb:286:in `load'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/bundler/gems/rails-8efdd545f3d4/railties/lib/rails/engine.rb:655:in `block in load_config_initializer'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/bundler/gems/rails-8efdd545f3d4/activesupport/lib/active_support/notifications.rb:168:in `instrument'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/bundler/gems/rails-8efdd545f3d4/railties/lib/rails/engine.rb:654:in `load_config_initializer'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/bundler/gems/rails-8efdd545f3d4/railties/lib/rails/engine.rb:612:in `block (2 levels) in <class:Engine>'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/bundler/gems/rails-8efdd545f3d4/railties/lib/rails/engine.rb:611:in `each'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/bundler/gems/rails-8efdd545f3d4/railties/lib/rails/engine.rb:611:in `block in <class:Engine>'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/bundler/gems/rails-8efdd545f3d4/railties/lib/rails/initializable.rb:30:in `instance_exec'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/bundler/gems/rails-8efdd545f3d4/railties/lib/rails/initializable.rb:30:in `run'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/bundler/gems/rails-8efdd545f3d4/railties/lib/rails/initializable.rb:59:in `block in run_initializers'
App 86 output:     /usr/local/lib/ruby/2.4.0/tsort.rb:228:in `block in tsort_each'
App 86 output:     /usr/local/lib/ruby/2.4.0/tsort.rb:350:in `block (2 levels) in each_strongly_connected_component'
App 86 output:     /usr/local/lib/ruby/2.4.0/tsort.rb:422:in `block (2 levels) in each_strongly_connected_component_from'
App 86 output:     /usr/local/lib/ruby/2.4.0/tsort.rb:431:in `each_strongly_connected_component_from'
App 86 output:     /usr/local/lib/ruby/2.4.0/tsort.rb:421:in `block in each_strongly_connected_component_from'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/bundler/gems/rails-8efdd545f3d4/railties/lib/rails/initializable.rb:48:in `each'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/bundler/gems/rails-8efdd545f3d4/railties/lib/rails/initializable.rb:48:in `tsort_each_child'
App 86 output:     /usr/local/lib/ruby/2.4.0/tsort.rb:415:in `call'
App 86 output:     /usr/local/lib/ruby/2.4.0/tsort.rb:415:in `each_strongly_connected_component_from'
App 86 output:     /usr/local/lib/ruby/2.4.0/tsort.rb:349:in `block in each_strongly_connected_component'
App 86 output:     /usr/local/lib/ruby/2.4.0/tsort.rb:347:in `each'
App 86 output:     /usr/local/lib/ruby/2.4.0/tsort.rb:347:in `call'
App 86 output:     /usr/local/lib/ruby/2.4.0/tsort.rb:347:in `each_strongly_connected_component'
App 86 output:     /usr/local/lib/ruby/2.4.0/tsort.rb:226:in `tsort_each'
App 86 output:     /usr/local/lib/ruby/2.4.0/tsort.rb:205:in `tsort_each'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/bundler/gems/rails-8efdd545f3d4/railties/lib/rails/initializable.rb:58:in `run_initializers'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/bundler/gems/rails-8efdd545f3d4/railties/lib/rails/application.rb:353:in `initialize!'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/bundler/gems/rails-8efdd545f3d4/railties/lib/rails/railtie.rb:185:in `public_send'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/bundler/gems/rails-8efdd545f3d4/railties/lib/rails/railtie.rb:185:in `method_missing'
App 86 output:     /opt/onesignal/config/environment.rb:52:in `<top (required)>'
App 86 output:     config.ru:9:in `require'
App 86 output:     config.ru:9:in `block in <main>'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/gems/rack-2.2.3/lib/rack/builder.rb:125:in `instance_eval'
App 86 output:     /opt/onesignal/vendor/bundle/ruby/2.4.0/gems/rack-2.2.3/lib/rack/builder.rb:125:in `initialize'
App 86 output:     config.ru:1:in `new'
App 86 output:     config.ru:1:in `<main>'
App 86 output:     /usr/share/passenger/helper-scripts/rack-preloader.rb:101:in `eval'
App 86 output:     /usr/share/passenger/helper-scripts/rack-preloader.rb:101:in `preload_app'
App 86 output:     /usr/share/passenger/helper-scripts/rack-preloader.rb:189:in `block in <module:App>'
App 86 output:     /usr/lib/ruby/vendor_ruby/phusion_passenger/loader_shared_helpers.rb:390:in `run_block_and_record_step_progress'
App 86 output:     /usr/share/passenger/helper-scripts/rack-preloader.rb:188:in `<module:App>'
App 86 output:     /usr/share/passenger/helper-scripts/rack-preloader.rb:30:in `<module:PhusionPassenger>'
App 86 output:     /usr/share/passenger/helper-scripts/rack-preloader.rb:29:in `<main>'
[ E 2021-10-07 08:43:04.5188 11/Tr age/Cor/App/Implementation.cpp:221 ]: Could not spawn process for application /opt/onesignal: The application encountered the following error: private method `ruby2_keywords' called for #<Proc:0x005638a77b6480> (NoMethodError)
Error ID: 1de2a1a4
Error details saved to: /tmp/passenger-error-zVChAx.html
[ E 2021-10-07 08:43:04.5216 11/T8 age/Cor/Con/CheckoutSession.cpp:276 ]: [Client 1-1] Cannot checkout session because a spawning error occurred. The identifier of the error is 1de2a1a4. Please see earlier logs for details about the error.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

No one assigned

    Labels

    bugInvolves a bugcommunityWas opened by a community member

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions