problems obtaining semaphores

Post Reply
jsoltys
Posts: 14
Joined: Wed Feb 06, 2002 6:54 pm

problems obtaining semaphores

Post by jsoltys »

I've got a Solaris 2.7 box that has five different databases on it, all accessed from the web. During high traffic periods we receive errors from all the apps stating that they could not obtain semaphores thanks to Unix.

We've tried increasing the max semaphore limit several times which helps for a while, but then the problem returns.

Here are the relevant settings from /etc/system:

set semsys:seminfo_semmap = 20
set semsys:seminfo_semmni = 20
set semsys:seminfo_semmns = 500
set semsys:seminfo_semmnu = 60

Here's the version info for the texis executable:

Texis Web Script (Vortex) Copyright (c) 1996-1999 Thunderstone - EPI, Inc.
Commercial Version 3.0.944239433 of Dec 3, 1999 (sparc-sun-solaris2.6)

And finally here's the license info that includes some usage stats:

Current time is: Jun 3 2002 00:00:00 PDT
Init since boot: May 2 2002 17:15:25 PDT
License created: May 6 2002 11:35:01 PDT
License expires: never
License verified: Jun 2 2002 10:11:35 PDT
Serial number: xxx
Current hits a day: 33,292 since Jun 2 2002 11:42:58 PDT
Maximum hits a day: 100,000
Current table rows: 190,646
Maximum table rows: 1,000,000
Current table size: 808,257,524
Maximum table size: unlimited
Current database rows: 0
Maximum database rows: unlimited
Current database size: 808,800,608
Maximum database size: unlimited
Current total rows: 207,979
Maximum total rows: unlimited
Current total size: 828,818,722
Maximum total size: unlimited
Flags: Non-intranetable Ignore violations
Vortex flags: Texis name Environment check Comment (c) Web server
Monitor process: pid 2292
Highest concurrent users since init: 97 at May 20 2002 10:56:47 PDT
Concurrent users in the past minute: 17

Defaults

Equivs path: builtin
User equivs: /usr/local/morph3/eqvsusr
Vortex log: /usr/local/morph3/texis/vortex.log
Database: /usr/local/morph3/texis/testdb
Vortex script: /usr/local/morph3/texis/testdb/index

This is the semaphore portion from ipcs -a. There appear to be a bunch of stale semaphores in here, but we can't figure out where they are coming from.

Semaphores:
s 2424832 0x4f006f80 --ra-ra-ra- netscape other netscape other 25 10:55:01 18:40:01
s 524289 0 --ra-ra-ra- root siteadm root siteadm 1 10:55:01 9:45:07
s 4128770 0 --ra-ra-ra- netscape siteadm netscape siteadm 1 20:32:54 20:29:54
s 1441795 0 --ra-ra-ra- netscape siteadm netscape siteadm 1 10:55:01 10:53:59
s 95354884 0 --ra-ra-ra- netscape siteadm netscape siteadm 1 20:32:58 20:30:08
s 41877509 0 --ra-ra-ra- netscape siteadm netscape siteadm 1 20:32:59 20:31:59
s 25886726 0 --ra-ra-ra- netscape siteadm netscape siteadm 1 20:33:01 20:29:01
s 47972359 0 --ra-ra-ra- netscape siteadm netscape siteadm 1 20:32:59 20:22:29
s 14417928 0 --ra-ra-ra- netscape siteadm netscape siteadm 1 20:32:53 20:31:43
s 29425673 0 --ra-ra-ra- netscape siteadm netscape siteadm 1 20:32:58 20:31:18
s 46137354 0 --ra-ra-ra- root siteadm root siteadm 1 21:47:56 21:43:42
s 76546059 0 --ra-ra-ra- netscape siteadm netscape siteadm 1 10:55:01 10:53:56
s 77660172 0 --ra-ra-ra- netscape siteadm netscape siteadm 1 20:32:55 20:31:45
s 30998541 0 --ra-ra-ra- netscape siteadm netscape siteadm 1 10:55:01 10:31:52
s 13369358 0 --ra-ra-ra- netscape siteadm netscape siteadm 1 10:54:55 10:41:13
User avatar
mark
Site Admin
Posts: 5513
Joined: Tue Apr 25, 2000 6:56 pm

problems obtaining semaphores

Post by mark »

If you have multiple versions of texis running on the system or texis is not always running as the same user or you're manually removing SYSLOCKS you could get conflicts which could cause it to keep making new semaphores for the same database. Otherwise it should continue to use the same one for a given database.

If you have other unrelated processes doing various things with other databases those have to be counted too.

Also, you need to have sufficient "undo" structures for every simultaneous user. 60 may be low. Try something larger like maybe 200.
Post Reply