Kouhei Sutou
kou****@clear*****
2013年 8月 29日 (木) 11:08:27 JST
須藤です。 In <CAHB5oTOcYFJWd4wqzGiXMnjthjOgxZKKbfs56M=R+d0er=dkfA****@mail*****> "[groonga-dev,01716] Re: FW: mroonga適用テーブルへの「WHERE IN 多数」クエリでエラー" on Thu, 29 Aug 2013 10:31:14 +0900, "yoku ts." <yoku0****@gmail*****> wrote: > こちら http://sourceforge.jp/projects/groonga/lists/archive/dev/2013-August/001712.html > で村上さんがなさっているように、 > バックトレースを取ると少し幸せになったりしますか…? > すとーさん 役に立つと思うのですが、敷居が高いなぁというのが気になるとこ ろなんです。。。村上さんはすでに自分でビルドしているのでデバッ グビルドにしてもらえませんか?とかgdbで…とか大丈夫そうかなぁ と思ったのですが、今回はパッケージでインストールしたものなの で敷居が高いだろうなぁと。。。 あと、デバッグビルドじゃなくてもgdbでうまく情報が捕れるかなぁ というのを心配しています。 > `Got error x from storage engine'の発生時にどうやってブレークさせようかとちょっと考えていたのですが、 > こんな形でいけそうな気がしています。 > (gdbでアタッチしてから"c"を叩くまではmysqldの処理が止まります) > > # gdb -p <mysqldのpid> > gdb> b handler::print_error > gdb> c > Continuing. > (ここでプロンプトが返ってこなくなる) > > ストレージエンジンからエラーが返るとgdbプロンプトが返ってくるので、 > (ここからquitするまでの間、mysqldは処理が止まります) > > gdb> bt full > .. > gdb> quit > > でバックトレースが取れると思います。 > いかがでしょう? handler::print_errorで違うエラーを捕まえてしまわなければいけ る気がします!が、捕まえちゃいそうな気がしています。。。 大丈夫かしら。。。 -- 須藤 功平 <kou****@clear*****> 株式会社クリアコード <http://www.clear-code.com/> (03-6231-7270) groongaサポート: http://groonga.org/ja/support/ パッチ採用はじめました: http://www.clear-code.com/recruitment/ コミットへのコメントサービスはじめました: http://www.clear-code.com/services/commit-comment.html