Naoya Murakami
visio****@gmail*****
2013年 5月 19日 (日) 03:52:00 JST
お世話になっております。村上と申します。 mroonga3.03をmyisamのラッパーモードで利用しています。 updateを並列させすぎたせいか、mmap failed!!!! in GRN_IO_SEG_REF(0x7fcbe44d19b0, 618)というメッセージでmysqldがクラッシュし、再起動することがよくあります。 (関係あるかわかりませんが、spider2.28からspider3.00にしてからupdateの並列数が少なくても、発生しやすくなったような気がします。) その後、groonga.logを参照すると、 io(xxxx.mrn.000010A) collisions(1000/598903): lock failed 1000 times となっており、クラッシュした際にアップデートしていたテーブルの インデックスがロックされて、以後、更新できなくなります。 このように、インデックスがロックされた場合、該当のテーブルをdisable keys 後、 enable keysすることにより、インデックスを再構築しなおすことにより、対応しています。 5月頭よりずっとインデックス構築しておりますが、途中で、mysqldがクラッシュし、 インデックスがロックされることが多くて、やり直しが多数発生してなかなか大変です。 インデックスの再構築に、1日超かかるテーブルが多いです。。 ***.mrn.001がロックされ、データベースごとインデックス構築やり直したことも あります。 Q.インデックスがロックされた場合、インデックスの再構築以外にロックを 解除させる方法はないでしょうか? 以上、よろしくお願いします。