【現象】
下記のようなメッセージが出力され、Resin が「exit reason: HEALTH (exit code=9)」で再起動してしまいます。
WarningService: Shutdown: caucho.database.corrupt[****/resin-data/app-0/distcache/data.db] Table[data:6,****\resin-data\app-0\distcache\data.db]: inode block 1ab8 has invalid block code (0) expected (2)
【発生条件】
「caucho.database.corrupt」メッセージは、Resin の内部データベースに不整合が発生した場合に出力されます。
【原因】
下記のような場合に発生します。
・javaプロセスやマシンが高負荷状態の場合
・大量にセッションデータが格納されている場合
【対処方法】
再発する場合には 以下の対応をご検討ください。
「<%RESIN_HOME%>/resin-data/app-0/distcache」の削除
事象の発生サーバの「<%RESIN_HOME%>/resin-data/app-0/distcache」ディレクトリを削除した上でResinを起動する。
また今後同様の事象が発生しないようにするため、以下の対応についてもご検討ください。
◆ resin.properties の session_store の無効化(false)
下記の設定を行うことでセッション情報の書き込み負荷を軽減する。
<resin.properties の設定例>
session_store : false
ただし、session_storeを無効化すると、セッションフェイルオーバーが行われません。
session_storeを無効化した上でセッションフェイルオーバーを利用したい場合は、セッション管理モジュールの利用をご検討ください。
■セッション管理モジュールのご紹介
https://dev.intra-mart.jp/セッション管理モジュールのご紹介/
◆ Resinの最新版へのアップデート
Resinの内部データベースはバージョンアップの毎に改善が行われているため、上位バージョンの利用を推奨します。
上位バージョンへのアップデートは、下記のFAQを参照ください。
■製品サポートに含まれていない上位バージョンのResinを利用する事は可能でしょうか?
http://imfaq.intra-mart.jp/imqa/faq/detail.asp?baID=1&FAQID=551
-- 対象 ------------------------------------------------------------------------
iAP/Accel Platform/全アップデート
--------------------------------------------------------------------------------
FAQID:625
Resin が「exit reason: HEALTH (exit code=9)」で再起動してしまいます。
