[pgpool-general-jp: 1029] master_slave_sub_mode = 'stream' の時にVSZが1GB以上になる現象について
Hiroaki Aoyama
hiro.aoyama @ gmail.com
2012年 1月 23日 (月) 08:21:35 JST
初めまして。青山と申します。
pgpool-IIを起動する際に、pgpool.confで master_slave_sub_mode = 'stream' とすると
pgpoolのプロセスサイズ(VSZ)が1GB以上になるという現象が起きており、困っています。
master_slave_sub_mode = 'slony' とした場合は、VSZは27MBくらいです。
pgpool-IIのバージョンは、3.0.4、3.0.5、3.1.1の3つで試しましたがいずれも同じようになります。
OS環境は、CentOS 5.6(x86_64) 及び Scientific Linux 6.1(x86_64)にて試しましたが、やはり
どちらでも同じようになります。
VSZが1GB以上になっていても、RSSはあまり大きくなってはいないのですが、このまま長期運用を
行ってよいか心配です。
以下、psコマンドの出力結果の抜粋を'stream'の場合と'slony'の場合で記載いたします。
□ master_slave_sub_mode = 'stream' の場合
# ps auxwwwwf
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
postgres 3903 0.2 0.3 1178760 1512 ? Ss 08:18 0:00
/usr/local/pgpool2/bin/pgpool -f /usr/local/pgpool2/etc/pgpool.conf -d
postgres 3904 0.0 0.1 27696 836 ? S 08:18 0:00 \_
pgpool: wait for connection request
postgres 3905 0.0 0.1 27696 836 ? S 08:18 0:00 \_
pgpool: wait for connection request
postgres 3906 0.0 0.1 27696 836 ? S 08:18 0:00 \_
pgpool: wait for connection request
postgres 3907 0.0 0.1 27696 836 ? S 08:18 0:00 \_
pgpool: wait for connection request
postgres 3908 0.0 0.1 27696 836 ? S 08:18 0:00 \_
pgpool: wait for connection request
postgres 3909 0.0 0.1 27696 584 ? S 08:18 0:00 \_
pgpool: PCP: wait for connection request
postgres 3910 0.0 0.1 1178760 856 ? S 08:18 0:00 \_
pgpool: worker process
□ master_slave_sub_mode = 'slony' の場合
# ps auxwwwf
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
postgres 3798 0.0 0.2 27696 1460 ? Ss 08:04 0:00
/usr/local/pgpool2/bin/pgpool -f /usr/local/pgpool2/etc/pgpool.conf -d
postgres 3799 0.0 0.1 27696 840 ? S 08:04 0:00 \_
pgpool: wait for connection request
postgres 3800 0.0 0.1 27696 840 ? S 08:04 0:00 \_
pgpool: wait for connection request
postgres 3801 0.0 0.1 27696 840 ? S 08:04 0:00 \_
pgpool: wait for connection request
postgres 3802 0.0 0.1 27696 840 ? S 08:04 0:00 \_
pgpool: wait for connection request
postgres 3803 0.0 0.1 27696 840 ? S 08:04 0:00 \_
pgpool: wait for connection request
postgres 3804 0.0 0.1 27696 588 ? S 08:04 0:00 \_
pgpool: PCP: wait for connection request
postgres 3805 0.0 0.1 27696 728 ? S 08:04 0:00 \_
pgpool: worker process
上記の結果は、いずれもpgpool-IIの起動直後のものですが、'stream'の場合、一定時間で子プロセスが
再生成されますため、このまま放っておくと、 pgpool: wait for connection request のプロセスについても
VSZが1GB以上になってしまいます。
この現象を回避する方法はないでしょうか。ご助力いただけますと幸いです。
よろしくお願いいたします。
pgpool-general-jp メーリングリストの案内