Rails on openSuSE 10.3

Rails 1.2.3 used to run just fine on openSuSE 10.2 (x86_64)

I recently upgraded to openSuSE 10.3 and I cannot get neither mongrel nor webrick up. I tried various combinations of mongrel (0.31, 1.01, 1.03, 1.04), ruby (1.8.6 and stable snapshot), rails (1.2.3 and 1.2.5).

I get the following error:

=> Booting Mongrel (use 'script/server webrick' to force WEBrick) => Rails application starting on http://0.0.0.0:3000 => Call with -d to detach => Ctrl-C to shutdown server ** Starting Mongrel listening at 0.0.0.0:3000 ** Starting Rails with development environment... Exiting /usr/lib64/ruby/gems/1.8/gems/rails-1.2.3/lib/commands/servers/ mongrel.rb:15: warning: already initialized constant OPTIONS /usr/lib64/ruby/gems/1.8/gems/rails-1.2.3/lib/commands/servers/ mongrel.rb:18: undefined method `options' for :Array (NoMethodError)         from /usr/lib64/ruby/vendor_ruby/1.8/rubygems/ custom_require.rb:32:in `gem_original_require'         from /usr/lib64/ruby/vendor_ruby/1.8/rubygems/ custom_require.rb:32:in `require'         from /usr/lib64/ruby/gems/1.8/gems/activesupport-1.4.2/lib/ active_support/dependencies.rb:495:in `require'         from /usr/lib64/ruby/gems/1.8/gems/activesupport-1.4.2/lib/ active_support/dependencies.rb:342:in `new_constants_in'         from /usr/lib64/ruby/gems/1.8/gems/activesupport-1.4.2/lib/ active_support/dependencies.rb:495:in `require'         from /usr/lib64/ruby/gems/1.8/gems/rails-1.2.3/lib/commands/ server.rb:39         from /usr/lib64/ruby/vendor_ruby/1.8/rubygems/ custom_require.rb:27:in `gem_original_require'         from /usr/lib64/ruby/vendor_ruby/1.8/rubygems/ custom_require.rb:27:in `require'         from script/server:3

The whole thing explodes while executing      ARGV.clone.options (at least this is in mongrel.rb:18)

I tried this in irb and it works fine:

irb(main):001:0> ARGV.clone.options NoMethodError: undefined method `options' for :Array         from (irb):1 irb(main):002:0> require 'optparse' => true irb(main):003:0> ARGV.clone.options => #<OptionParser:0x2b5def15b788 @banner=nil, @default_argv=, @program_name=ni l, @summary_indent=" ", @stack=[#<OptionParser::List:0x2b5def18dd00 @list=, @short={"-"=>#<OptionParser::Switch::NoArgument:0x2b5def18dbe8 @block=#<Proc:0x 0000000000000000@/usr/lib64/ruby/1.8/optparse.rb:694>, @short=nil, @desc=nil, @c ...

It seems optparse is not loaded properly.

Something interesting is that if I try to force webrick, it attempts to start BOTH webrick and then mongrel (and it crashes again).

Any ideas?

Hi,

I’m using Suse 10.3 , I don’t see a problem on my server.

=> Booting Mongrel (use ‘script/server webrick’ to force WEBrick) => Rails application starting on http://0.0.0.0:3000 => Call with -d to detach => Ctrl-C to shutdown server ** Starting Mongrel listening at 0.0.0.0:3000 ** Starting Rails with development environment…

** Rails loaded. ** Loading any Rails specific GemPlugins ** Signals ready. TERM => stop. USR2 => restart. INT => stop (no restart). ** Rails signals registered. HUP => reload (without restart). It might not work well.

** Mongrel available at 0.0.0.0:3000 ** Use CTRL-C to stop.

My update from Suse 10.2 was done via a new install (format partition …)

Maybe something to try:

remove Rails via gem and install again.

Luc.

Well, I found that when creating a Rails app from scratch, then Mongrel starts without any problems. I am thinking there is a plugin or a dependency causing my problems, but how can I trace the culprit? Any ideas?

Re-installing Rails (various versions) did not help. It seems that my problem is not Rails itself or Mongrel...

Did you check the Mongrel log files?

 Luc.