Phusion Passenger 2.0.5 released; mentioned on live.37signals.com

By Hongli Lai December 5th, 2008

Phusion Passenger is an Apache module for deploying Ruby on Rails web applications, and is mainly focused on ease of use and stability. Since its first release in April 2008, it has gained quite a lot of attention from the Rails community, and nowadays it has become a very popular deployment tool.

We have recently been mentioned on live.37signals.com where David Heinemeier Hansson, creator of Ruby on Rails, has given his praise to Phusion Passenger. Not too long ago, 37signals switched Ta-da List to Phusion Passenger, and are now in the progress of switching more websites.
live.37signals.com isn’t broadcasting right now, but you can find recordings at justin.tv.

Recent changes

Phusion Passenger is under constant maintenance and development. We are pleased to announce Phusion Passenger version 2.0.5. This is mainly a bugfix release.

Fixed global queuing compatibility with the worker MPM
The global queuing feature that was introduced in version 2.0.4 was found to cause deadlocks when used in combination with the worker MPM of Apache. This problem only occurs when global queuing is used in combination with the worker MPM; users of the prefork MPM (i.e. most Apache users) are not affected.

This problem has been fixed.

Ruby on Rails 2.3′s Rack adapter now supported
Ruby on Rails 2.3 hasn’t been released yet, but we’ve already added support for it. In Rails 2.3, the old CGI-based dispatcher will be removed in favor of the new Rack-based dispatcher. Phusion Passenger will automatically use this new Rack-based dispatcher upon detecting Rails 2.3.
Fixed compilation problems with Ruby 1.8.7
The title says it all.
Various other bug fixes and stability improvements
These are too minor to mention in this announcement, but interested people can take a look at the commit list.

How do I upgrade to 2.0.5?

Via a gem

Please install it with the following command:

gem install passenger

Next, run:

passenger-install-apache2-module

Please don’t forget to copy & paste the Apache config snippet that the installer gives you.

Via a native Linux package

John Leach from Brightbox has kindly provided an Ubuntu 8.04 package for Phusion Passenger. The package is available from the Brightbox repository which you can find at:

http://apt.brightbox.net

Add the following line to the Third Party Software Sources:

deb http://apt.brightbox.net hardy main

(The simplest way to do that is to create a file in /etc/apt/sources.list.d/ containing the deb instruction, and then run ‘apt-get update‘).

Once you’ve done this then you can install Phusion Passenger by running:

apt-get install libapache2-mod-passenger

(Note that John is currently packaging 2.0.5, so it might take a while before this release shows up in the apt repository.)

Final

Phusion Passenger is provided to the community for free. If you like Phusion Passenger, please consider sending us a donation. Thanks!

Hongli Lai Ninh Bui

Phusion Passenger

