[groonga-dev,01720] Re: FW: mroonga適用テーブルへの「WHERE IN 多数」クエリでエラー

Back to archive index

yoku ts. yoku0****@gmail*****
2013年 8月 29日 (木) 11:16:31 JST


こんにちは、yokuです。

handler::print_errorは`ストレージエンジンから'エラーが返されて
クエリーが中断された時だけ作用するので、普通の(?)エラーは拾わないです。

勿論、InnoDBなど他のストレージエンジンからエラーが返されれば拾っちゃいますので、
gdb> condition 1 error= 1
で条件付きブレークにしておけば絞れるかなー感があります(error変数にGot error x from storage engineのxが入る)

が、確かに敷居高そうですね。。
失礼しました(;´д`)


yoku ts.

2013年8月29日 11:08 Kouhei Sutou <kou****@clear*****>:
> 須藤です。
>
> 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
>
> _______________________________________________
> groonga-dev mailing list
> groon****@lists*****
> http://lists.sourceforge.jp/mailman/listinfo/groonga-dev




groonga-dev メーリングリストの案内
Back to archive index