Hi all
I have a software developed in Delphi as a Windows Service, but, i don't know why, it consumns an unexpected large system memory (515m).
The service access PostgresSQL by ODBC driver (psqlodbc_08_03_0400) and it consist simply of a loop calling a procedure PL/PGSQL. How to discover what is causing or why this high memory usage ? What objects are being used on this session ?
Software developed in Delphi 7 as a windows service.
PostgresSQL 8.3.6 Database with PostGis extension
Server p52a
S.O.: Red Hat Enterprise Linux AS release 4 (Nahant Update 1)
linux 2.6.9-11.EL #1 SMP ppc64 ppc64 ppc64 GNU/Linux
S.O. information
Date 29/06/2009
top - 07:58:49 up 21 days, 7:47, 1 user, load average: 0.73, 0.74, 0.71
Tasks: 131 total, 1 running, 129 sleeping, 0 stopped, 1 zombie
Cpu(s): 13.2% us, 1.3% sy, 0.0% ni, 83.1% id, 1.9% wa, 0.2% hi, 0.2% si
Mem: 4107392k total, 3764272k used, 343120k free, 24760k buffers
Swap: 2031608k total, 592k used, 2031016k free, 3522224k cached
PID USER PR NI VIRT SWAP RES SHR DATA CODE S %CPU %MEM TIME+ COMMAND
9943 postgres 15 0 860m 41m 819m 811m 9604 3540 D 88.3 20.4 0:08.33 postgres: dbtest test 10.255.100.73(4796) SELECT
32731 postgres 16 0 854m 741m 112m 109m 3880 3540 S 12.9 2.8 11:52.47 postgres: dbtest test 10.255.100.65(57470) idle
Date 29/06/2009
top - 10:37:11 up 21 days, 10:25, 1 user, load average: 1.50, 1.60, 1.46
Tasks: 130 total, 3 running, 126 sleeping, 0 stopped, 1 zombie
Cpu(s): 13.3% us, 1.2% sy, 0.0% ni, 84.4% id, 0.7% wa, 0.2% hi, 0.2% si
Mem: 4107392k total, 4103184k used, 4208k free, 49036k buffers
Swap: 2031608k total, 592k used, 2031016k free, 3698156k cached
PID USER PR NI VIRT SWAP RES SHR DATA CODE S %CPU %MEM TIME+ COMMAND
9943 postgres 15 0 994m 33m 960m 818m 143m 3540 S 29.5 23.9 48:19.96 postgres: dbtest test 10.255.100.73(4796) idle
32731 postgres 16 0 854m 666m 188m 184m 3888 3540 R 25.5 4.7 25:03.44 postgres: dbtest test 10.255.100.65(57470) PARSE
Date 29/06/2009
top - 19:05:03 up 21 days, 18:53, 1 user, load average: 0.95, 0.91, 0.90
Tasks: 131 total, 1 running, 129 sleeping, 0 stopped, 1 zombie
Cpu(s): 9.2% us, 0.5% sy, 0.0% ni, 88.7% id, 1.2% wa, 0.3% hi, 0.2% si
Mem: 4107392k total, 4094680k used, 12712k free, 18320k buffers
Swap: 2031608k total, 592k used, 2031016k free, 3331036k cached
PID USER PR NI VIRT RES SHR CODE DATA S %CPU %MEM TIME+ COMMAND
9943 postgres 16 0 1366m 1.3g 818m 3540 515m S 31.2 33.2 192:20.61 postgres: dbtest test 10.255.100.73(4796) SELECT
32731 postgres 16 0 853m 305m 302m 3540 3176 S 0.0 7.6 47:38.95 postgres: dbtest test 10.255.100.65(57470) idle
postgresql.conf information:
name | setting | unit
---------------------------------+--------------------------------------+------
archive_mode | on |
autovacuum_analyze_scale_factor | 0.4 |
autovacuum_analyze_threshold | 500 |
autovacuum_vacuum_threshold | 1000 |
checkpoint_segments | 15 |
checkpoint_timeout | 1800 | s
default_statistics_target | 50 |
effective_cache_size | 249600 | 8kB
fsync | on |
logging_collector | on |
maintenance_work_mem | 409600 | kB
max_connections | 100 |
max_fsm_pages | 3458000 |
shared_buffers | 64000 | 8kB
wal_buffers | 100 | 8kB
work_mem | 5120 | kB
I have a software developed in Delphi as a Windows Service, but, i don't know why, it consumns an unexpected large system memory (515m).
The service access PostgresSQL by ODBC driver (psqlodbc_08_03_0400) and it consist simply of a loop calling a procedure PL/PGSQL. How to discover what is causing or why this high memory usage ? What objects are being used on this session ?
Software developed in Delphi 7 as a windows service.
PostgresSQL 8.3.6 Database with PostGis extension
Server p52a
S.O.: Red Hat Enterprise Linux AS release 4 (Nahant Update 1)
linux 2.6.9-11.EL #1 SMP ppc64 ppc64 ppc64 GNU/Linux
S.O. information
Date 29/06/2009
top - 07:58:49 up 21 days, 7:47, 1 user, load average: 0.73, 0.74, 0.71
Tasks: 131 total, 1 running, 129 sleeping, 0 stopped, 1 zombie
Cpu(s): 13.2% us, 1.3% sy, 0.0% ni, 83.1% id, 1.9% wa, 0.2% hi, 0.2% si
Mem: 4107392k total, 3764272k used, 343120k free, 24760k buffers
Swap: 2031608k total, 592k used, 2031016k free, 3522224k cached
PID USER PR NI VIRT SWAP RES SHR DATA CODE S %CPU %MEM TIME+ COMMAND
9943 postgres 15 0 860m 41m 819m 811m 9604 3540 D 88.3 20.4 0:08.33 postgres: dbtest test 10.255.100.73(4796) SELECT
32731 postgres 16 0 854m 741m 112m 109m 3880 3540 S 12.9 2.8 11:52.47 postgres: dbtest test 10.255.100.65(57470) idle
Date 29/06/2009
top - 10:37:11 up 21 days, 10:25, 1 user, load average: 1.50, 1.60, 1.46
Tasks: 130 total, 3 running, 126 sleeping, 0 stopped, 1 zombie
Cpu(s): 13.3% us, 1.2% sy, 0.0% ni, 84.4% id, 0.7% wa, 0.2% hi, 0.2% si
Mem: 4107392k total, 4103184k used, 4208k free, 49036k buffers
Swap: 2031608k total, 592k used, 2031016k free, 3698156k cached
PID USER PR NI VIRT SWAP RES SHR DATA CODE S %CPU %MEM TIME+ COMMAND
9943 postgres 15 0 994m 33m 960m 818m 143m 3540 S 29.5 23.9 48:19.96 postgres: dbtest test 10.255.100.73(4796) idle
32731 postgres 16 0 854m 666m 188m 184m 3888 3540 R 25.5 4.7 25:03.44 postgres: dbtest test 10.255.100.65(57470) PARSE
Date 29/06/2009
top - 19:05:03 up 21 days, 18:53, 1 user, load average: 0.95, 0.91, 0.90
Tasks: 131 total, 1 running, 129 sleeping, 0 stopped, 1 zombie
Cpu(s): 9.2% us, 0.5% sy, 0.0% ni, 88.7% id, 1.2% wa, 0.3% hi, 0.2% si
Mem: 4107392k total, 4094680k used, 12712k free, 18320k buffers
Swap: 2031608k total, 592k used, 2031016k free, 3331036k cached
PID USER PR NI VIRT RES SHR CODE DATA S %CPU %MEM TIME+ COMMAND
9943 postgres 16 0 1366m 1.3g 818m 3540 515m S 31.2 33.2 192:20.61 postgres: dbtest test 10.255.100.73(4796) SELECT
32731 postgres 16 0 853m 305m 302m 3540 3176 S 0.0 7.6 47:38.95 postgres: dbtest test 10.255.100.65(57470) idle
As shown in column DATA(PID 9943) on 07:58:49 and on 19:05:03(515m) been a significant increase in the consumption of memory.
postgresql.conf information:
name | setting | unit
---------------------------------+--------------------------------------+------
archive_mode | on |
autovacuum_analyze_scale_factor | 0.4 |
autovacuum_analyze_threshold | 500 |
autovacuum_vacuum_threshold | 1000 |
checkpoint_segments | 15 |
checkpoint_timeout | 1800 | s
default_statistics_target | 50 |
effective_cache_size | 249600 | 8kB
fsync | on |
logging_collector | on |
maintenance_work_mem | 409600 | kB
max_connections | 100 |
max_fsm_pages | 3458000 |
shared_buffers | 64000 | 8kB
wal_buffers | 100 | 8kB
work_mem | 5120 | kB