Re: [bug report] The backend process cannot reuse VfdCache cache entries

From: Heikki Linnakangas <hlinnaka(at)iki(dot)fi>
To: dengkai <784523565(at)qq(dot)com>, pgsql-bugs <pgsql-bugs(at)lists(dot)postgresql(dot)org>
Subject: Re: [bug report] The backend process cannot reuse VfdCache cache entries
Date: 2026-05-13 13:41:40
Message-ID: 2bfc54cd-b11c-4a2e-8c9c-2e977bfd74c5@iki.fi
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

On 13/05/2026 16:06, dengkai wrote:
> Recently, in a production environment, we encountered the following SQL
> error:
> `ERROR: dn_6001_6002: dn_6011_6012: invalid memory alloc request size
> 1174405120 in fd.cpp:1094`
> Based on this error message, the database was trying to allocate a
> VfdCache of size 1174405120 bytes, which exceeds the maximum allowable
> memory space `maxCacheSize` for a single allocation.

There is no file called "fd.cpp" or variable called "maxCacheSize" in
PostgreSQL.

There is code like that in fd.c to expand the VfdCache, but it uses
realloc() for the allocation, which can go beyond the 1 GB limit.

In other words, you've hit a bug on something other than PostgreSQL.

- Heikki

In response to

Browse pgsql-bugs by date

  From Date Subject
Next Message Tom Lane 2026-05-13 13:51:39 Re: pg_get_indexdef() output not idempotent for partial indexes with ALL(ARRAY[…])::text[]
Previous Message dengkai 2026-05-13 13:06:05 [bug report] The backend process cannot reuse VfdCache cache entries