Comments

  1. [...] the recent 2.0.4 release of the Passenger Rails module for Apache, version 2.0.5 was released today by the Phusion team.  We’ve just released new Ubuntu Hardy packages for it.  If you’re already [...]

  2. mdkail says:

    i just ran ‘gem install passenger’ and am still only getting the 2.0.4 version

  3. Sorry to tell. Not working for me. Upgraded from 2.0.5 and got dead Apache immediately. Every request to a Rails app ended with the following error in the Apache log. Hope it helps to resolve the problem:

    Passenger spawn server: symbol lookup error: /usr/lib/ruby/gems/1.8/gems/passenger-2.0.5/ext/passenger/native_support.so: undefined symbol: RARRAY_LEN
    *** Exception NoMethodError in spawn manager (undefined method `[]‘ for nil:NilClass) (process 21933):
    from /usr/lib/ruby/gems/1.8/gems/passenger-2.0.5/lib/passenger/railz/framework_spawner.rb:89:in `start’
    from /usr/lib/ruby/gems/1.8/gems/passenger-2.0.5/lib/passenger/spawn_manager.rb:218:in `spawn_rails_application’
    from /usr/lib/ruby/gems/1.8/gems/passenger-2.0.5/lib/passenger/spawn_manager.rb:213:in `synchronize’
    from /usr/lib/ruby/gems/1.8/gems/passenger-2.0.5/lib/passenger/spawn_manager.rb:213:in `spawn_rails_application’
    from /usr/lib/ruby/gems/1.8/gems/passenger-2.0.5/lib/passenger/spawn_manager.rb:122:in `spawn_application’
    from /usr/lib/ruby/gems/1.8/gems/passenger-2.0.5/lib/passenger/spawn_manager.rb:247:in `handle_spawn_application’
    from /usr/lib/ruby/gems/1.8/gems/passenger-2.0.5/lib/passenger/abstract_server.rb:317:in `__send__’
    from /usr/lib/ruby/gems/1.8/gems/passenger-2.0.5/lib/passenger/abstract_server.rb:317:in `main_loop’
    from /usr/lib/ruby/gems/1.8/gems/passenger-2.0.5/lib/passenger/abstract_server.rb:168:in `start_synchronously’
    from /usr/lib/ruby/gems/1.8/gems/passenger-2.0.5/bin/passenger-spawn-server:46
    [Fri Dec 05 18:31:56 2008] [error] [client xx.xx.xx.xx] *** Unexpected error in Passenger: Cannot spawn application ‘/u/xx/releases/20081205130826′: The spawn server has exited unexpectedly.

  4. I meant “Upgraded from 2.0.4 …” certainly.

  5. hongli says:

    Aleksey, you need Ruby 1.8.6 at least.

  6. Ah, that explains it. Thanks for the hint!

    You probably need to place a warning somewhere, or better yet add a check to your build script before people pull all of their hair out. :)

    Thanks for a great tool and quick support!

  7. specialj says:

    Is there a site to file bug reports? I’ve noticed that with global queue on in both 2.0.4 and 2.0.5 while using apache prefork mpm that PassengerMaxPoolSize is not honored. This leads to interesting results with passenger-status such as this:

    ———– General information ———–
    max = 3
    count = 4
    active = 0
    inactive = 4
    Using global queue: yes
    Waiting on global queue: 0

    ———– Applications ———–
    /scrubbed:
    PID: 31625 Sessions: 0
    PID: 31619 Sessions: 0
    PID: 31621 Sessions: 0
    PID: 31623 Sessions: 0

  8. hongli says:

    @specialj: Please file a bug report at the bug tracker linked from our website:
    http://www.modrails.com -> Development -> Issue Tracker

  9. [...] debian packages of Phusion Passenger 2.0.5 are available since this night on [...]

  10. zachary says:

    In fact I just upgraded to 2.05 on regular ruby (non enterprise) and it works.

    Are there any special caveats using enterprise ruby that could lead to that unexpected error above?

    Thank you.

  11. zachary says:

    Solved it myself.

    For some reason the passenger requires sqlite3-ruby to be installed if you are using enterprise ruby. But it doesnt care about the gem missing, if you are using regular ruby.

  12. Niels Meersschaert says:

    I’m getting a similar issue to Aleksey on RHEL5. I have ruby 1.8.6 (2007-03-13 patchlevel 0). Is there a specific patch version of 1.8.6 that is required? I’d been using 2.04 on 1.8.5 with no issues.

  13. Niels Meersschaert says:

    Same issues with the 114 patchlevel on RHEL5. (Works on Mac OS X 10.5.5 with 1.8.6p114)

  14. [...] Phusion team keeps blazing ahead with Passenger and improving it rapidly. They’ve just released version 2.0.5, which includes a few fixes and introduces compatibility with the Rack-based Edge [...]

  15. [...] Mais detalhes no blog do Phusion Passenger. [...]

  16. [...] detalhes no blog do Phusion Passenger. apache, deploy, mod_rails, [...]

Leave a comment