AllocSetAlloc() error message

Started by Medi Montaseriabout 23 years ago4 messagesgeneral
Jump to latest
#1Medi Montaseri
medi.montaseri@intransa.com

Can someone shed some light on this error message for me (please).
This is a 7.2.3 debug level 2 output, and my config is

2003-02-06 16:15:44 [645] ERROR: Memory exhausted in
AllocSetAlloc(1073741820)

vacuum_mem = 1048576 # 1 Meg

Based on the source code src/backend/utils/mmgr/aset.c this is more like
a warning than an error.

/opt/intransa/postgresql/bin/postmaster child[645]: starting with
(postgres -d2 -v131072 -p storageprocessor )
2003-02-06 16:15:44 [645] DEBUG: InitPostgres
2003-02-06 16:15:44 [645] DEBUG: StartTransactionCommand
2003-02-06 16:15:44 [645] DEBUG: query: VACUUM ANALYZE
2003-02-06 16:15:44 [645] DEBUG: ProcessUtility: VACUUM ANALYZE
2003-02-06 16:15:44 [645] DEBUG: --Relation pg_type--
TopMemoryContext: 24600 total in 3 blocks; 16520 free (5 chunks); 8080 used
TopTransactionContext: 8192 total in 1 blocks; 8176 free (0 chunks); 16 used
DeferredTriggerXact: 0 total in 0 blocks; 0 free (0 chunks); 0 used
TransactionCommandContext: 8192 total in 1 blocks; 8080 free (14
chunks); 112 used
QueryContext: 8192 total in 1 blocks; 7504 free (1 chunks); 688 used
Vacuum: 8192 total in 1 blocks; 6736 free (0 chunks); 1456 used
DeferredTriggerSession: 0 total in 0 blocks; 0 free (0 chunks); 0 used
PortalMemory: 8192 total in 1 blocks; 8176 free (0 chunks); 16 used
CacheMemoryContext: 253952 total in 5 blocks; 82264 free (10 chunks);
171688 used
pg_type_typname_index: 1024 total in 1 blocks; 680 free (0 chunks); 344 used
pg_type_oid_index: 1024 total in 1 blocks; 680 free (0 chunks); 344 used
pg_index_indrelid_index: 1024 total in 1 blocks; 680 free (0 chunks);
344 used
pg_shadow_usesysid_index: 1024 total in 1 blocks; 680 free (0 chunks);
344 used
pg_shadow_usename_index: 1024 total in 1 blocks; 680 free (0 chunks);
344 used
pg_trigger_tgrelid_index: 1024 total in 1 blocks; 680 free (0 chunks);
344 used
pg_class_oid_index: 1024 total in 1 blocks; 680 free (0 chunks); 344 used
pg_amop_opc_strategy_index: 1024 total in 1 blocks; 392 free (0 chunks);
632 used
pg_amproc_opc_procnum_index: 1024 total in 1 blocks; 392 free (0
chunks); 632 used
pg_class_relname_index: 1024 total in 1 blocks; 680 free (0 chunks); 344
used
pg_operator_oid_index: 1024 total in 1 blocks; 680 free (0 chunks); 344 used
pg_index_indexrelid_index: 1024 total in 1 blocks; 680 free (0 chunks);
344 used
pg_attribute_relid_attnum_index: 1024 total in 1 blocks; 392 free (0
chunks); 632 used
MdSmgr: 8192 total in 1 blocks; 6120 free (0 chunks); 2072 used
DynaHash: 8192 total in 1 blocks; 7216 free (0 chunks); 976 used
DynaHashTable: 8192 total in 1 blocks; 6112 free (0 chunks); 2080 used
DynaHashTable: 8192 total in 1 blocks; 4560 free (0 chunks); 3632 used
DynaHashTable: 8192 total in 1 blocks; 4560 free (0 chunks); 3632 used
DynaHashTable: 8192 total in 1 blocks; 3024 free (0 chunks); 5168 used
DynaHashTable: 8192 total in 1 blocks; 8176 free (0 chunks); 16 used
DynaHashTable: 8192 total in 1 blocks; 8176 free (0 chunks); 16 used
DynaHashTable: 8192 total in 1 blocks; 8176 free (0 chunks); 16 used
DynaHashTable: 8192 total in 1 blocks; 8176 free (0 chunks); 16 used
DynaHashTable: 8192 total in 1 blocks; 8176 free (0 chunks); 16 used
ErrorContext: 8192 total in 1 blocks; 8176 free (0 chunks); 16 used
2003-02-06 16:15:44 [645] ERROR: Memory exhausted in
AllocSetAlloc(1073741820)
2003-02-06 16:15:44 [645] DEBUG: AbortCurrentTransaction
2003-02-06 16:15:44 [645] DEBUG: proc_exit(0)
2003-02-06 16:15:44 [645] DEBUG: shmem_exit(0)
2003-02-06 16:15:44 [645] DEBUG: exit(0)
2003-02-06 16:15:44 [3843] DEBUG: StartTransactionCommand
2003-02-06 16:15:44 [3843] DEBUG: query: SELECT count(*) from AlertsTable
2003-02-06 16:15:44 [3843] DEBUG: ProcessQuery
2003-02-06 16:15:44 [3808] DEBUG: reaping dead processes
2003-02-06 16:15:44 [3808] DEBUG: child process (pid 645) exited with
exit code 0
2003-02-06 16:15:44 [3843] DEBUG: CommitTransactionCommand
2003-02-06 16:15:44 [3843] DEBUG: StartTransactionCommand
2003-02-06 16:15:44 [3843] DEBUG: query: INSERT INTO AlertsTable
VALUES ('00:06:5B:0F:40

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Medi Montaseri (#1)
Re: AllocSetAlloc() error message

Medi Montaseri <medi.montaseri@intransa.com> writes:

Can someone shed some light on this error message for me (please).
This is a 7.2.3 debug level 2 output, and my config is

2003-02-06 16:15:44 [645] ERROR: Memory exhausted in
AllocSetAlloc(1073741820)

I think this is a corrupt-data problem: you've probably got a
variable-length datum whose length word is munged to look like a
ridicuously large value. You should be scanning the table to see
where the bad data is.

regards, tom lane

#3Medi Montaseri
medi.montaseri@intransa.com
In reply to: Medi Montaseri (#1)
Re: AllocSetAlloc() error message

Should I be looking for an exsessively large table or column ?
Most (99%) of my tables are text fields, but small values (less than
1024 bytes)....
Perhaps I should dump the data and go after it with a perl script....

Also this happend around a VACUUM-ing job....is there any relation there ?
Also should I drop my other work and chase this or this is more of
warning than an error....

Thanks

Tom Lane wrote:

Show quoted text

Medi Montaseri <medi.montaseri@intransa.com> writes:

Can someone shed some light on this error message for me (please).
This is a 7.2.3 debug level 2 output, and my config is

2003-02-06 16:15:44 [645] ERROR: Memory exhausted in
AllocSetAlloc(1073741820)

I think this is a corrupt-data problem: you've probably got a
variable-length datum whose length word is munged to look like a
ridicuously large value. You should be scanning the table to see
where the bad data is.

regards, tom lane

#4Tom Lane
tgl@sss.pgh.pa.us
In reply to: Medi Montaseri (#3)
Re: AllocSetAlloc() error message

Medi Montaseri <medi.montaseri@intransa.com> writes:

Also this happend around a VACUUM-ing job....is there any relation there ?

Who knows?

Also should I drop my other work and chase this or this is more of
warning than an error....

Corrupt data in a system catalog sounds like a sign of impending doom
to me. I'd suggest taking it seriously...

regards, tom lane