Re: Out of Memory - 8.2.4 - Mailing list pgsql-general

From Marko Kreen
Subject Re: Out of Memory - 8.2.4
Date
Msg-id e51f66da0708281433n53edc7cbu93ae45f4d35feda4@mail.gmail.com
Whole thread Raw
In response to Out of Memory - 8.2.4  (Jeff Amiel <becauseimjeff@yahoo.com>)
Responses Re: Out of Memory - 8.2.4  (Erik Jones <erik@myemma.com>)
Re: Out of Memory - 8.2.4  (Alvaro Herrera <alvherre@commandprompt.com>)
List pgsql-general
On 8/24/07, Jeff Amiel <becauseimjeff@yahoo.com> wrote:
> Over last 2 days, have spotted 10 "Out of Memory"
> errors in postgres logs (never saw before with same
> app/usage patterns on tuned hardware/postgres under
> FreeBSD)
>
> Aug 22 18:08:24 db-1 postgres[16452]: [ID 748848
> local0.warning] [6-1] 2007-08-22 18:08:24 CDT   ERROR:
>  out of memory.
> Aug 22 18:08:24 db-1 postgres[16452]: [ID 748848
> local0.warning] [6-2] 2007-08-22 18:08:24 CDT
> DETAIL:  Failed on request of size 536870910.
>
> What I found interesting is that It's ALWAYS the same
> size....536870910
>
> I am running autovacuum and slony.....but I see
> nothing in the logs anywhere near the "out of memory"
> errors related to either (autovacuum used to under
> 8.0.X log INFO messages every time it vacuumed which
> came in handy...I assume it doesn't so this any more?)
>
>
> The events are fairly spread out...and cannot (by
> looking at app logs and rest of DB logs) correlate to
> any specific query or activity.
>
> Any help would be appreciated

I've experienced something similar.  The reason turned out to be
combination of overcommit=off, big maint_mem and several parallel
vacuums for fast-changing tables.  Seems like VACUUM allocates
full maint_mem before start, whatever the actual size of the table.

Fix was to put "set maint_mem=32M" before small vacuums and
serialize some of them.

--
marko

pgsql-general by date:

Previous
From: Ralph Smith
Date:
Subject: Install on 32 or 64 bit Linux?
Next
From: Wei Weng
Date:
Subject: Is there a better way to do this?