Which OS ENQ calls are done by IDMS?

Document ID : KB000019761
Last Modified Date : 14/02/2018
Show Technical Document Details

Question:

Which ENQ calls are done by CA-IDMS and what is the scope?

Answer:

When an IDMS-CV starts up it does 2 ENQs:

The first ENQ is on Qname IDMSDC and Rname is the SYSTEM number you are bringing up. It is to prevent two copies of the same CV running at the same time. If this ENQ fails startup abends with 3950.

The second is on Qname IDMSCV and Rname is the CV number you are bringing up. This keeps 2 active CV's from using the same CV number. This is needed because the ESE control block addresses are placed in the SVC CV table (MSVCTABL) based on the CV Number. If this ENQ fails startup abends with 3977.

Both of these ENQ's have a scope of "SYSTEM". That Scope is only good for 1 LPAR. If you want to serialize the ENQ using GRS (Gloabal Resource Serialization) you can change the scope to "SYSTEMS" (global) by adding an entry in the SYSTEM inclusion list of member GRSRNLxx in the SYS1.PARMLIB:

 

 	RNLDEF RNL(INCL) TYPE(GENERIC) QNAME(IDMSDC)

 

TYPE(GENERIC) will get all IDMSDC ENQ's without having to specify the Rname version numbers.

There is no need to make the second ENQ for IDMSCV and the CV number global because each system will have its own SVC and SVC table. In fact, it is better not to make the IDMSCV ENQ global because of its use when running a central batch job.

Before a central batch job does a BIND RUN UNIT, the SYSCTL routine (called by IDMSCONN) does an ENQ test on the CV number from SYSCTL to see if the CV is active. If the ENQ works (the CV is not active) it will issue message "DC208002 CV <cv-number> NOT ACTIVE REPLY RETRY OR CANCEL".

With the IDMSCV ENQ added to GRS with a global scope, a batch job being run on another LPAR than the CV would fail in the SIGNON to CV for the BIND RUN UNIT instead of getting this message.

If the CV is active the SYSCTL routine does an ENQ on Qname IDMSCV and Rname BATCxxxx, where xxxx is a binary time stamp. This is the ENQ that will be checked by RHDCCKUR to determine if the batch job has abnormally terminated without doing a finish. This ENQ should not be made global.

 

Additional Information:  

Details about the startup of an IDMS-CV can be found in the manual

 

“System Operations” in chapter “System Startup”