help needed - undefined method `reenable' for <Rake::Task db:schema:dump => [environment]>:Rake::Task

Hello,

I am trying to deploy my app at the moment, and each time I do, I get the following error when i run a trace on it:

rake db:migrate --trace

(in /srv/some area/someplaceelse...) ** Invoke db:migrate (first_time) ** Invoke environment (first_time) ** Execute environment ** Execute db:migrate ** Invoke db:schema:dump (first_time) ** Invoke environment ** Execute db:schema:dump rake aborted!

undefined method `reenable' for <Rake::Task db:schema:dump => [environment]>:Rake::Task

/var/lib/gems/1.8/gems/rails-2.3.3/lib/tasks/databases.rake:253 /usr/lib/ruby/1.8/rake.rb:546:in `call' /usr/lib/ruby/1.8/rake.rb:546:in `execute' /usr/lib/ruby/1.8/rake.rb:541:in `each' /usr/lib/ruby/1.8/rake.rb:541:in `execute' /usr/lib/ruby/1.8/rake.rb:508:in `invoke_with_call_chain' /usr/lib/ruby/1.8/rake.rb:501:in `synchronize' /usr/lib/ruby/1.8/rake.rb:501:in `invoke_with_call_chain' /usr/lib/ruby/1.8/rake.rb:494:in `invoke' /var/lib/gems/1.8/gems/rails-2.3.3/lib/tasks/databases.rake:117 /usr/lib/ruby/1.8/rake.rb:546:in `call' /usr/lib/ruby/1.8/rake.rb:546:in `execute' /usr/lib/ruby/1.8/rake.rb:541:in `each' /usr/lib/ruby/1.8/rake.rb:541:in `execute' /usr/lib/ruby/1.8/rake.rb:508:in `invoke_with_call_chain' /usr/lib/ruby/1.8/rake.rb:501:in `synchronize' /usr/lib/ruby/1.8/rake.rb:501:in `invoke_with_call_chain' /usr/lib/ruby/1.8/rake.rb:494:in `invoke' /usr/lib/ruby/1.8/rake.rb:1931:in `invoke_task' /usr/lib/ruby/1.8/rake.rb:1909:in `top_level' /usr/lib/ruby/1.8/rake.rb:1909:in `each' /usr/lib/ruby/1.8/rake.rb:1909:in `top_level' /usr/lib/ruby/1.8/rake.rb:1948:in `standard_exception_handling' /usr/lib/ruby/1.8/rake.rb:1903:in `top_level' /usr/lib/ruby/1.8/rake.rb:1881:in `run' /usr/lib/ruby/1.8/rake.rb:1948:in `standard_exception_handling' /usr/lib/ruby/1.8/rake.rb:1878:in `run' /usr/bin/rake:28

Does anyone know how to resolve this?

Many Thanks

Update - I have also tried this, but with no luck: http://antono.info/en/138 (which explains to do this: sudo aptitude remove rake sudo gem install rake

Im at a bit of a loss now..

ANy thoughts?

Are you on Linux?

Hello Johan

Are you on Linux?

Yes I am I believe. I've uninstalled rake several times and the error is still the same. undefined method `reenable' for <Rake::Task db:schema:dump => [environment]>:Rake::Task

I've spent all day looking over this....but now i'm a bit lost.

Do you have ssh access?

Run this from the command line:

lsb_release -a

I’ve had this problem before but found it’s very OS and distro specific…

Hi Johan,

Do you have ssh access? - yes i have ssh access...

lsb_release -a - do i run this from root?

What does this do?

Many Thanks

It just outputs a bit of info about your system… I dont think root access is needed

it says command not found

Hmmm...

hello

can anyone think of a solution to my issue from yesterday?

error = undefined method `reenable' for <Rake::Task db:schema:dump => [environment]>:Rake::Task

i've searched all over. sites suggest deleting rake, but this hasn't helped they have also suggested adding rake to the PATH directory, but unsure how to carry this out..

any other ideas?

many thanks

hello

can anyone think of a solution to my issue from yesterday?

error = undefined method `reenable' for <Rake::Task db:schema:dump => [environment]>:Rake::Task

What version of rake do you have? Looking on github suggests that the reenable method was added here

which suggests you need 0.8.1.5 or higher

Fred

Hi. When I do rake --version it says 0.8.1. However, when I do gem list --remote or --local it says I have 0.8.7

Either way I'm on linux and need to find a way to get the correct version so I can see my app and not this dreadful error... :slight_smile:

Day 2 of the error and its getting a bit of a tough cookie to crack...

Cheers

Hi. When I do rake --version it says 0.8.1. However, when I do gem list --remote or --local it says I have 0.8.7

Either way I'm on linux and need to find a way to get the correct version so I can see my app and not this dreadful error... :slight_smile:

Day 2 of the error and its getting a bit of a tough cookie to crack...

At a guess, do you have one version of rake installed via your distro's package manager and another installed via rubygems ?

Fred

Yes possibly. How wold I check this and if there are multiples, which one needs removing and how is it best achieved?

Thanks again.

Well sounds like you've done the checking. You'd want to remove the one installed by your distro (in general distro provided stuff lags quite a bit behind whats available via rubygems. I also seem to recall that on some distros the distro provided rubygems is hobbled a bt in order to make it work nicer with the package management system - some people thus recommend installing rubygems separately (I don't use linux myself though so not sure whether this is still current etc))

Fred

Hi there,

Still trying to resolve this... Looking on gem list --remote i have this: rake (0.8.7)

LIkewise when I do gem list --local i get: rake (0.8.7)

If I do: apt-get autoremove rake and then run rake --version, it says ''ERROR: While executing gem ... (RuntimeError) Unknown command db:migrate''

So - I tried to unistall it all again and reinstall rake and the gem at root level

I'm still getting the same error, so was wondering if anyone had any suggestions?

Many Thanks

Hi there,

Still trying to resolve this... Looking on gem list --remote i have this: rake (0.8.7)

LIkewise when I do gem list --local i get: rake (0.8.7)

If I do: apt-get autoremove rake and then run rake --version, it says ''ERROR: While executing gem ... (RuntimeError) Unknown command db:migrate''

that's weird - that would only make sense if you'd typed gem db:migrate!

So - I tried to unistall it all again and reinstall rake and the gem at root level

Well you definitely don't want to reinstall rate from apt - you only want the gem version. I really don't know enough about installing ruby on a linux machine to comment any further though - you've got yourself into some weird state

Fred