トップ 追記
RSS feed

HsbtDiary


2012/01/28 (土) [長年日記]

ruby-1.9.3 では BasicObject.new に誤った引数を渡すと ArgumentError になっている件

ここ数日 ruby-1.9.2 と rails-3.2.x で rspec や cucumber を走らせると、毎日1回は Ruby が SEGV してしまってぼやいていたら、

@hsbt 修正されたバグも結構あるはず。どのコンパイラを使ってるのかわからないけど、Fiberのやつはtrunkでは直ってるんじゃないかという気が。 2012-01-27 22:10:05 +0900 via YoruFukurou

とアドバイスをもらったので 1.9.3 で開発中の Rails アプリケーションを実行してみたら、

DatabaseCleaner.strategy = :transaction, {except: %w[foo bar]}

というところで ArgumentError が起きるようになってしまった。色々調べてみたら、DatabaseCleaner.strategy = で作成される DatabaseCleaner::ActiveRecord::Transaction.new は引数無しのメソッドにも関わらず、{except: %w[foo bar]} の部分がオプションとしてわたっている事が ArgumentError の原因だった。つまり、これまで 1.9.2 でオプションを渡して効いてると思っていた処理はまったく意味の無いものなのであった。な、なんだってー。

これは 1.9.3 から引数無しの class を引数付きで new しようとした時の正しい挙動らしい。

@hsbt なってます。意図的ですね。 http://t.co/6pUCmuNm 2012-01-28 10:17:53 +0900 via YoruFukurou

とりあえずこの件はアプリケーションの方で無駄なオプションを消すことで対処した。ついでに DatabaseCleaner の方にも transaction にオプションを渡すような使い方をしている時にはちゃんとわかるようにエラーを出す pull request も出しておいた。

Tags: rails ruby

Vita の小物を買った

三国無双 Next もすっかり飽きて今は torne 視聴機となっているんだけど、長時間 torne を見るにはバッテリーが足りなくて、かといって持ちながら充電するには充電ケーブルが邪魔なのでクレードルを買ってしまった。これで2500円と言われると"えー"って値段だけど目的達成のためにはしょうがない。

後は鞄に突っ込んで持ち運ぶためにポーチを買った。Amazonのレビューの通り、ちょっと入れにくいけど他のポーチのごつさが耐えられないのでこれはこれでいいかなーというレベル。


クレードル (PCH-ZCL1J)

ソニー・コンピュータエンタテインメント
¥ 2,291

ポーチ (PCHJ-15004)

ソニー・コンピュータエンタテインメント
¥ 1,190

Tags: vita sony game

2012/01/27 (金) [長年日記]

CouchConf に参加してきた

JaSSTに引き続き今日はベルサール三田で開催された CouchConf に参加してきた。最初は CounchDB のカンファレンスかと思ったんだけど CouchBase のカンファレンスだった。参加層はエンタープライズっぽい人が中心の製品紹介みたいな感じかと思ったんだけど、この予想は大幅に外れてだいぶ技術者中心だったなあ。

今週はだいぶ外に出過ぎなので午前中のビギナー向けセッションを聞くだけで帰ってきたけど、MongoDBに比べて簡単にDBクラスターを作れるところとGUIインタフェースがしっかり作ってあるところがよさそうなポイントだった。CouchBase 謹製の Ruby クライアントもあるのでドキュメント指向DBが必要なフェーズが来たら検討材料の一つにしてもいいかもなー。


2012/01/26 (木) [長年日記]

JaSST'12 Tokyo 2日目に参加してきた

2日目は t_wada さんや yattom さんが出るTDD研究会のセッションがあるので、それだけ見に目黒に行ってきた。

TDD研究会のセッションは守破離というテーマでTDDの変遷を発表していたみたいだけど、イマイチどの辺が違うのかピンと来なかった。この辺は昨日に引き続き @m_seki さんの廊下セッションで詳しく解説してもらったり、新しいアイデアを聞いたりしたのでだいぶためになった。

Tags: JaSST

スケーリング MongoDB を読んだ

Oreilly Ebook の スケーリング MongoDB を読み終わった。

この本は MongoDB のシャーディングの機能を中心に数百GBから数TBのオーダーのシャードを構築する上のノウハウ、良いシャードキーと悪いシャードキーの例、シャードに何か操作を行う時のコマンド解説などが書かれている。

この手の情報って何処かのブログにざーっと書いてあればそれを参照すると思うんだけど、体系だって書いてあるものはこの本が始めてだと思うので、こういう隙間を埋めるような書籍が Ebook で出版されるようになったのはだいぶ良い世の中になったなーとしみじみ感じてしまった。

Tags: MongoDB