坂根 有
sakan****@skygr*****
2007年 7月 9日 (月) 15:03:40 JST
お世話になっております。坂根です。 senna導入後からMYSQLで稀にエラーが発生するようになりました。 エラー内容---------------------------------------------------------------------- DB環境はレプリケーションでマスター1台にスレーブ2台の構成で CentOS4 + tritonn-1.0.2-mysql-4.1.22-senna-1.0.4 + mecab-0.94 + php-4.4.1です。 MYSQLのエラーログに以下がでます。 070709 10:24:51 [ERROR] Got error 127 when reading table 'テーブル名' -------------------------------------------------------------------------------- 何点か試してみましたことを以下に書きます。 1.テーブルが壊れている場合に出るエラーとのことでCHECK TABLEで対象のテーブルを見てみました。 ⇒結果は大体OKなのですが何回か走らせると稀にwarningが表示されことがあります。 warningの内容は、"check warning 4 clients are using or haven't closed the table properly" です。 2.SENNAのエラーログ(senna-log-level WARNING)を出力 ⇒以下のエラーがでています。 07/07:14:39:47.013508|w| invalid euc-jp string end on sen_str_charlen 3.senna1.0.7にしてmysqldumpしてDBを再構築 ⇒症状が悪化(頻度があがり他のエラーが発生) SENNAのエラーログに下記のエラーが発生するようになりました。 07/07:18:31:42.884728|w| mi_delete_table: cannot get MI_INFO 07/09:09:55:48.793042|A| mmap(%,4194304,4754)=・パe・・輝$¢・%> また、これまで発生しなかったMySQLのエラーで下記のものが発生するようになりましたが、 こちらについてはmysqldで扱えるファイル数を増やすことや、table_cacheの数を減らす事 で対応しました。 Error in accept: Too many open files あと、気になるところで、PHPの持続的データベース接続(mysql_pconnect)が機能していない ように思えます。これまでは、同じDB・接続元ホスト・パスワードであれば既存のリンクを使用 しておりましたが、再構築後は毎回新たにDBへ接続するようになりました。 エラーコード:127については100%再現する方法がないのですが、 SENNAのFULLTEXTINDEXを貼ったテーブルにINSERT後のSELECT時に発生しています。 恐れ入りますが、アドバイスなどご教授願えますでしょうか。