SEMMAP - Mailing list pgsql-general

From Paul
Subject SEMMAP
Date
Msg-id 3C85C82F@operamail.com
Whole thread Raw
Responses Re: SEMMAP  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-general
Hi all,

From reading
http://developer.postgresql.org/docs/postgres/kernel-resources.html
there is the paragraph:

======
In some cases it might also turn out to be necessary to increase SEMMAP to be
at least on the order of SEMMNS. This parameter defines the size of the
semaphore resource map, in which each contiguous block of available semaphores
needs an entry. When a semaphore set is freed it is either added to an
existing entry that is adjacent to the freed block or it is registered under a
new map entry. If the map is full, the freed semaphores get lost (until
reboot). Fragmentation of the semaphore space could therefore over time lead
to less available semaphores than there should be.
======

What does "on the order of" mean in this context? In the example for Solaris
(which I am also using) further down the page it has a SEMMAP of 50% of
SEMMNS. Is it appropriate for me to maintain this ratio in order to prevent me
running out of map space over time as that paragraph mentions.

FWIW my /etc/system currently contains:
======
set shmsys:shminfo_shmmax=805306380
set shmsys:shminfo_shmmin=1
set shmsys:shminfo_shmmni=600
set shmsys:shminfo_shmseg=300
set semsys:seminfo_semmap=400
set semsys:seminfo_semmni=600
set semsys:seminfo_semmsl=600
set semsys:seminfo_semmns=800
======
The server has a gig of memory.
I currently have shared_buffers set to 64000
and max_connections set to 600.

Thanks for any advice.

Paul


pgsql-general by date:

Previous
From: Karel Zak
Date:
Subject: Re: timespan_part()?
Next
From: Denis Perchine
Date:
Subject: Index on timestamp field, and now()