Redmine をバージョンアップしようとして rake db:migrate したら rake aborted! (uninitialized constant ActiveSupport::Dependencies::Mutex)

※ このエントリは、はてなグループ終了に伴う、サブブログからの引越エントリ(2011/03)です。
※ 情報が古い可能性もありますので、ご留意ください。



なんとかしたログ。

タイトル通り、Redmine を 1.1.2 へバージョンアップする際、DB のマイグレーションで↓のようなエラーが発生した。

$ RAILS_ENV=test rake db:migrate
(in /usr/local/redmine-1.1)
rake aborted!
uninitialized constant ActiveSupport::Dependencies::Mutex

色々と調べていたら、、、↓に辿りついた。

RubyGems 1.3.1 or higher is required (Rails 2.3.5 will fail with RubyGems 1.5.0 and later, stick to previous versions of RubyGems)

RedmineInstall - Redmine

むむっ。rubygems を 1.5.0 より古いバージョンにせよ、とな。

# gem -v
1.6.1

まさかの管理系の rubygems のバージョンが新しすぎて駄目フラグ・・・。

ということで、rubygems を以前使っていた "1.3.7" までバージョンダウンした後、"rake db:migrate" を再実行することで、問題なく DB マイグレーションできました。
(推奨としては、1.4.2 のバージョンがいいかも。)

ちなみに rubygems のバージョンダウン手順

# gem install rubygems-update -v=1.3.7

インストールしたいバージョンを指定し、rubygems-update を gem install する。

# gem uninstall rubygems-update

で、最新版の rubygems-update をアンインストール (削除)

# update_rubygems

で、rubygems-update のインストール済み最新版がインストール (アップデート) される。

と、こんな感じ。