[Senna-dev 406] Re: UPDATEでデッドロック?発生について

Back to archive index

Tasuku SUENAGA a****@razil*****
2006年 12月 6日 (水) 19:54:23 JST


末永です。

Yoshio Kawano wrote:
> お世話になっております。
> YKawaです。
> 
> しつこくログを送付して申し訳けありません。

ログを見たところ、
メモリが不足していることが原因だと推定されます。

Sennaでは、
.SEN.lのファイルの中身を「すべて」メモリ上にロードします。
また、デフォルトのINITIAL_N_SEGMENTSパラメータの場合、
さらに1つのインデックスあたり
およそ128 〜 256MB のメモリを利用します。

複数のインデックスを用いている場合、
「すべてのインデックスの.SEN.lファイルのサイズの和 (MB) +
 INITIAL_N_SEGMENTS / 2 (MB) * インデックスの数」
ぶんの物理メモリは必要になると考えてください。

上記のメモリに加えて、
システム側やmysqldもメモリを利用するため、
上記プラスアルファの物理メモリが必要になると考えます。

INITIAL_N_SEGMENTSを下げることによって
メモリ使用量は削減できますが、
特に更新時にパフォーマンスが落ちてしまいます。

また、OOM Killerが動いている可能性があると思います。
OOM Killerについてはこちらの記事が参考になります。
http://dsas.blog.klab.org/archives/50706324.html

OOM Killerによってmysqldが落ちると、
エラーハンドリングが不可能になるため、
ロックが残ってしまうという事象が発生すると予想されます。

---
Tasuku SUENAGA <a****@razil*****>



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