home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!dtix!darwin.sura.net!wupost!zaphod.mps.ohio-state.edu!cis.ohio-state.edu!ucbvax!lrw.com!leichter
- From: leichter@lrw.com (JERRY LEICHTER)
- Newsgroups: comp.os.vms
- Subject: re: Help wanted : Running out of ENQLM
- Message-ID: <9207211738.AA00838@uu3.psi.com>
- Date: 21 Jul 92 17:15:05 GMT
- Sender: daemon@ucbvax.BERKELEY.EDU
- Organization: The Internet
- Lines: 44
-
-
- We have COBOL programs which run out of ENQLM very quickly.
-
- I know that ENQLM is the number of locks you can have queued at any
- one time, and that file i/o can use locks. But I don't really know
- much more than that, and I would like to understand what is going on.
-
- 1. What else besides file i/o uses locks ? I imagine there are
- operating system tables which require locks ?
-
- Actually, file I/O doesn't (directly) involve locks. You need ENQLM quota to
- queue a lock to the Lock Manager with the $ENQ system service. ENQLM limits
- how many locks you can have queued at once. File I/O enters into the picture
- indirectly, since RMS uses the Lock Manager to control access to shared files.
- (There are some other Lock Manager-controlled locks in the I/O system, too,
- but they are unlikely to ever be an issue.)
-
- 2. What is the effect on the system of a user having a high ENQLM ?
-
- It costs you system memory - memory "in use by VMS" rather than available to
- applications.
-
- How high is high ? Our default is 800. Our COBOL user normally
- has 2000. We tried with 3000 and still didn't get very far.
-
- 3000 sounds VERY high to me - not because the system can't handle it (memory
- is cheap these days) but because I find it hard to come up with legitimate
- uses for that many simultaneous locks.
-
- I
- don't want to just keep on increasing it without understanding
- that it is sensible and reasonable that a program might require
- very large values. Does anyone have guidelines on what are
- sensible and reasonable ranges of values for ENQLM ?
-
- It's hard to generalize. For most purposes, the default of 800 should be just
- fine.
-
- It sounds to me as if the affected program has a bug. Perhaps it is locking
- hundreds of records in files without ever releasing any locks. Perhaps it's
- just opening hundreds of files and locking records in each.
-
- In any case, a closer examination is called for.
- -- Jerry
-