From: | Patrick Rotsaert <patrick(dot)rotsaert(at)arrowup(dot)be> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | pgsql-bugs(at)postgresql(dot)org |
Subject: | Re: BUG #2225: Backend crash -- BIG table |
Date: | 2006-01-31 15:47:12 |
Message-ID: | 43DF8680.7020109@arrowup.be |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
on 31/01/2006 16:18 Tom Lane wrote :
>"Patrick Rotsaert" <patrick(dot)rotsaert(at)arrowup(dot)be> writes:
>
>
>>At the time of the crash, the server logs:
>> LOG: server process (PID 21815) was terminated by signal 9
>>
>>
>
>You're running on a Linux machine with memory overcommit enabled.
>Turn that off, or nothing will ever work very reliably --- the OOM
>killer is entirely capable of zapping innocent processes that have
>nothing to do with the one eating too much memory; and even when it
>kills the right process, "kill -9" is not IMHO an acceptable way for
>the system to tell a process it can't have any more memory. See
>http://www.postgresql.org/docs/8.1/static/kernel-resources.html#AEN18105
>
> regards, tom lane
>
>
Syslog indeed shows:
kernel: Out of Memory: Killed process 21815 (postmaster).
Looking at the kernel source mm/mmap.c, the function `int
vm_enough_memory(long pages)' does 1 simple test:
/* Sometimes we want to use more memory than we have. */
if (sysctl_overcommit_memory)
return 1;
But /proc/sys/vm/overcommit_memory reads `0', so my guess is that
overcommit is not enabled... right?
Any hints?
Thanks,
Patrick Rotsaert
From | Date | Subject | |
---|---|---|---|
Next Message | Philipp Reisner | 2006-01-31 15:47:30 | Fwd: Re: Endless loop in ExecNestLoop |
Previous Message | Tom Lane | 2006-01-31 15:39:58 | Re: Endless loop in ExecNestLoop |