Naoya Murakami
visio****@gmail*****
2013年 8月 11日 (日) 12:50:26 JST
お世話になっております。村上です。
標題のとおり、下記の事象が発生しました。
mroonga_commandがまだ実験的な段階で通常使用で頻繁に使われるものではないので、
ユーザが運用上、気をつければいい話だけかもしれませんが、一応報告します。
<事象>
mroongaのテーブルを更新している最中に、mroonga_command('table_list')または、mroonga_command('select
<テーブル名>')等を実行すると、mysqldがクラッシュする。
<対象モード>
ストレージモード、ラッパーモード
<環境>
mroonga3.06
groonga3.06
mysql5.5.14
CentOS6.4
なお、テーブル更新中にmysqldがクラッシュすると、高確率でgroongaテーブルにロックが残留します。
・groonga.log
io(mrn_test.mrn.0000131) collisions(1000/2302): lock failed 1000 times
ロックされているのにもかからわず、insert、update等が行おうとすると、mysqlからは、
mysqlコマンドでkillしてもkillできず、service mysqld stopも受け付けなくなります。
この場合、OSのkillコマンドで強制的にmysqldを殺して、mysqldを再起動してから
groongaテーブルを削除して再構築しています。
mysqlとgroongaを連携させている関係上、途中で強制終了がかかると、どうしようも
ないのかもしれませんが、このあたりもなかなか煩雑と感じている点ではあります。
以上、よろしくお願いします。