Crash: invalid DSA memory alloc request - Mailing list pgsql-hackers

From Andreas 'ads' Scherbaum
Subject Crash: invalid DSA memory alloc request
Date
Msg-id 80a12d59-0d5e-4c54-866c-e69cd6536471@pgug.de
Whole thread Raw
List pgsql-hackers
Hello,

I'm running a couple of large tests, and in this particular test I have 
a few million tables more.

At some point it fails, and I gathered the following trace:


2024-12-12 22:22:55.307 CET [1496210] ERROR: invalid DSA memory alloc 
request size 1073741824
2024-12-12 22:22:55.307 CET [1496210] BACKTRACE:
         postgres: ads tabletest [local] CREATE TABLE(+0x15e570) 
[0x6309c379c570]
         postgres: ads tabletest [local] CREATE 
TABLE(dshash_find_or_insert+0x1a4) [0x6309c39882d4]
         postgres: ads tabletest [local] CREATE 
TABLE(pgstat_get_entry_ref+0x440) [0x6309c3b0a530]
         postgres: ads tabletest [local] CREATE 
TABLE(pgstat_prep_pending_entry+0x3a) [0x6309c3b0676a]
         postgres: ads tabletest [local] CREATE 
TABLE(pgstat_assoc_relation+0x32) [0x6309c3b086c2]
         postgres: ads tabletest [local] CREATE 
TABLE(StartReadBuffer+0x3c0) [0x6309c3ab9870]
         postgres: ads tabletest [local] CREATE 
TABLE(ReadBufferExtended+0xa1) [0x6309c3abb271]
         postgres: ads tabletest [local] CREATE TABLE(+0x2c6caa) 
[0x6309c3904caa]
         postgres: ads tabletest [local] CREATE 
TABLE(AlterSequence+0xc0) [0x6309c3905860]
         postgres: ads tabletest [local] CREATE TABLE(+0x4b6336) 
[0x6309c3af4336]
         postgres: ads tabletest [local] CREATE 
TABLE(standard_ProcessUtility+0x259) [0x6309c3af33f9]
         postgres: ads tabletest [local] CREATE TABLE(+0x4b6e64) 
[0x6309c3af4e64]
         postgres: ads tabletest [local] CREATE 
TABLE(standard_ProcessUtility+0x259) [0x6309c3af33f9]
         postgres: ads tabletest [local] CREATE TABLE(+0x4b3d2f) 
[0x6309c3af1d2f]
         postgres: ads tabletest [local] CREATE TABLE(+0x4b3e4b) 
[0x6309c3af1e4b]
         postgres: ads tabletest [local] CREATE TABLE(PortalRun+0x16f) 
[0x6309c3af226f]
         postgres: ads tabletest [local] CREATE TABLE(+0x4b06cc) 
[0x6309c3aee6cc]
         postgres: ads tabletest [local] CREATE 
TABLE(PostgresMain+0xf67) [0x6309c3aefa87]
         postgres: ads tabletest [local] CREATE TABLE(+0x4accc5) 
[0x6309c3aeacc5]
         postgres: ads tabletest [local] CREATE 
TABLE(postmaster_child_launch+0x8f) [0x6309c3a5b95f]
         postgres: ads tabletest [local] CREATE TABLE(+0x421479) 
[0x6309c3a5f479]
         postgres: ads tabletest [local] CREATE 
TABLE(PostmasterMain+0xd71) [0x6309c3a61251]
         postgres: ads tabletest [local] CREATE TABLE(main+0x207) 
[0x6309c379efc7]
         /lib/x86_64-linux-gnu/libc.so.6(+0x2a1ca) [0x710c33a2a1ca]
         /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0x8b) 
[0x710c33a2a28b]
         postgres: ads tabletest [local] CREATE TABLE(_start+0x25) 
[0x6309c379f595]
2024-12-12 22:22:55.307 CET [1496210] STATEMENT:  CREATE TABLE IF NOT 
EXISTS test_16718629 (id SERIAL PRIMARY KEY, d VARCHAR(200), e 
VARCHAR(200), f VARCHAR(200), i INTEGER, j INTEGER);


PostgreSQL Version is 17.2, compiled with debug symbols.

tabletest=# select version();
version
--------------------------------------------------------------------------------------------------
  PostgreSQL 17.2 on x86_64-pc-linux-gnu, compiled by gcc (Ubuntu 
13.2.0-23ubuntu4) 13.2.0, 64-bit
(1 row)


I'm not able to reproduce this for every DDL statement, but grouping 
together about 50 of them it fails at some point.


Regards,

-- 
                Andreas 'ads' Scherbaum
German PostgreSQL User Group
European PostgreSQL User Group - Board of Directors
Volunteer Regional Contact, Germany - PostgreSQL Project


pgsql-hackers by date:

Previous
From: Heikki Linnakangas
Date:
Subject: Re: TransactionXmin != MyProc->xmin
Next
From: Masahiko Sawada
Date:
Subject: Re: Skip collecting decoded changes of already-aborted transactions