DB Migration problem

Hi,

I am trying to migrate my project database on to other system. rakedb:create is working and Database is being created in mysql but when migrating using rake db:migrate it is giving me following error

can’t activate activesupport (= 3.0.3, runtime) for [“railties-3.0.3”], already activated activesupport-2.3.8 for [“rails-2.3.8”]

/usr/lib/ruby/1.8/rubygems.rb:233:in activate' /usr/lib/ruby/1.8/rubygems.rb:249:in activate’ /usr/lib/ruby/1.8/rubygems.rb:248:in each' /usr/lib/ruby/1.8/rubygems.rb:248:in activate’ /usr/lib/ruby/1.8/rubygems/custom_require.rb:35:in `require’

/var/lib/gems/1.8/gems/activesupport-2.3.8/lib/active_support/dependencies.rb:158:in require' /var/lib/gems/1.8/gems/acts_as_ferret-0.5.2/lib/acts_as_ferret/railtie.rb:2 /usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in gem_original_require’

/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in require' /var/lib/gems/1.8/gems/activesupport-2.3.8/lib/active_support/dependencies.rb:158:in require’ /var/lib/gems/1.8/gems/acts_as_ferret-0.5.2/lib/acts_as_ferret.rb:92

/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in gem_original_require' /usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in require’ /var/lib/gems/1.8/gems/activesupport-2.3.8/lib/active_support/dependencies.rb:158:in `require’

/var/lib/gems/1.8/gems/rails-2.3.8/lib/rails/gem_dependency.rb:215:in load' /var/lib/gems/1.8/gems/rails-2.3.8/lib/initializer.rb:307:in load_gems’ /var/lib/gems/1.8/gems/rails-2.3.8/lib/initializer.rb:307:in `each’

/var/lib/gems/1.8/gems/rails-2.3.8/lib/initializer.rb:307:in load_gems' /var/lib/gems/1.8/gems/rails-2.3.8/lib/initializer.rb:169:in process’ /var/lib/gems/1.8/gems/rails-2.3.8/lib/initializer.rb:113:in `send’

/var/lib/gems/1.8/gems/rails-2.3.8/lib/initializer.rb:113:in run' /home/faststream/Desktop/fstech Desktop [Surya]/projects/locorent/config/environment.rb:9 /usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in gem_original_require’

/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in require' /var/lib/gems/1.8/gems/activesupport-2.3.8/lib/active_support/dependencies.rb:156:in require’ /var/lib/gems/1.8/gems/activesupport-2.3.8/lib/active_support/dependencies.rb:521:in `new_constants_in’

/var/lib/gems/1.8/gems/activesupport-2.3.8/lib/active_support/dependencies.rb:156:in require' /var/lib/gems/1.8/gems/rails-2.3.8/lib/tasks/misc.rake:4 /usr/lib/ruby/1.8/rake.rb:636:in call’ /usr/lib/ruby/1.8/rake.rb:636:in `execute’

/usr/lib/ruby/1.8/rake.rb:631:in each' /usr/lib/ruby/1.8/rake.rb:631:in execute’ /usr/lib/ruby/1.8/rake.rb:597:in invoke_with_call_chain' /usr/lib/ruby/1.8/monitor.rb:242:in synchronize’ /usr/lib/ruby/1.8/rake.rb:590:in `invoke_with_call_chain’

/usr/lib/ruby/1.8/rake.rb:607:in invoke_prerequisites' /usr/lib/ruby/1.8/rake.rb:604:in each’ /usr/lib/ruby/1.8/rake.rb:604:in invoke_prerequisites' /usr/lib/ruby/1.8/rake.rb:596:in invoke_with_call_chain’

/usr/lib/ruby/1.8/monitor.rb:242:in synchronize' /usr/lib/ruby/1.8/rake.rb:590:in invoke_with_call_chain’ /usr/lib/ruby/1.8/rake.rb:583:in invoke' /usr/lib/ruby/1.8/rake.rb:2051:in invoke_task’

/usr/lib/ruby/1.8/rake.rb:2029:in top_level' /usr/lib/ruby/1.8/rake.rb:2029:in each’ /usr/lib/ruby/1.8/rake.rb:2029:in top_level' /usr/lib/ruby/1.8/rake.rb:2068:in standard_exception_handling’

/usr/lib/ruby/1.8/rake.rb:2023:in top_level' /usr/lib/ruby/1.8/rake.rb:2001:in run’ /usr/lib/ruby/1.8/rake.rb:2068:in standard_exception_handling' /usr/lib/ruby/1.8/rake.rb:1998:in run’ /usr/bin/rake:28

rake aborted! A key is required to write a cookie containing the session data. Use config.action_controller.session = { :key => “_myapp_session”, :secret => “some secret phrase” } in config/environment.rb

(See full trace by running task with --trace)

Can any one tell me the reason?

Thanks Surya

Hi,

I am trying to migrate my project database on to other system. rakedb:create is working and Database is being created in mysql but when migrating using rake db:migrate it is giving me following error

can't activate activesupport (= 3.0.3, runtime) for ["railties-3.0.3"],

> already activated activesupport-2.3.8 for ["rails-2.3.8"]

This looks like a dependencies problem: i'd guess that your app is a rails 2.3.8 app and has started loading rails, and has already loading version 2.3.8 of active support. When the acts as ferret gem loads it looks like it's trying to load railties, however i'd guess that it's not specifying a version, and in that case rubygems defaults to loading the latest version of railties that you have on your machine, which would appear to be 3.0.3. Railties 3.0.3 requites the corresponding version of active support, but an older version is already loaded and so everything blows up. If acts as ferret is actually asking for the rails 3 version of railties then you'll need to back down to a version that doesn't. If not you might want to try doing something like gem 'railties', '2.3.8' so that rubygems doesn't pick up the 'wrong' version

Fred

Thanks for reply Fred,

   Well I have sort it out by reinstalling rails and all its dependent packages. You are right it is version conflict occurring when I tried to migrate database it looks for railities 3.0.3 but activesupport version  that was activated. So no chance to solve such a condition without reinstalling whole things related to rails.

Remember you can always remove gem versions that you do not need.

If you are trying to use multiple versions of ruby and rails then I strongly suggest looking at rvm. It makes life very easy.

Colin

Thanks for reply Fred,

   Well I have sort it out by reinstalling rails and all its dependent

packages. You are right it is version conflict occurring when I tried to migrate database it looks for railities 3.0.3 but activesupport version that was activated. So no chance to solve such a condition without reinstalling whole things related to rails.

Actually bundler is designed to solve exactly this sort of problem.

Fred