Re: ERROR: invalid memory alloc request size 1073741824

From: Tomas Vondra <tomas(dot)vondra(at)2ndquadrant(dot)com>
To: Stefan Blanke <stefan(dot)blanke(at)framestore(dot)com>, pgsql-general(at)lists(dot)postgresql(dot)org
Subject: Re: ERROR: invalid memory alloc request size 1073741824
Date: 2018-01-30 20:56:46
Message-ID: adeac677-a41f-abfe-60c1-5ac9a862e2ff@2ndquadrant.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general


On 01/30/2018 06:35 PM, Stefan Blanke wrote:
> Hello,
>
> We've tripped over an error when doing a "COPY.. TO STDOUT WITH BINARY"
> query.
>
> "ERROR:  invalid memory alloc request size 1073741824"
> (exactly 1GB)
>
> So a palloc() call is failing on the AllocSizeIsValid() check.
>
> Does anyone know if this a safety catch we are tripping with a bad
> query - or whether this check is something that should never be hit
> (i.e. a bug).
>

That very much depends on where exactly the failure happens - it might
be both (or relying on an assumption that changed over). It's not clear
if it fails during query execution or formatting the output (I seem to
remember there were/are issues with rows containing multiple large bytea
values, for example).

Can you attach gdb to the backend, set breakpoint on that elog and share
the backtrace? Then we can investigate further.

In case you don't have experience with doing that, here's a howto on the
community wiki:

https://wiki.postgresql.org/wiki/Getting_a_stack_trace_of_a_running_PostgreSQL_backend_on_Linux/BSD

> This has been some discussion before about making a change before the
> 9.5beta1:
>
> https://www.postgresql.org/message-id/flat/9A28C8860F777E439AA12E8AEA7694F8010F6F3F%40BPXM15GP.gisp.nec.co.jp
>
> https://www.postgresql.org/message-id/flat/CAKJS1f_sxPyBHF6%3DnEYwPJdKKDNjVDP91b_EJApfyGTei%3DViDw%40mail.gmail.com
>

Both of those threads are about a hashjoin issue, which should have been
fixed in 9.5. Moreover, you haven't shared the query and it's query
plan, so it's unclear if it's doing hash joins at all. That would be
useful for investigating this issue, BTW.

>
> postgresql 9.5.4 (2PGDG.rhel6)
> work_mem = 256MB
>

FWIW you're missing more than a year of bugfixes

regards

--
Tomas Vondra http://www.2ndQuadrant.com
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Jan Wieck 2018-01-30 21:43:50 Re: ERROR: invalid memory alloc request size 1073741824
Previous Message Ibrahim Edib Kokdemir 2018-01-30 18:38:23 Re: Streaming replication: replicant server not starting (9.4.4, Win 2008)