[postgis-users] Strange cpu hogs

Markus Schaber schabios at logi-track.com
Thu May 27 10:44:09 PDT 2004


Hi,

We currently drive some test benches that shuffle around 30 thousand
rows of data from one database through a java application into another
database.

Now, during a normal test run, the "input" postmaster has about 5-10%
CPU time (select and delete on a non-gis table), the java app has abut
5-20 CPU time, and the "output" postmaster (inserts and updates in
several PostGIS-enabled tables) has about 30-50% CPU. (the rest is
waiting for I/O, and kernel.)

But about every fifth run or so, the "output" postmaster uses about
90-97% CPU, and the whole test run needs 10-15 times as long as the
normal runs. 

This seems to be a problem of the specific postmaster process - when I
run several test cycles using the same connection, all of them suffer.
As soon as I restart postmaster or my app, or even a sql reconnect
changes the behaviour.

It is reproducable on two different machines, they have the following
data:

logigis=# select version();
 PostgreSQL 7.4.2 on i386-pc-linux-gnu, compiled by GCC i386-linux-gcc
 (GCC) 3.3.3 (Debian 20040321)
select postgis_version()
 0.8 USE_GEOS=1 USE_PROJ=1 USE_STATS=1
logigis=# \!uname -a
 Linux kingfisher 2.6.4-mm2-uli #4 Tue Mar 16 13:08:57 CET 2004 i686
 GNU/Linux

logigis=# select version(); 
 PostgreSQL 7.4.1 on ia64-unknown-linux-gnu, compiled by GCC
 ia64-linux-gcc (GCC) 3.3.3 20040125 (prerelease) (Debian)
logigis=# select postgis_version();
 0.8 USE_GEOS=1 USE_PROJ=1 USE_STATS=1
logigis=# \!uname -a
 Linux skate 2.6.6 #3 SMP Fri May 21 17:32:28 CEST 2004 ia64 GNU/Linux

As far as I saw it, the IA64-Machine seems to show this behavior more
frequently compared to the ia32 machine.

Has anyone else seen this behaviour?

Thanks,
Markus

-- 
markus schaber | dipl. informatiker
logi-track ag | rennweg 14-16 | ch 8001 zürich
phone +41-43-888 62 52 | fax +41-43-888 62 53
mailto:schabios at logi-track.com | www.logi-track.com



More information about the postgis-users mailing list