[ic] slow performance problems: Setting processes per-user limits for daemons (such as postgres, interchange, etc.)

Dan Browning danb@cyclonecomputers.com
Wed, 13 Sep 2000 18:02:56 -0700


How do I set maximum number of concurrent processes for users that run
daemons, such as postgreSQL (under postgres user), or interchange, or mysql,
or anything for that matter.  limits.conf edits by themselves don't work.

I found in performance testing that my system would lock up under a light
load (400 concurrent HTTP GET's or so) because "Could not Fork" errors.  And
`top` showed I never got much more than 510 processes running.

I've been successful in creating a user (test), then setting it's
performance limits (/etc/security/limits.conf), and ALSO setting
/etc/pam.d/login with a "session    required
/lib/security/pam_limits.so".  But when I perform the same steps for
postgres, (I even tried making a /etc/pam.d/postgresql file) it doesn't have
any effect.

I've tried all the docs that I know, can anyone give me the magic
combination to increase my 256 processes-per-user dilemma that applies to
daemons?

I know that Oracle avoids the problem all together and just has you run it's
osh program (which is suid root) and that sets ulimits.

I'm using rh62 on a dual Zeon, raid0/1 on 6 ultra160 cheetahs, and 1gb ram.

Thanks for any help,

Dan Browning
Network & Database Administrator
Cyclone Computer Systems