rake db:migrate not working

When I run the rake db:migrate command, I get this:

C:\testror\depot>rake db:migrate --trace (in C:/testror/depot) ** Invoke db:migrate (first_time) ** Invoke environment (first_time) ** Execute environment ** Execute db:migrate rake aborted! 182: Le systÞme d'exploitation ne peut pas exÚcuter %1. - c:/ruby/ lib/ruby/gem s/1.8/gems/ruby-postgres-0.7.1.2006.04.06-mswin32/./postgres.so c:/ruby/lib/ruby/gems/1.8/gems/ruby-postgres-0.7.1.2006.04.06- mswin32/./postgres .so c:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:32:in `require' c:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.0.2/lib/active_support/ dependenci es.rb:496:in `require' c:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.0.2/lib/active_support/ dependenci es.rb:342:in `new_constants_in' c:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.0.2/lib/active_support/ dependenci es.rb:496:in `require' c:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.0.2/lib/active_support/ core_ext/k ernel/requires.rb:7:in `require_library_or_gem' c:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.0.2/lib/active_support/ core_ext/k ernel/reporting.rb:11:in `silence_warnings' c:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.0.2/lib/active_support/ core_ext/k ernel/requires.rb:5:in `require_library_or_gem' c:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/ connection_a dapters/postgresql_adapter.rb:7:in `postgresql_connection' c:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/ connection_a dapters/abstract/connection_specification.rb:291:in `send' c:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/ connection_a dapters/abstract/connection_specification.rb:291:in `connection=' c:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/ connection_a dapters/abstract/connection_specification.rb:259:in `retrieve_connection' c:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/ connection_a dapters/abstract/connection_specification.rb:78:in `connection' c:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/ migration.rb :294:in `migrate' c:/ruby/lib/ruby/gems/1.8/gems/rails-2.0.2/lib/tasks/databases.rake:85 c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:546:in `call' c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:546:in `execute' c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:541:in `each' c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:541:in `execute' c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:508:in `invoke_with_call_c hain' c:/ruby/lib/ruby/1.8/thread.rb:135:in `synchronize' c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:501:in `invoke_with_call_c hain' c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:494:in `invoke' c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1931:in `invoke_task' c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1909:in `top_level' c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1909:in `each' c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1909:in `top_level' c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1948:in `standard_exceptio n_handling' c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1903:in `top_level' c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1881:in `run' c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1948:in `standard_exceptio n_handling' c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1878:in `run' c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.1/bin/rake:31 c:/ruby/bin/rake:19:in `load' c:/ruby/bin/rake:19

I also tried with an earlier (1.2.6) version of Rails, without success. Any clue?

When I run the rake db:migrate command, I get this:

C:\testror\depot>rake db:migrate --trace (in C:/testror/depot) ** Invoke db:migrate (first_time) ** Invoke environment (first_time) ** Execute environment ** Execute db:migrate rake aborted! 182: Le systÞme d'exploitation ne peut pas exÚcuter %1. - c:/ruby/ lib/ruby/gem s/1.8/gems/ruby-postgres-0.7.1.2006.04.06-mswin32/./postgres.so c:/ruby/lib/ruby/gems/1.8/gems/ruby-postgres-0.7.1.2006.04.06- mswin32/./postgres .so c:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:32:in `require' c:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.0.2/lib/active_support/ dependenci es.rb:496:in `require' c:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.0.2/lib/active_support/ dependenci es.rb:342:in `new_constants_in' c:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.0.2/lib/active_support/ dependenci es.rb:496:in `require' c:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.0.2/lib/active_support/ core_ext/k ernel/requires.rb:7:in `require_library_or_gem' c:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.0.2/lib/active_support/ core_ext/k ernel/reporting.rb:11:in `silence_warnings' c:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.0.2/lib/active_support/ core_ext/k ernel/requires.rb:5:in `require_library_or_gem' c:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/ connection_a dapters/postgresql_adapter.rb:7:in `postgresql_connection' c:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/ connection_a dapters/abstract/connection_specification.rb:291:in `send' c:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/ connection_a dapters/abstract/connection_specification.rb:291:in `connection=' c:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/ connection_a dapters/abstract/connection_specification.rb:259:in `retrieve_connection' c:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/ connection_a dapters/abstract/connection_specification.rb:78:in `connection' c:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/ migration.rb :294:in `migrate' c:/ruby/lib/ruby/gems/1.8/gems/rails-2.0.2/lib/tasks/databases.rake:85 c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:546:in `call' c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:546:in `execute' c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:541:in `each' c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:541:in `execute' c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:508:in `invoke_with_call_c hain' c:/ruby/lib/ruby/1.8/thread.rb:135:in `synchronize' c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:501:in `invoke_with_call_c hain' c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:494:in `invoke' c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1931:in `invoke_task' c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1909:in `top_level' c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1909:in `each' c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1909:in `top_level' c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1948:in `standard_exceptio n_handling' c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1903:in `top_level' c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1881:in `run' c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1948:in `standard_exceptio n_handling' c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1878:in `run' c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.1/bin/rake:31 c:/ruby/bin/rake:19:in `load' c:/ruby/bin/rake:19

