Thread: pgsql: Fix oversight in sizing of shared buffer lookup hashtable.

pgsql: Fix oversight in sizing of shared buffer lookup hashtable.

From
tgl@postgresql.org (Tom Lane)
Date:
Log Message:
-----------
Fix oversight in sizing of shared buffer lookup hashtable.  Because
BufferAlloc tries to insert a new mapping entry before deleting the old one
for a buffer, we have a transient need for more than NBuffers entries ---
one more in 8.1, and as many as NUM_BUFFER_PARTITIONS more in CVS HEAD.
In theory this could lead to an "out of shared memory" failure if shmem
had already been completely claimed by the time the extra entries were
needed.

Modified Files:
--------------
    pgsql/src/backend/storage/buffer:
        freelist.c (r1.55 -> r1.56)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/storage/buffer/freelist.c.diff?r1=1.55&r2=1.56)