締切済み

PostgreSQLのメモリ使用量について

  • すぐに回答を!
  • 質問No.8567917
  • 閲覧数5421
  • ありがとう数24
  • 気になる数0
  • 回答数1
  • コメント数0

お礼率 54% (19/35)

お世話になります。

漠然とした質問になってしまうのですが、
postgresのメモリ使用量が増加し続け、
最終的にメモリ不足になる現象で困っております。
もし、PostgreSQLのチューニングで解消できるようでしたら
ご教示頂けないでしょうか?


詳細(ざっくりですが、、、)は、
周期的にSELECTを実施しているプロセスがあるのですが、
psで監視すると、postgresのメモリ使用量が、
少しずつですが増加し続け
SELECTをやめると増加は止まるのですが、
増えたままで減りません。
(試験的にSLEEPしてSELECTを止めた状態を作成)


ちなみにSELECTしているプロセス(C言語)自体は
メモリリークしておりません。。。


漠然としてて申し訳ございませんが
お知恵をお借りできるとうれしいです。

回答 (全1件)

  • 回答No.1

ベストアンサー率 100% (1/1)

ここよりも、PostgreSQLコミュニティのMLで聞いた方が、有益な情報を得られると思いますよ。
日本PostgreSQLユーザ会 :pgsql-jp@ml.postgresql.jp

その際、以下の情報を合わせて送るとよいかと思います。
・環境(使用しているOS、PostgreSQLのバージョンなど)
・他に動いているアプリケーションがないか(PostgreSQLだけが動いているDBサーバなのか、他の製品も同居しているのか)
・SELECTで行っている処理の概要
・メモリ不足によって起きている現象(スワップが頻発など)
・エラーメッセージ、ログがはかれている場合は、そのメッセージ、ログ

> SELECTをやめると増加は止まるのですが、
>増えたままで減りません。
>(試験的にSLEEPしてSELECTを止めた状態を作成)

SLEEPさせているだけということは、処理の途中で止まっているということなので、
メモリを解放しないため、正常な動作だと思います。
お礼コメント
alp_tomy

お礼率 54% (19/35)

ご助言ありがとうございます!

ただ、日本PostgreSQLユーザ会・・・調べてみたのですが。。。
メアドの公開等ちょっとハードルが高いので、
できればこちらで解決できればと思います。

>・SELECTで行っている処理の概要
 下記の通りシンプルなものです。
SELECT A,B,C FROM table where A=xxx

>・メモリ不足によって起きている現象(スワップが頻発など)
 SWAPはおきていないのですが、
 1レコードのデータサイズが大きい(50M以上)ため
 その辺が影響するのか知りたいです。

>・エラーメッセージ、ログがはかれている場合は、そのメッセージ、ログ

 エラーログははかれていませんでした。

OS:RedHat(結構古いバージョンです・・多分2系列)
PostgreSQL:8.4.4

また、topコマンドで見たときに
使用時間(TIME)が増加し続けるのですが、
以下の処理の流れの場合(2)・(3)を繰り返す限り
使用時間(TIME)は増加するものなのでしょうか?

ざっくりですが、処理の流れは以下の通りです。
SLEEPは(4)の前に入れました
―――――――――――――――――――――
(1)PQconnectdb
(2)PQexec(SELECT文)
(3)PQclear
(4)PQfinish
―――――――――――――――――――――

回答しにくい説明ですみません。。。
投稿日時 - 2014-04-28 19:51:03
結果を報告する
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。
関連するQ&A
AIエージェント「あい」

こんにちは。AIエージェントの「あい」です。
あなたの悩みに、OKWAVE 3,500万件のQ&Aを分析して最適な回答をご提案します。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する

ピックアップ

ページ先頭へ