[pgsql-jp: 40693] pgsql_tmp以下の一時ファイルが残存するパターンについて

toshihideka4316 @ zenrin.co.jp toshihideka4316 @ zenrin.co.jp
2011年 2月 21日 (月) 14:56:21 JST


お世話になります、片山です。

一時ファイルである、pgsql_tmp以下のファイルについて質問があります。

■環境
サーバ:PostgreSQL8.2.14
クライアント:PostgreSQL8.2.14
ODBCドライバ:8.2.4

PostgreSQL運用時に一時ファイルの容量が約130ギガまで肥大し、
PostgreSQLを再起動し運用を再開したところ100Mまで減少したため、
一時ファイルが増加した原因をつきとめようと考えています。
そこで質問なのですが異常終了時に一時ファイルが残存することはありえるのでしょ
うか。
残存しうる場合、どのようなパターンで残存するのでしょうか。
また、どのようなパターンで一時ファイルが急激に増加するのでしょうか。
ご教授願います。

検証したところ、
pgsql_tmp以下に大容量の一時ファイルを作成するSELECT文を発行してout of memory
等でエラーとなったときに、
サーバのバックエンドプロセスは約5分残存してから終了しました。
サーバのバックエンドプロセス終了後に一時ファイルは削除されました。
検証の結果では一時ファイルの残存を再現することが出来ませんでした。

以上よろしくお願いいたします。




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