Join query including two generate_series calls causes big memory growth and crash - Mailing list pgsql-general

From Jorge Arévalo
Subject Join query including two generate_series calls causes big memory growth and crash
Date
Msg-id BANLkTikhe6ugUV9BzDZ9pfHw=-8k+w4Acg@mail.gmail.com
Whole thread Raw
Responses Re: Join query including two generate_series calls causes big memory growth and crash
Re: Join query including two generate_series calls causes big memory growth and crash
List pgsql-general
Hello,

I'm executing this query:

SELECT x, y, another_field FROM generate_series(1, 10) x,
generate_series(1, 10) y, my_table

The field 'another_field' belongs to 'my_table'. And that table has
360000 entries. In a 64 bits machine, with 4GB RAM, Ubuntu 10.10 and
postgres 8.4.7, the query works fine. But in a 32 bits machine, with
1GB RAM, Ubuntu 9.10 and postgres 8.4.7, the query process is killed
after taking about 80% of available memory. In the 64 bits machine the
query takes about 60-70% of the available memory too, but it ends.
And this happens even if I simply get x and y:

SELECT x, y FROM generate_series(1, 10) x, generate_series(1, 10) y, my_table

Is it normal? I mean, postgres has to deal with millions of rows, ok,
but shouldn't it start swapping memory instead of crashing? Is a
question of postgres configuration?

Thanks in advance,

--
Jorge Arévalo
Internet & Mobilty Division, DEIMOS
jorge.arevalo@deimos-space.com
http://es.linkedin.com/in/jorgearevalo80
http://mobility.grupodeimos.com/
http://gis4free.wordpress.com
http://geohash.org/ezjqgrgzz0g

pgsql-general by date:

Previous
From: raghu ram
Date:
Subject: Re: How to uninstall PostgreSQL 8.4 on both Windows XP and Windows 7
Next
From: Tom Lane
Date:
Subject: Re: Join query including two generate_series calls causes big memory growth and crash