よくあるご質問(V3)
Q.DBのバージョンアップ時やパッチ適用時にout of shared memoryエラーが発生する
事象
POWER EGG のデータベースのバージョンアップ時やパッチ適用時に、下記の内容が含まれるエラーメッセージが出力され、処理が中断することがあります。
ERROR: out of shared memory
ヒント: You might need to increase max_locks_per_transaction.
※ バージョンアップインストーラやパッチのログと、データベースのログに出力されます。
対応方法
この事象が発生した場合、データベース(Symfoware Server)のパラメータ max_locks_per_transaction を一時的に大きく変更してバージョンアップやパッチ適用を再実行してください。
変更手順:
- データベースのインスタンス格納先フォルダ(デフォルト C:\PESYMFO\peinst)にある設定ファイル postgresql.conf を、メモ帳等のテキストエディタで開いてください。
※ 事前に、任意のフォルダに退避(コピー)することをお勧めします。 - デフォルトでは、下記のように設定がコメントアウトされています。
#max_locks_per_transaction = 64
下記のように、先頭の#を削除し、大きな値(通常、1000程度で事象は回避できます)を設定してファイルを保存してください。
max_locks_per_transaction = 1000 - POWER EGG DATABASE サービスを再起動してください。
max_locks_per_transaction の値を大きくすると、データベースが使用するメモリの量が増加するため、バージョンアップやパッチ適用の再実行後は、設定を元に戻し、POWER EGG DATABASE サービスを再起動してください。
FAQ番号
T00002