今日のハマリ

出来心ってのはこわいねえ。

いや、こないだもWindowsの gem 0.9.5 でハマってruby入れ直しーとかgem入れ直しーとか何回もやってひどい目にあったばかりなわけ。gemは金輪際0.9.4しか使わないもんね!と決心しておきながら、でもMacだとちゃんと動いてるしー、バージョンもあがってるしー、ひょっとするとひょっとするかも!とか思っちゃったりするのはほら、年のせいじゃなくて年の瀬だからかな。

そして今日もハマる。ああどっぷりと。今回は条件もわるかった。

  • rails -> 2.0.2
  • gem -> 1.0.1
  • sqlite3 -> 3.54
  • 自作ツール公開*1

これがほぼ同時だったので、どのタイミングで何が影響したのがまったく切り分けできなかった。

結局 gem だけ 0.9.4 に戻した段階で復帰したが、もう1つ気になったのはsqlite3.dllまわり。推測だが、複数のバージョンが混在する環境で操作してしまったためにまともにうごかなかったのでは・・・。残念ながら再現するところまで気力がもたなかったので今回はここまで。一応メモっておくとrake db:migrateで「指定されたプロシージャが見つかりません。 - Init_sqlite3 」とか出たら古いバージョンが残っていないか要注意かもかも。

教訓:無闇なアップデートは禁物。TDD等で確実にテストができるようになってから、1つずつアップデートすること。

追記:rake rails:freeze:gems も検討すること。

*1:社内だけど