I also tried with an earlier (1.2.6) version of Rails, without success. Any clue?

I'd say it looks like it can't load that dll. Perhaps there's some other dll it depends on? (or maybe it's just borked?)

Fred

Craig White wrote:

lib/ruby/gem dependenci c:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.0.2/lib/active_support/ dapters/abstract/connection_specification.rb:291:in `connection=' c:/ruby/lib/ruby/gems/1.8/gems/rails-2.0.2/lib/tasks/databases.rake:85 hain' n_handling'

I also tried with an earlier (1.2.6) version of Rails, without success. Any clue?

---- Is there a database in postgres for development? Does it work? It looks like the postgresql adaptor can't connect.

Craig

Yes, there is a PostgreSQL db named depot_development (actually I'm following the book Agile Web Development With Rails). I checked if the server was running (pg_ctl status –D "C:\Program Files\PostgreSQL\8.3\data" and it says that no server is running.

When I start the server (pg_ctl start -D "C:...), it says that one is already running, because the file where server status is written (postmaster.pid) exists. However that file cannot be deleted, neither by PostgreSQL nor manually by me. I am starting to suspect a read/write permission problem. I was, but am no longer administrator on my computer.

Craig White wrote: >> lib/ruby/gem >> dependenci >> c:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.0.2/lib/active_support/ >> dapters/abstract/connection_specification.rb:291:in `connection=' >> c:/ruby/lib/ruby/gems/1.8/gems/rails-2.0.2/lib/tasks/databases.rake:85 >> hain' >> n_handling' >> >> >> I also tried with an earlier (1.2.6) version of Rails, without >> success. >> Any clue? > ---- > Is there a database in postgres for development? Does it work? It looks > like the postgresql adaptor can't connect. > > Craig

