ALERT: Some images may not load properly within the Knowledge Base Article. If you see a broken image, please right-click and select 'Open image in a new tab'. We apologize for this inconvenience.

Default LOADER RUNUNITs display shows many OVERFLOW allocations

book

Article ID: 17029

calendar_today

Updated On:

Products

IDMS IDMS - Database

Issue/Introduction

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

In the SYSGEN SYSTEM statement there are 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.

Cause

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.

Environment

Release: All supported releases.
Component: IDMS

Resolution

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.