2011-02-01から1ヶ月間の記事一覧

MySQL の create index で Duplicate key name する条件

いつも、Railsのmigrationにまかせっきりの create index 構文で生成される index名 が重複エラーする条件ってなんだろう・・・ということで調べてみました。 テスト環境 MySQL 4.1.22 前提条件 hoges と fugas というテーブルがあり、それぞれ、idとnameと…

Rails2.3をMySQL4.xで使うときのRELEASE SAVEPOINTの問題

MySQL4系ではRELEASE SAVEPOINT をサポートしていないので、Rails2.3がMySQL4.xに向けて、RELEASE SAVEPOINTを使ってもエラーになるという話です。 実験環境 Rails 2.3.11 MySQL 4.1.22 エラーの再現 User.connection.transaction do User.connection.transa…

MySQLのSAVEPOINT と ROLLBACK TO SAVEPOINT と RELEASE SAVEPOINT

SAVEPOINTについて知らなかったので調べて、使ってみました。 SAVEPOINTとは トランザクションでセーブポイントを設定しておくと、ロールバックの際、セーブポイントまで戻れるというもの。 http://dev.mysql.com/doc/refman/4.1/ja/savepoints.html http://…

Rails勉強会@東京第60回に参加してきました

Rails勉強会@東京第60回に参加してきました。学んだことをメモします。 性能プロファイラ 笹田研の学生さんによるリアルタイムプロファイラの紹介がありました。「リアルタイム」なのが特徴です。rdocを実行してそのプロファイラをざーっと画面に出してデモ…

クリーンなコードはプログラマを豊かにする

これは、「理解することが書き直すことを意味するとき」から引用したグラフ。プログラマは何に一番時間を使っていると思う?「コードを新規に書くこと?」「コードを修正すること?」いやいや「コードを理解すること」。グラフでは「コードを理解すること」…

.vimrcと.zshrcで環境依存の設定を分ける方法

.vimrcや.zshrcで環境依存の設定があったりしますよね。例えば、文字コード。アップデートするたびに、各環境で書き換えるのも面倒ですので、環境依存の設定ファイルは別にしましょう。 .vimrc ファイルを2つ準備します。例えば、.vimrc と .vimrc.encoding…

RubyGemsパッケージを作ってrubygems.orgに登録してみた

作ったことなかったのでやってみました。 環境 OS Mac OS X 10.6.6 Ruby ruby 1.8.7 (2009-06-12 patchlevel 174) [i686-darwin9] RubyGems 1.5.2 gemcutter 0.6.1 サンプルGemを作る こちらを参考に作成します。gemの名前は japanrock_sample とします。 デ…

Rails2.3.10 に i18n を 文字コード EUC-JP で導入するメモ

i18n を 文字コード EUC-JP で Rails2.3.10 に導入するメモです。 実験環境 OS CentOS release 5.3 (Final) Ruby ruby 1.8.6 (2010-02-05 patchlevel 399) [i686-linux Rails Rails 2.3.10 i18n 0.5.0 文字コード EUC Rails2.3.10のデフォルトエラーメッセー…

svn の外部定義 externals を使ってみた

svn externals を使ったことがなかったので、使ってみました。 環境 OS MacOS X 10.6.6 Subversion 1.6.5 実験環境構築 ローカルにHogeとFugaという2つリポジトリを作って、HogeからFugaを外部定義してチェックアウト出来るようにします。 ## リポジトリを…

Rails2.3.10でrender_componentを使う

Rails2.3.10でrender_componentを使いたい。こちらには下記のように書いてある。 render_component goes from “deprecated” to “nonexistent” in Rails 2.3. If you still need it, you can install the render_component plugin. install % script/plugin i…