[Senna-dev 675] Re: UPDATEとINSERTでデッドロックが起きる

Back to archive index

Tetsuro IKEDA ikdtt****@gmail*****
2007年 9月 10日 (月) 19:12:29 JST


こんにちは。池田@tritonnです。

インデックス作成時にSECTIONALIZEを指定されていますでしょうか?
もしマルチセクション機能(SECTIONALIZE)を使用されている場合には、
Tritonn 1.0.3にバグを見つけておりますのでその可能性もあります。

# マルチセクション機能についてのバグはTritonn 1.0.4で修正しました。

07/09/10 に K I<iwamo****@gmail*****> さんは書きました:
> はじめまして,iwamotkです.
> Tritonn-1.0.3を使用して以下の環境で運用していたところ,
> UPDATEとINSERTで処理が重くなり,動作しなくなりました.
>
> ■動作環境
> memory:2G
> CentOS 5.0
> senna-1.0.8
> mysql-5.0.41-tritonn-1.0.3
> mecab-0.96
> mecab-ipadic-2.7.0-20070801
> テーブルのデータ数:約100万件
> 1日のデータ増加量:約2万件
>
> senna.logを見てみると,
> 09/05:14:29:46.652541|C|3500| deadlock detected! in
> sen_io_seg_ref(0x962b8b8, 287)
> のように表示されています.
>
> grep -20 14:29:46 senna.log
> を行って,デッドロックが表示されている行の一つの
> 前後20行を切り出してみました.
> 何か対策がありましたらご教授願えませんでしょうか.
>
> --- senna.log ---
> ...
> 09/05:14:26:52.847321|i|3498| ft_sen_index_add => sen_index_upd:
> index=0x95e8e50, key=0x69c73c60, oldvalue=(nil),oldvalue_len=0,
> newvalue=0x9691c58, newvalue_len=48 09/05:14:26:52.848370|i|3499|
> ft_sen_index_add => sen_index_upd: index=0x95d4b20, key=0x5d9c1c60,
> oldvalue=(nil),oldvalue_len=0, newvalue=0x540fac50, newvalue_len=816
> 09/05:14:26:52.850883|i|3499| ft_sen_index_add => sen_index_upd:
> index=0x95cbd88, key=0x5d9c1c60, oldvalue=(nil),oldvalue_len=0,
> newvalue=0x5f26b018, newvalue_len=2795 09/05:14:26:52.888000|i|3499|
> ft_sen_index_add => sen_index_upd: index=0x95e8e38, key=0x5d9c1c60,
> oldvalue=(nil),oldvalue_len=0, newvalue=0x540fafd0, newvalue_len=28
> 09/05:14:27:03.697352|i|3527| ft_init_boolean_search =>
> sen_query_open: str='*D+ "----"', str_len=57, max_exprs=32
> 09/05:14:27:03.697415|d|3527| ft_init_boolean_search =>
> sen_query_rest: q=0x5d60a050, rest=0x693ffd84
> 09/05:14:27:03.697431|d|3527| ft_init_boolean_search =>
> sen_records_open 09/05:14:27:03.697449|i|3527| ft_init_boolean_search
> => sen_query_exec: i=0x95e8e38, q=0x5d60a050, r=0x5a218bb8
> 09/05:14:27:03.697585|i|3527| hits(exact)=0
> 09/05:14:27:03.697632|i|3527| hits(unsplit)=0
> 09/05:14:27:03.697677|i|3527| hits(partial)=0
> 09/05:14:27:03.697691|d|3527| ft_init_boolean_search =>
> sen_query_close: q=0x5d60a050 09/05:14:27:03.697721|d|3527|
> ft_boolean_reinit_search => sen_records_rewind: records=0x5a218bb8
> 09/05:14:27:03.697769|d|3527| ft_boolean_close_search =>
> sen_records_close: records=0x5a218bb8 09/05:14:28:20.647095|C|3499|
> deadlock detected! in sen_io_seg_ref(0x962b8b8, 287)
> 09/05:14:28:20.647239|i|3499| ft_sen_index_add => sen_index_upd:
> index=0x95e8e50, key=0x5d9c1c60, oldvalue=(nil),oldvalue_len=0,
> newvalue=0x540fafd0, newvalue_len=28 09/05:14:28:20.648140|i|3500|
> ft_sen_index_add => sen_index_upd: index=0x95d4b20, key=0xaf9bdc60,
> oldvalue=(nil),oldvalue_len=0, newvalue=0x59ac58b8, newvalue_len=210
> 09/05:14:28:20.648935|i|3500| ft_sen_index_add => sen_index_upd:
> index=0x95cbd58, key=0xaf9bdc60, oldvalue=(nil),oldvalue_len=0,
> newvalue=0x539086d0, newvalue_len=9 09/05:14:28:20.649108|i|3500|
> ft_sen_index_add => sen_index_upd: index=0x95cbd88, key=0xaf9bdc60,
> oldvalue=(nil),oldvalue_len=0, newvalue=0x53908020, newvalue_len=1184
> 09/05:14:28:20.651813|i|3500| ft_sen_index_add => sen_index_upd:
> index=0x95e8e38, key=0xaf9bdc60, oldvalue=(nil),oldvalue_len=0,
> newvalue=0x59a03960, newvalue_len=42 09/05:14:29:46.652541|C|3500|
> deadlock detected! in sen_io_seg_ref(0x962b8b8, 287)
> 09/05:14:31:15.978190|C|3500| deadlock detected! in
> sen_io_seg_ref(0x962b8b8, 218) 09/05:14:31:15.978376|i|3500|
> ft_sen_index_add => sen_index_upd: index=0x95e8e50, key=0xaf9bdc60,
> oldvalue=(nil),oldvalue_len=0, newvalue=0x59a03960, newvalue_len=42
> 09/05:14:31:15.981140|i|3502| ft_sen_index_add => sen_index_upd:
> index=0x95d4b20, key=0x5da23c60, oldvalue=(nil),oldvalue_len=0,
> newvalue=0x5d646af8, newvalue_len=39135 09/05:14:31:16.051110|i|3502|
> ft_sen_index_add => sen_index_upd: index=0x95cbd88, key=0x5da23c60,
> oldvalue=(nil),oldvalue_len=0, newvalue=0x5a209648, newvalue_len=1311
> 09/05:14:31:16.054977|i|3502| ft_sen_index_add => sen_index_upd:
> index=0x95e8e38, key=0x5da23c60, oldvalue=(nil),oldvalue_len=0,
> newvalue=0x5a219198, newvalue_len=51 09/05:14:31:16.270619|i|3537|
> ft_init_boolean_search => sen_query_open: str='*D+ "----"',
> str_len=47, max_exprs=32 09/05:14:31:16.270668|d|3537|
> ft_init_boolean_search => sen_query_rest: q=0x9dd0b20, rest=0x69c73d84
> 09/05:14:31:16.270684|d|3537| ft_init_boolean_search =>
> sen_records_open 09/05:14:31:16.270702|i|3537| ft_init_boolean_search
> => sen_query_exec: i=0x95e8e38, q=0x9dd0b20, r=0x95900b8
> 09/05:14:31:16.274571|i|3537| hits(exact)=0
> 09/05:14:31:16.274673|i|3537| hits(unsplit)=0
> 09/05:14:31:16.278658|i|3537| hits(partial)=0
> 09/05:14:31:16.278709|d|3537| ft_init_boolean_search =>
> sen_query_close: q=0x9dd0b20 09/05:14:31:16.278753|d|3537|
> ft_boolean_reinit_search => sen_records_rewind: records=0x95900b8
> 09/05:14:31:16.278839|d|3537| ft_boolean_close_search =>
> sen_records_close: records=0x95900b8 09/05:14:32:43.952166|C|3502|
> deadlock detected! in sen_io_seg_ref(0x962b8b8, 287)
> 09/05:14:32:43.952410|i|3502| ft_sen_index_add => sen_index_upd:
> index=0x95e8e50, key=0x5da23c60, oldvalue=(nil),oldvalue_len=0,
> newvalue=0x5a209f00, newvalue_len=51 09/05:14:32:43.953691|i|3504|
> ft_sen_index_add => sen_index_upd: index=0x95d4b20, key=0x5d9f2c60,
> oldvalue=(nil),oldvalue_len=0, newvalue=0x5d845248, newvalue_len=4023
> 09/05:14:32:43.972543|i|3504| ft_sen_index_add => sen_index_upd:
> index=0x95cbd88, key=0x5d9f2c60, oldvalue=(nil),oldvalue_len=0,
> newvalue=0x5d845248, newvalue_len=3084 09/05:14:32:43.993806|i|3504|
> ft_sen_index_add => sen_index_upd: index=0x95e8e38, key=0x5d9f2c60,
> oldvalue=(nil),oldvalue_len=0, newvalue=0x5d810420, newvalue_len=48
> ...
> -----------
>
> よろしくお願い致します.
>
> _______________________________________________
> Senna-dev mailing list
> Senna****@lists*****
> http://lists.sourceforge.jp/mailman/listinfo/senna-dev
>




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