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

pgroonga_crash_saferモジュール

2.3.3で追加。

まだ実験的な機能です。

概要

pgroonga_crash_saferモジュールはクラッシュセーフ機能を提供します。

pgroonga_crash_saferモジュールはPostgreSQLがクラッシュ後に最初にPGroongaの機能が使われたときに自動リカバリー処理を開始します。PostgreSQL起動時ではないことに注意してください。PostgreSQL起動時にこの自動リカバリー処理を実行したい場合はPostgreSQLがスタートした直後にSELECT pgroonga_command('status')などでPGroongaの機能を使うシンプルなSQLを実行してください。

pgroonga_crash_saferモジュールを使うにはpgroonga.enable_crash_safeパラメーターonを指定しなければいけないことに注意してください。

使い方

pgroonga_crash_saferモジュールを使うには次のパラメーターを設定しなければいけません。

例:

shared_preload_libraries = 'pgroonga_crash_safer'
pgroonga.enable_crash_safer = on

max_worker_processesパラメーターの値を増やさないといけないかもしれません。pgroonga_crash_saferモジュールは常に1つワーカープロセスを実行します。さらに、pgroonga_crash_saferモジュールはPGroongaを使っているデータベースごとに1つあるいは2つワーカープロセスを実行します。たとえば、もしPGroongaを使っているデータベースが3つあった場合は、pgroonga_crash_saferモジュールは最大で7ワーカープロセスを実行します。

max_worker_processes = 15 # 8 (the default) + 7 (for pgroonga_crash_safer)

パラメーター

参考