Yes, there is a PostgreSQL db named depot_development (actually I'm following the book Agile Web Development With Rails). I checked if the server was running (pg_ctl status -D "C:\Program Files\PostgreSQL\8.3\data" and it says that no server is running.

When I start the server (pg_ctl start -D "C:...), it says that one is already running, because the file where server status is written (postmaster.pid) exists. However that file cannot be deleted, neither by PostgreSQL nor manually by me. I am starting to suspect a read/write permission problem. I was, but am no longer administrator on my computer.

you should be able to connect from command line if postgresql is actually running and until you can do that, it's probably not reasonable to assume that it's a ruby on rails issue...

# psql th-db_development -Upostgres Welcome to psql 8.1.11, the PostgreSQL interactive terminal.

Type: \copyright for distribution terms        \h for help with SQL commands        \? for help with psql commands        \g or terminate with semicolon to execute query        \q to quit

If you can connect as a user to the database...then rails should work

Craig

Yes I can connect (psql -U postgres depot_development) without any problem.

Sébastien Clément wrote:

In addition to the error displayed as text (see top of this post), a window opens and tells:

The ordinal 284 could not be located in the dynamic link library SSLEAY32.DLL

Ever heard of this?

Sébastien Clément wrote:

Sébastien Clément wrote:

In addition to the error displayed as text (see top of this post), a window opens and tells:

The ordinal 284 could not be located in the dynamic link library SSLEAY32.DLL

Ever heard of this?

Apparently, this would be due to PostgreSQL v8.3, but no solution so far:

http://objectmix.com/ruby/345420-ssleay32-dll-postgresql-extension-problem.html

> you should be able to connect from command line if postgresql is > actually running and until you can do that, it's probably not reasonable > to assume that it's a ruby on rails issue... > > # psql th-db_development -Upostgres > Welcome to psql 8.1.11, the PostgreSQL interactive terminal. > > Type: \copyright for distribution terms > \h for help with SQL commands > \? for help with psql commands > \g or terminate with semicolon to execute query > \q to quit > > If you can connect as a user to the database...then rails should work > > Craig

Yes I can connect (psql -U postgres depot_development) without any problem.

Are you using the same user in database.yml? If not, can you connect from the command line as the same user in database.yml?

If the aboe is true, remove the postgres gem and install it again...look for any errors that may arise when you install it.

Craig

Problem solved: I removed PostgreSQL8.3 and reinstalled 8.2, and it works.

Apparently, version 8.3 has some dlls (SSLEAY32.DLL?) that are not compatible.

Thanks for the help.

on Vista no less...

Ruby version 1.8.6 (i386-mswin32) RubyGems version 1.2.0 Rails version 2.1.0 Active Record version 2.1.0 Action Pack version 2.1.0 Active Resource version 2.1.0 Action Mailer version 2.1.0 Active Support version 2.1.0 Application root C:/Users/Erik/sandbox/wpgtest Environment development Database adapter postgresql Database schema version 0

this is with PostgreSQL 8.3.3

I used the 1 click ruby windows installer

I used the PostgreSQL installer and made sure to install the dev stuff. I then made sure to have the postgresql bin lib and include in the path.

I made a new sandbox using the -d flag: rails -d postgresql wpgtest.yml

edited the database which now is pre-setup for postgresql and tells you want gem to install.

I installed said gem.

in pgAdmin I created my sandbox user and database.

**HERE is the TRICK***

I went to Win32/Win64 OpenSSL Installer for Windows - Shining Light Productions and downloaded the most recent OpenSSL. I then copied all dll's from it's default install directory to /ruby/bin

ruby script/server works! and rake db:migrate works!

cheers!

I had the same problem. When I switched from the gem ruby-postgres and to postgres-pr, the problem went away. I'll admit, I don't understand why, but I smiled when it worked. Earlier I did work around open SSL.

Some of the sites suggest a difference in Open SSL versions. I downloaded the latest but had a problem missing the Microsoft C++ Redistributables, so I loaded those: http://www.microsoft.com/downloads/thankyou.aspx?familyId=9b2da534-3e03-4391-8a4d-074b9f2bc1bf&displayLang=en

Back to the OpenSSL at this site: Win32/Win64 OpenSSL Installer for Windows - Shining Light Productions. Here is one library that they suggested get replaced (rename all “old” versions and use the latest). On installation of OpenSSL I put the latest into c:\OpenSSL and \Windows\system32. Here are the directories that I changed the file in (libeay32.dll and ssleay32.dll to libeay32.dll.old): • c:\instantrails\php • c:\pgrails\bin • c:\program files\pgOleDB • c:\ruby\bin • php (this could not be renamed? – in winzip file) • c:\program files\postgresql\.3\bin • c:\program files\psqlodbc\0803\bin • ruby/bin (in use? – in winzip file)

Hopefully that helps someone (I spent several days working through this).

Shane http://www.linkedin.com/in/pshayes

Metaltree wrote: