Initialising error on Ubuntu 11.10

After upgrading to Ubuntu 11.10 from 11.04 my Rails application does
not
start properly

$ script/server
/var/lib/gems/1.8/gems/activesupport-2.3.5/lib/active_support/
dependencies.rb:55:
uninitialized constant ActiveSupport::Dependencies::Mutex (NameError)
  from /usr/lib/ruby/vendor_ruby/1.8/rubygems/custom_require.rb:36:in
`gem_original_require'
  from /usr/lib/ruby/vendor_ruby/1.8/rubygems/custom_require.rb:36:in
`require'
  from /var/lib/gems/1.8/gems/activesupport-2.3.5/lib/active_support.rb:
56
  from /usr/lib/ruby/vendor_ruby/1.8/rubygems/custom_require.rb:36:in
`gem_original_require'
  from /usr/lib/ruby/vendor_ruby/1.8/rubygems/custom_require.rb:36:in
`require'
  from /var/lib/gems/1.8/gems/rails-2.3.5/lib/commands/server.rb:1
  from /usr/lib/ruby/vendor_ruby/1.8/rubygems/custom_require.rb:36:in
`gem_original_require'
  from /usr/lib/ruby/vendor_ruby/1.8/rubygems/custom_require.rb:36:in
`require'
  from script/server:3

I am running

ruby 1.8.7 (2011-06-30 patchlevel 352) [i686-linux]

activesupport-2.3.5

Does somebody have an idea how to fix this problem?

After upgrading to Ubuntu 11.10 from 11.04 my Rails application does
not
start properly

Are you using rvm to control versions of everything? If not then I
suspect the upgrade to 11.10 has updated some stuff from the
repositories and you now have inconsistent versions. Googling for
your error message suggests that. You might be best to start using
rvm and then you will know you have a consistent set. Since I moved
over to it life has been much easier.

Colin

Ok, seems to be a good habit and something to do for next environment
update. For the time being I would like to know what is happening.

First the script to initialise:

~$ cd railstest/rrbok
~/.../rrbok$ more script/server
#!/usr/bin/env ruby
require File.expand_path('../../config/boot', __FILE__)
require 'commands/server'
~/.../rrbok$

so the offending line is "require 'commands/server'"

and then I have checked the environment:

~$ gem environment
RubyGems Environment:
  - RUBYGEMS VERSION: 1.7.2
  - RUBY VERSION: 1.8.7 (2011-06-30 patchlevel 352) [i686-linux]
  - INSTALLATION DIRECTORY: /var/lib/gems/1.8
  - RUBY EXECUTABLE: /usr/bin/ruby1.8
  - EXECUTABLE DIRECTORY: /usr/local/bin
  - RUBYGEMS PLATFORMS:
    - ruby
    - x86-linux
  - GEM PATHS:
     - /var/lib/gems/1.8
     - /home/tpollak/.gem/ruby/1.8
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :benchmark => false
     - :backtrace => false
     - :bulk_threshold => 1000
  - REMOTE SOURCES:
     - http://rubygems.org/
~$

I can not see any problem with the environment as listed. So what is
"require 'commands/server'"?

Did you try googling the error message as I suggested. The first hit is
http://stackoverflow.com/questions/5176782/uninitialized-constant-activesupportdependenciesmutex-nameerror
which looks like it might be your problem, see the second Answer.

Colin

Thanks!

Adding the line "require 'thread'" before "require 'commands/server'"
fixed the problem.

Though I still do not understand why this is necessary with 11.10 but
not 11.04.

How did you install rubygems? What do you see if you do
apt-cache policy rubygems

Colin

Sorry, but I can not remember how I installed rubygems. I certainly
tried with the Ubuntu (10.10) packages first.

$ apt-cache policy rubygems
rubygems:
Installed: 1.7.2-1
Candidate: 1.7.2-1

So you installed it from the Ubuntu repository. When you upgraded
ubuntu it probably upgraded rubygems to one that is not compatible
with your version of Rails, as documented in the link I posted.
http://stackoverflow.com/questions/5176782/uninitialized-constant-activesupportdependenciesmutex-nameerror
You could uninstall rubygems and then re-install an appropriate
version manually. I don't know whether you would have to re-install
ruby in rvm. Alternatively I believe that if you change to ruby 1.9
then it includes rubygems. Or you can just stick with what you have
done if it is working for you.

Colin

Degrading gem version (ex : 1.3.7 )hope it helps to resolve below error

Mehdi