Alexaki Sofia <alexaki@ics.forth.gr> writes:
> My application creates transactions consisting of about 3000
> updates operations ('insert into table' and 'create table').
> My database consists of a huge (200000) number of tables which
> form a hierarchy.
> The postmaster throws the following error massage
>> NOTICE: ShmemAlloc: out of memory
>> FATAL 1: LockAcquire: lock table 1 is corrupted
You could try increasing the NLOCKS_PER_XACT space-estimation parameter
in src/include/storage/lock.h. However, I'd advise rethinking your
database design instead. 200000 tables will incur all sorts of
performance penalties, starting with long Unix directory search times.
You'll be much better off if you put the same data into fewer tables
(probably with more columns).
regards, tom lane