[Pgpool-general] pgpool-II-3.0.3and4 memory leaks
takehiro wada
takehiro.wada at gmail.com
Thu Jul 7 02:06:16 UTC 2011
This problem occurs on pgpool-II-3.0.X and pgpool-II-3.1.0-alpha2 but
does NOT occur on pgpool-II-2.5.X.
2011/7/7 takehiro wada <takehiro.wada at gmail.com>
> This problem occurs via some programming languages which are Python, Perl
> and Java as long as I checked.
> I checked the mount of used memory by ps auxww every 5 mins while my script
> runs.
>
>
> Result
> ----------------
> Wed Jul 6 17:16:05 JST 2011
> USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
> postgres 15270 0.1 0.0 4692 1568 pts/7 S 17:09 0:00 pgpool:
> postgres postgres 127.0.0.1(39315) idle in transaction
>
> Wed Jul 6 17:21:05 JST 2011
> USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
> postgres 15270 0.2 0.5 20948 17936 pts/7 S 17:09 0:00 pgpool:
> postgres postgres 127.0.0.1(39315) idle in transaction
>
> Wed Jul 6 17:26:05 JST 2011
> USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
> postgres 15270 0.2 0.8 28940 25856 pts/7 S 17:09 0:00 pgpool:
> postgres postgres 127.0.0.1(39315) idle in transaction
>
>
> Wed Jul 6 17:31:05 JST 2011
> USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
> postgres 15270 0.2 1.0 36932 33776 pts/7 S 17:09 0:03 pgpool:
> postgres postgres 127.0.0.1(39315) idle in transaction
>
>
> Wed Jul 6 17:36:05 JST 2011
> USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
> postgres 15270 0.2 1.3 44928 41960 pts/7 S 17:09 0:04 pgpool:
> postgres postgres 127.0.0.1(39315) idle in transaction
>
>
> Wed Jul 6 17:41:05 JST 2011
> USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
> postgres 15270 0.3 1.6 52784 49880 pts/7 S 17:09 0:05 pgpool:
> postgres postgres 127.0.0.1(39315) idle in transaction
>
>
> Wed Jul 6 17:46:05 JST 2011
> USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
> postgres 15270 0.3 1.8 60776 57800 pts/7 S 17:09 0:06 pgpool:
> postgres postgres 127.0.0.1(39315) idle in transaction
>
>
> Wed Jul 6 17:51:05 JST 2011
> USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
> postgres 15270 0.3 2.1 68768 65720 pts/7 S 17:09 0:07 pgpool:
> postgres postgres 127.0.0.1(39315) idle in transaction
>
>
> Wed Jul 6 17:56:05 JST 2011
> USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
> postgres 15270 0.3 2.3 76764 73640 pts/7 S 17:09 0:08 pgpool:
> postgres postgres 127.0.0.1(39315) idle in transaction
>
>
> Wed Jul 6 18:01:05 JST 2011
> USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
> postgres 15270 0.3 2.6 84756 81560 pts/7 S 17:09 0:09 pgpool:
> postgres postgres 127.0.0.1(39315) idle in transaction
>
>
> Wed Jul 6 18:06:05 JST 2011
> USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
> postgres 15270 0.3 2.9 92612 89744 pts/7 S 17:09 0:10 pgpool:
> postgres postgres 127.0.0.1(39315) idle in transaction
> ----------------
>
> Additionally, I found another testcase with shell and psql.
>
> testcase
> -----------
> while(true)
> do
> echo 'select count(*) from pg_tables;'
> sleep 0.1
> done | psql -h localhost -p 10000 -U postgres postgres
> -----------
>
> 2011/7/6 Tatsuo Ishii <ishii at sraoss.co.jp>
>
>> I am not familiar with Python and am not sure what kind of queries are
>> actually sent. How long did it take before observing the memory leak?
>> minutes? hours? days?
>> --
>> Tatsuo Ishii
>> SRA OSS, Inc. Japan
>> English: http://www.sraoss.co.jp/index_en.php
>> Japanese: http://www.sraoss.co.jp
>>
>> > Hi,
>> >
>> > I'm using pgpool-II-3.0.3 and I have a memory problem of
>> pgpool-II-3.0.3.
>> > -------
>> > $ ps uaxww | grep i18n_generic_search
>> > postgres 11188 0.0 40.0 3722712 2452996 ? S Jun20 7:54
>> pgpool:
>> > postgres postgres 127.0.0.1(49676) idle
>> > * physical memory is used 2GB the above process.
>> > -------
>> >
>> > I have been looking into the problem by creating a testcase.
>> >>From the testcase, what I found is that the mount of used memory keeps
>> > growing while an application executes SQLs in the period that the
>> > application is connecting to pgpool.
>> > Have you had any similar case so far?
>> >
>> > testcase
>> > --------------------
>> > import psycopg2
>> > import time
>> > import sys
>> >
>> > try:
>> > connection = psycopg2.connect( database='postgres',
>> > user='postgres' ,
>> > host='127.0.0.1' , << pgpool
>> server's
>> > host
>> > port='10000' , << pgpool
>> server's
>> > port
>> > password='postgres')
>> > except:
>> > print ("Could Not connect to PostgreSQL or pgpool Server")
>> >
>> > ### main ###
>> > cursor = connection.cursor()
>> >
>> > while 1:
>> > cursor.execute("select datname from pg_database")
>> > rows = cursor.fetchall()
>> > time.sleep(0.1)
>> >
>> > cursor.close()
>> > connection.close()
>> >
>> > exit()
>> > --------------------
>>
>
>
>
> --
> *************************
> Name:Takehiro Wada
> mail:takehiro.wada at gmail.com
> *************************
>
--
*************************
Name:Takehiro Wada
mail:takehiro.wada at gmail.com
*************************
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://pgfoundry.org/pipermail/pgpool-general/attachments/20110707/b34aedad/attachment-0001.html>
More information about the Pgpool-general
mailing list