Why does the default LOADER RUNUNITs display show a high amount of OVERFLOW rununit allocations?

book

Article ID: 17029

calendar_today

Updated On:

Products

CA IDMS CA IDMS - Database CA IDMS - ADS

Issue/Introduction



IDMS default LOADER RUNUNITs display show a high amount of OVERFLOW rununit allocations, even though we have multiple defined and the last preallocated RU appears to not have been used.  Why?

In SYSGEN SYSTEM statement we have multiple LOADER RUNUNITs defined.

PMRM and DCMT D RU  show that the LOADER RUNUNITs for the default dictname have encountered many Overflow Rununit allocations even though one of the preallocated RUNUNITs has not been used or is used very few times.

Environment

Release: IDADSO00100-18.5-ADS-for CA-IDMS
Component:

Resolution

If a user is set to DICTNAME xxxxxxxx and there are

no LOADER rununits defined for that DICTNAME, we will take an overflow RU from the default dict LOADER RUs.      

 

EXAMPLE:

The CV has two dictionaries called SYSTEM and SYSDICT.

DBA has defined one or more LOADER RUNUNITs on the sysgen SYSTEM statement.

These apply to the DEFAULT dictname only (blank dictname).  DEFAULT DICTNAME or DBNAME is only used if there is no DICTNAME/DBNAME set for the user session that is requesting the start of a database transaction.

DBA has also defined one or more LOADER RUNUNITs specifically for DICTNAME SYSTEM, but not for DICTNAME SYSDICT. 

ADD RUNUNITS FOR LOADER

    DICTNAME IS SYSTEM

    COUNT IS nn.

  In the DBTABLE, SYSDICT is defined as the DEFAULT Dictname as seen in the top of this DCMT DISPLAY DBNAME display

DBNAME *DEFAULT MATCH ON SUBSCHEMA IS OPTIONAL              

    SUBSCHEMA IDMSNWK? MAPS TO IDMSNWK? USING DBNAME SYSDICT

                                  

So in this scenario if a user is explicitly set to DICTNAME SYSDICT at the time the database transaction starts, IDMS will find no LOADER RUNUNITs predefined for DICTNAME SYSDICT, so will use overflow from the DEFAULT (blank) LOADER RUNUNITs.

If you define LOADER rununits for each DICTNAME that users can set, those will always be used before resorting to overflow rununits from the DEFAULT LOADER RUNUNITs.