ある日Q4Mを利用したシステムを運用していたところ、プログラマの方から 「Q4Mのテーブルが壊れたっぽいのだけども。。。」 との報告があり、状況を聞いてみた。 どうも、Queueに突っ込んだけども処理したくないデータがあったという理由で一部の行をDELETEしたとのこと。 で、早速DBを調べてみると、全部queue_waitで取り出したにも関わらず行数が0にならなかったり、 発行しているqueue_endが実行されずにずっとプロセスが残っていたりして大変カオスな状態になっていた。 (insertも止まっていた) その場ではMySQLを強制的に再起動して、tableやschemaをdropして再作成してもらうことでことなきを得た。 が、今日帰ってきてQ4Mのページを見て謎が解決。 Q4Mの「Limitations and Known Issues」に removal of multiple