Skip to content

Running passenger-config system-properties results in undefined method error #2565

@pkarjala

Description

@pkarjala

Issue report

Question 1: What is the problem?

  • What is the expected behavior?

When running sudo passenger-config system-properties, it should return information about the system Passenger Phusion is running in.

  • What is the actual behavior?

When running this command it returns an error as follows:

$ sudo passenger-config system-properties
/usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:156:in `rescue in generate_type': can't serialize PhusionPassenger::PlatformInfo::VersionComparer (ArgumentError)
	from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:155:in `generate_type'
	from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:191:in `block in generate_Hash'
	from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:190:in `each'
	from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:190:in `map'
	from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:190:in `generate_Hash'
	from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:155:in `generate_type'
	from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:191:in `block in generate_Hash'
	from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:190:in `each'
	from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:190:in `map'
	from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:190:in `generate_Hash'
	from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:155:in `generate_type'
	from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:147:in `generate'
	from /usr/lib/ruby/vendor_ruby/phusion_passenger/config/system_properties_command.rb:43:in `run'
	from /usr/lib/ruby/vendor_ruby/phusion_passenger/config/main.rb:79:in `run!'
	from /usr/bin/passenger-config:37:in `<main>'
/usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:155:in `generate_type': undefined method `generate_PhusionPassenger::PlatformInfo::VersionComparer' for PhusionPassenger::Utils::JSON:Class (NoMethodError)
	from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:191:in `block in generate_Hash'
	from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:190:in `each'
	from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:190:in `map'
	from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:190:in `generate_Hash'
	from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:155:in `generate_type'
	from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:191:in `block in generate_Hash'
	from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:190:in `each'
	from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:190:in `map'
	from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:190:in `generate_Hash'
	from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:155:in `generate_type'
	from /usr/lib/ruby/vendor_ruby/phusion_passenger/utils/json.rb:147:in `generate'
	from /usr/lib/ruby/vendor_ruby/phusion_passenger/config/system_properties_command.rb:43:in `run'
	from /usr/lib/ruby/vendor_ruby/phusion_passenger/config/main.rb:79:in `run!'
	from /usr/bin/passenger-config:37:in `<main>'

This is the same whether the command is run with sudo or not.

This has been reliably reproduced on 6 different servers with the same environment (OS, Apache2, Passenger, Ruby)

  • How can we reproduce it?

Your answer: Set up environment with Ubuntu 22.04, Apache 2.4.52, Passenger Phusion 6.0.23, ruby 3.2.2 and run the command.

Question 2: Passenger version and integration mode:

Your answer: Open Source 6.0.23 integrated with Apache2 2.4.52 using mod_passenger

Question 3: OS or Linux distro, platform (including version):

Your answer: Ubuntu 22.04 x86_64

Question 4: Passenger installation method:

Your answer:
[ ] RubyGems + Gemfile
[ ] RubyGems, no Gemfile
[ X ] Phusion APT repo (from https://oss-binaries.phusionpassenger.com/apt/passenger jammy Release)
[ ] Phusion YUM repo
[ ] OS X Homebrew
[ ] source tarball
[ ] Other, please specify:

Question 5: Your app's programming language (including any version managers) and framework (including versions):

Your answer: Ruby 3.2.2 using Rails 7.1.3.4, though this is happening at a pre-application level. Ruby is installed using RVM.

Question 6: Are you using a PaaS and/or containerization? If so which one?

  • For example: Heroku, Amazon Container Services, Docker 1.9 with an image based on passenger-docker

Your answer: No

Question 7: Anything else about your setup that we should know?

Your answer: Nothing that I can think of. We can pretty easily run any troubleshooting steps in this environment so please let us know if we can provide additional information or testing.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions