max_connections, solaris semaphores and initdb - Mailing list pgsql-novice

From Isaac Vetter
Subject max_connections, solaris semaphores and initdb
Date
Msg-id 4787A28B.3060309@math.purdue.edu
Whole thread Raw
Responses Re: max_connections, solaris semaphores and initdb  (Tom Lane <tgl@sss.pgh.pa.us>)
Re: max_connections, solaris semaphores and initdb - solved  (Isaac Vetter <ivetter@math.purdue.edu>)
List pgsql-novice
Hi pgsql experts;

I've been a little surprised at the high knowledge level of the
"novices" on this list, so if this isn't a novice question, let me know
and I'll send it to the regular list.


I'm running postgresql 7.4 on Solaris 9 and want to increase the value
of postgresql.conf's max_connections for an existing, running install.
I've edited /etc/system to what I think are more appropriate, but
definitely higher, values. Then I changed the value of max_connections
to 768; however, by watching the pg_stat_activity view and the
serverlog, connections are rejected when the number of connections
approaches 200 (with the infamous: "FATAL:  connection limit exceeded
for non-superusers" error).

I ran across a mention of initdb determining the greatest possible
number of connections according to kernerl settings. So presumably, when
postgresql is first setup, the highest value of max_connections is
decided then.

A couple questions:
0) Is this correct? Does initdb set an unchaged value that quietly
limits the high end of max_connections?

1) Is there a way to get postgresql to reset this value that determines
the maximum value of max_connections, without dumping, re-running initdb
and loading? Is there a way to see what this value is?

2) Are there any easy postgresql load testing tools? I ran across Tsung,
  but haven't had time to compile erlang. What do others do for load
testing?



Thanks,

Isaac Vetter




I had trouble finding recent example Solaris /etc/system numbers, so
I've included mine below. I'm still testing these are am not a solaris
sysadmin - ymmv.

* On an 8 gig sun4u running solaris 9
set shmsys:shminfo_shmmax=4294967295
set shmsys:shminfo_shmmin=1
set shmsys:shminfo_shmmni=512
set shmsys:shminfo_shmseg=512
*semaphores
*max # of semaphores
set semsys:seminfo_semmns=2048
*max # of semaphore sets
set semsys:seminfo_semmni=1024
*max # of semaphores per set
set semsys:seminfo_semmsl=128

Attachment

pgsql-novice by date:

Previous
From: johnf
Date:
Subject: Re: Connecting to the database server
Next
From: Tom Lane
Date:
Subject: Re: max_connections, solaris semaphores and initdb