[pgsql-jp: 29713] Re: pg_dumpでout of memory エラー

Tatsuo Ishii t-ishii @ sra.co.jp
2003年 4月 24日 (木) 18:24:44 JST


石井です.

> 現在、Postgresql7.3.2の検証を行っているのですが、3000テーブル
> ほど保持しているDBにpg_dumpを実行すると、
> 
> pg_dump: WARNING:  ShmemAlloc: out of memory
> pg_dump: Attempt to lock table "テーブル名" failed.  ERROR:  
> LockAcquire: holder table out of memory
> 
> と出力され、正常に終了しません。
> psqlなどでこの現象が発生したテーブルを見ても問題なく参照できます。
> また、現象が出るDB以外は同じようなテーブル数を保持しているのですが、
> 問題なくpg_dumpは動作します。
> 
> 実行環境は、RedHatLinux7.1 Memory 512M
> でfreeコマンドで使用量を見ながらやっても特にメモリやswapを食いつぶして
> しまっているようには見えないのですが・・・。
> postgresql.confはlog部分とtcpip_socket = true以外はデフォルトです。
> 
> なにか回避方法はないのでしょうか?

さっとソースを見た限りでは,postgresql.confの

	max_locks_per_transaction = 64

を増やしてpostmasterを再起動するといいのかな,という気がします.
あまり自信はないのですが...
--
Tatsuo Ishii



pgsql-jp メーリングリストの案内