From: | Kevin Grittner <kgrittn(at)gmail(dot)com> |
---|---|
To: | jobinau(at)gmail(dot)com |
Cc: | "pgsql-docs(at)postgresql(dot)org" <pgsql-docs(at)postgresql(dot)org> |
Subject: | Re: Regarding Overcommit |
Date: | 2016-06-13 18:59:31 |
Message-ID: | CACjxUsO=mafOYpMm+nf7q7-=rMKMieP6-m0f3wbKui+yPEN05Q@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-docs |
On Mon, Jun 13, 2016 at 2:00 AM, <jobinau(at)gmail(dot)com> wrote:
> Documentation says:
>
> sysctl -w vm.overcommit_memory=2
>
> "it will lower the chances significantly and will therefore lead to more
> robust system behavior."
>
> This statement in documentation is Wrong.
>
> This is not recommended for production environments, because if an
> out-of-memory condition does present itself, there could be unexpected
> behavior.
It is wrong for some types of production environments, but for a
server where the only (or primary) service is PostgreSQL it is
absolutely Right. Without this, an out-of-memory condition which
cancels any database process causes a crash and restart of all
connections without necessarily giving any useful clues as to the
cause of the crash. With vm.overcommit_memory = 2 it will
generally yield an error on only the one connection causing the
problem, and provide a detailed dump of memory contexts (with
allocated space in each). Other connections are generally
unaffected and the cause of the problem can be fixed to prevent
recurrence.
--
Kevin Grittner
EDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company
From | Date | Subject | |
---|---|---|---|
Next Message | murugan.chelliah.ext | 2016-06-14 12:12:57 | gamke error -postgres9.4.5 |
Previous Message | Peter Eisentraut | 2016-06-13 14:16:31 | Re: Misleading text mesage |