これはPGroonga 2.X and 3.X用のドキュメントです。古いPGroongaを使っているならPGroonga 1.xのドキュメントを見てください。

pgroonga_checkモジュール

1.2.0で追加。

2.3.3から非推奨です。代わりにpgroonga_crash_saferモジュールを使ってください。

概要

pgroonga_checkモジュールは起動時にPGroongaのデータベースの一貫性をチェックします。PGroongaのデータベースが壊れている場合は自動でそのデータベースを復旧します。

設定

postgresql.confshared_preload_librariespgroonga_checkを追加します。

shared_preload_libraries = 'pgroonga_check'

この変更を反映するためにPostgreSQLを再起動する必要があります。

使い方

何もする必要はありません。pgroonga_checkモジュールはPostgreSQL起動時にすべてのPGroongaのデータベースをチェックします。もし、pgroonga_checkモジュールが壊れているPGroongaのデータベースを見つけたら、自動で復旧します。

復旧に失敗した場合は該当PGroongaデータベースを自動で削除します。PGroongaのデータベース内には復旧不可能なデータはありません。手動でREINDEXを実行することでPGroongaのデータベースを復旧できます。