Go Back

Exceeded quota error on the ENQLM parameter

Article Number: 1477
First Published:
Modified:
Recent Activity:
Views: 67
OS: OpenVMS
Product: Synergy DBL

The troubleshooting process is similar for all EXQUOTA messages, such as DBL-E-EXQUOTA, system error RMS-E-EXENQLM.


The show proc/quota command shows you the current process limit values. The system checks first the process quotas , then the user’s SYSUAF account quota for interactive processes, then the Minimum system sysgen(autogen) PQL_M*values . SYSGEN PQL_M parameters superseded authorize/run parameters if larger. Detached processes like xfServer use default system quotas different to account quotas (PQL_D) overridden by the options specified on the run command or coded specifically in the service. When used by ODBC and other interactive programs that spawn subprocesses, some quotas like ENQLM are deductible from the root process limit. Others like WSEXTENT are per process. (See below for a more complete list.)


In the error above, “EXENQLM” indicates that the ENQLM quota was exhausted. There could be several reasons for this error. Here is some ENQLM-specific troubleshooting information:


The ENQLM parameter limits the number of locks a process (and its subprocesses) can own. OpenVMS Record Management Services (RMS) uses the Lock Management facility to synchronize shared file access, global buffers, and record locks. Because RMS removes one lock for every shared file, local buffer, global buffer section, and outstanding record lock, users who expect to perform large amounts of RMS file sharing should have ENQLM set to a large value. When used by ODBC, ENQLM is the total number of locks for all the subprocesses belonging to the process tree. More than one ENQ may be needed to perform a single operation on a file. Others like WSEXTENT are per process. (see below for a more complete list).


To troubleshoot EXENQLM errors, you\'ll need to figure out exactly why the ENQLM is being exceeded: Is it really just a problem with the ENQLM value set for the account or is it a problem with the number of files that are open by the process and its children?


Here are some things to look at:


Verify that files are being closed properly. If they are being left open, it could cause the system to have an insufficient ENQLM value.


For detached processes (like xfServer) and ODBC, check the process quotas on the run command and monitor (show proc/cont/id=<pid>) hit the Q key to see quotas remaining and limits for the process (tree) of the root process for ODBC and interactive processes. For xfServer and xfServerPlus, monitor the individual processes (SYNSVR_ and SYNLAU_). ODBC values are set explicitly in STARTNET.COM. For xfServer and xfServerPlus, you should update your parameters in SYNERGY_STARTUP.COM (or whichever command file has the SYNERGY_SERVER command in it). For interactive processes use the VMS Authorize utility to check the ENQLM limit on the account. Try increasing it in small amounts based on the show process/quota values to determine if this resolves the problem. A value of 32767 is considered unlimited. Alternatively, you could set the PQL_MENQLM system parameter in SYSGEN to 32767 using modparams.dat and run AUTOGEN with feedback.


Be aware, though, that if ENQLM is increased significantly, you may then run into a problem with the FILLM parameter. FILLM is a VMS setting that controls the number of files that can be open at one time, and it can also cause an exceeded quota error. So, you\'ll need to consider both the ENQLM and the FILLM values when troubleshooting this problem. Increasing FILLM often causes a need to increase BYTLM, and you may also have to update the LOCKIDTBL value in SYSGEN by running AUTOGEN with feedback)


Useful commands and links:


Monitor lock to see system-wide lock statistics


Show proc/cont/id=<pid> to see current process remaining values and limits


Show proc/quota/id=<pid> to see current process remaining values


https://communities.actian.com/s/article/Process-Quota-Limits-on-VMS


https://groups.google.com/forum/#!topic/comp.os.vms/2rfSB7S16Fw


http://fafner.dyndns.org/cgi-bin/conan?key=SHOW~PROCESS~Examples&title=VMS%20Help&referer=


http://h30266.www3.hpe.com/odl/axpos/opsys/vmsos84/5841/5841pro_023.html



Appendix on quotas:


http://h30266.www3.hpe.com/odl/vax/opsys/vmsos73/vmsos73/6017/6017pro_024.html


These quotas are pooled (deductible from the process and all subprocesses): BYTLM, ENQLM, FILLM, PGFLQUOTA, TQELM and PRCLM

 

These quotas are per process: CPULM, ASTLM, WSEXTENT, BIOLM, DIOLM, WSQUOTA and WSDEFAULT.


 



THE INFORMATION PROVIDED TO YOU IN THIS SERVICE IS FOR YOUR USE ONLY. THE INFORMATION MAY HAVE BEEN DEVELOPED INTERNALLY BY SYNERGEX OR BY EXTERNAL SOURCES. SYNERGEX MAKES NO WARRANTIES, EXPRESS OR IMPLIED, REGARDING THIS INFORMATION, INCLUDING THE WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SYNERGEX BE LIABLE FOR ANY DAMAGES OR LOSSES INCURRED BY YOU IN USING OR RELYING ON THIS INFORMATION, INCLUDING WITHOUT LIMITATION GENERAL DAMAGES, DIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES, OR LOSS OF PROFITS, EVEN IF SYNERGEX HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
Please log in to comment on this article.