Re: how to avoid that a postgres session eats up all the memory - Mailing list pgsql-general

From Clemens Schwaighofer
Subject Re: how to avoid that a postgres session eats up all the memory
Date
Msg-id 497907A7.5020807@tequila.jp
Whole thread Raw
In response to Re: how to avoid that a postgres session eats up all the memory  (Richard Huxton <dev@archonet.com>)
Responses Re: how to avoid that a postgres session eats up all the memory  (Richard Huxton <dev@archonet.com>)
List pgsql-general
On 01/22/2009 07:11 PM, Richard Huxton wrote:
> Clemens Schwaighofer wrote:
>> Hi,
>>
>> I just literally trashed my test server with one delete statement
>> because the psql used up all its memory and started to swap like crazy.
>>
>> my delete looked like this
>>
>> DELETE FROM table_foo WHERE bar_id IN (SELECT DISTINCT bar_id FROM bar
>> LEFT JOIN ... LEFT JOIN ... LEFT JOIN .... WHERE  table.bar_id IS NULL
>> AND ...)
>
> Is it your psql client or PostgreSQL backend that used up all the
> memory? I can't see how a DELETE can use up memory in psql.

psql used up all my physical memory. I didn't thought so too, but I
learned something new. a DELETE can use up all my memeory.

>
>> so basically it runs a select to see what entries do not have any
>> reference data and then should delete them all.
>>
>> Now, my question is. How can I setup postgres to not use up all the
>> memory and then make the server useless. How can I set it up, so it dies
>> with "out of memory" before I have to restart the server.
>
> You shouldn't need to restart the server at all - what operating system
> are you running?

i run Linux, Debian/Testing with a 2.6.25.1 kernel. And once he started
to swap, or whatever, the load skyrocketed (last was 78) and I couldn't
do anything.

> What memory settings are you using? How much RAM do you have? How much
> do you want to keep for other applications?

As this is just a test/development box, I have no special settings.

shared_buffers = 24MB
max_fsm_pages = 153600

The server itself has 1GB of memory.

All I want, is that psql client does not use up all the memory and make
the system unresponsive.

--
[ Clemens Schwaighofer                      -----=====:::::~ ]
[ IT Engineer/Web Producer/Planning/Manager                  ]
[ E-Graphics Communications SP Digital                       ]
[                6-17-2 Ginza Chuo-ku, Tokyo 104-8167, JAPAN ]
[ Tel: +81-(0)3-3545-7706            Fax: +81-(0)3-3545-7343 ]
[ http://www.e-gra.co.jp                                     ]

Attachment

pgsql-general by date:

Previous
From: Ivan Sergio Borgonovo
Date:
Subject: very long update gin index troubles back?
Next
From: Clemens Schwaighofer
Date:
Subject: Re: how to avoid that a postgres session eats up all the memory