NQ Function - Monitor ENQs (Administrator)

#### Search Results

Search

# NQ Function - Monitor ENQs (Administrator)

This function allows you to monitor z/OS ENQs and z/VSE LOCKs issued by user programs running in thread, and ENQs as a result of user program requests. It also enables you to monitor outstanding ENQs throughout the whole z/OS system.

After selecting the function code NQ from the UUTIL main menu, the Online Enq Display menu is displayed:

    14:18:15        TID     4           COM-5.1.          User JPO          05/06/97
                             --- Online Enq Display Menu ---                    UEN0

                           Function ....................... Fc
                           -------------------------------- --
                           Show System Enqs ............... SE
                           Outstanding Thread Enqs ........ TE
                           Please select a function ....... SE

          Major Name ....:
          Minor Name ....:

     Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12---
                       End

Meaning of the options and parameters:

Option | Meaning
--- | ---
SE | Monitor ENQs in the system (System ENQs).
TE | Monitor ENQs issued by/on behalf of user programs (thread ENQs).
Major Name | This is the major name of the ENQ which you wish to monitor.
Minor Name | This is the minor name of the ENQ which you wish to monitor.

## Thread ENQs / LOCKs

Depending on the specified major/minor parameter, selecting the TE subfunction results in a display of thread ENQs similar to the following:

    14:19:39        TID     4           COM-5.1.          User JPO          05/06/97
                             --- Outstanding Thread Enqs ---                    UEN1

     Function ...:           ( List / Deq / User / Term / Thrd )
     Token 1 ....:           ( Major Name / Userid / Tid no / LU Name / Thread no. )
     Token 2 ....:                                                    ( Minor Name )

    User-ID  LU-Name  Task-ID  S/T Major    Minor
    -------- -------- -------- --- -------- ---------------------------------------
    SYSUSR            THREAD1  P/E SAGCTIMO TIMON
    SKU      DAES313  SYSTEM   M/S SYSDSN   SKU.TEST.ISAM
    JW1      SHRDAENT SYSTEM   M/S SYSDSN   JW.COMN.SOURCE
    JPO      DAES348  SYSTEM   M/S SYSDSN   COM.SYSF.IV450.XA.LISTING
    *** END OF DATA ***

    Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12---
                      End   SyEnq

You can manipulate the output by specifying a function in theFunction field and appropriate parameters in theTokenfields. Available functions are described below:

> List (default)

>   This causes outstanding ENQs from thread to be displayed using the major and minor names specified in the Token fields to limit the extent of the display. Specify the major name as the Token 1 parameter, and the minor name as the Token 2 parameter.

> Deq (z/OS only)

>   This function enables you to DEQ an outstanding ENQ. The ENQ to be freed must be identified uniquely using the major and minor names in theToken fields, otherwise the request will fail. Specify the major name as the Token 1 parameter, and the minor name as the Token 2 parameter.

>   Note
>   Invalid use of this function could effect the integrity of your system, as other users assume that they have an ENQ outstanding for a resource which the DEQ function then frees. This function should therefore only be used when you are sure that an application has abended, or has left the system without freeing the ENQ.

> User

>   This requests a list of all outstanding ENQs for a specific user. The user ID can be specified as the Token 1 parameter.

> Term

>   This requests a list of all outstanding ENQs issued from a specific terminal name.The terminal name or TID number must be specified as the Token 1 parameter.

> Thrd

>   This requests to list of all outstanding ENQs issued from a specific thread. The thread number must be specified as the Token 1 parameter.

>   Meaning of the output fields by column heading:

>   Heading | Meaning
>   --- | ---
>   User-ID | User ID running in the thread at the time the ENQ was issued.
>   LU-name | Terminal name upon which the user was running when the ENQ was issued.
>   Task-ID | Task that the ENQ was issued for. When an ENQ occurs for a task other than a Com-plete task, the Task-ID is SYSTEM. This can occur when a user request results in a system ENQ for the whole region, for example in the case of dynamic allocation.
>   S/T | Scope and type of the ENQ. Possible values for the scope:
>   P | Step
>   M | System
>   R | Reserve
>   X | Systems
>   Possible values for type:
>   S | Shared
>   E | Exclusive
>   For more information, see the section System ENQs below.
>   Major | Major name.
>   Minor | Minor name.

>   Press PF3 to return to the NQ function menu.

>   Press PF4 to switch to the sytem ENQ overview using the specified major and minor name parameters.

## System ENQs

Selecting the SE subfunction from the NQ menu, or pressing PF4 from the Thread ENQs display with the minor and major names specified, results in a display of system ENQs similar to the following:

    14:58:36        Tid    11          COMTEST          User SAG          07.10.10
                                --- System Enqueues ---                        UQSC
    more ....:
    QName ...:                      Refresh Time:  0          Min Waiters ..:  0
    RName ...:                                                Mode(Char/Hex): C
    Jobname .:
    Trap ....:          Sysplex:                                        Enq  Wait
    QName    RName                                        Jobname  Stat Type Cnt
    -------- -------------------------------------------- -------- ---- ---- ----
    TRACE1
    TRACE4
    TRACE5
    TRACE2
    STKCSCQN
    TRACE3
    TRACE6
    TRACE7
    TRACE8
    TRACE9
    -- P = Step, M = System, X = Systems, R = Reserve, E = Exclusive, S = Shared --

    Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12---
                      End   ThEnq

If there are more entries than will fit on one screen, the cursor is positioned in the field more. If all entries are shown on this screen, the cursor is positioned in the field QName field.

To scroll the list (cursor in field more), press ENTER; if there no more entries than on this screen (cursor in Qname field), ENTER takes you to the next information screen, see the section Selection Modes below;

To switch to the thread ENQs display, press PF4;

To return to the NQ menu, press PF3.

The input fields are described in the section Selection Modes below.

Meaning of the information fields according to column heading:

Heading | Meaning
--- | ---
QNAME | High-level qualifier.
RNAME | Low-level qualifier. This is the name of a resource enqueued under a given high-level qualifier (queue name).
JOBNAME | User of the listed resource.
STAT | Status of individual Rname (resource) entry:
OWNS | requestor is owner.
WAIT | requestor is waiter.
ENQ. TYPE | Scope and type of ownership by the Qname entry. Possible values for scope:
P | Step
M | System
R | Reserve
X | Systems
Possible values for type:
S | Shared
E | Exclusive
Example: M/E = system, exclusive. See also table below.
WAIT CNT | Wait count, that is, the number of resources that are waiting for allocation to the resource currently in use.

The abbreviations listed below the bottom line of the Systems Enqueues display indicate the possible values in the ENQ. TYPE field and describe the type of control of the resource that was requested by the active task:

Abbreviation | Explanation
--- | ---
P = Step | Indicates that the resource can be used only within an address space.
M = System | Indicates that the resource can be used by more than one address space.
X = Systems | Indicates that the resource can be shared between systems.
R = Reserve | Indicates that the task has exclusive control over the resource and also has a hardware reserve on the DASD volume associated with the resource.
E = Exclusive | Indicates that the task has exclusive control over the resource.
S = Shared | Indicates that if a resource is not modified while under control of a task, enqueueing requires shared status.

## Selection Modes

You can select information concerning a certain queue using the input fields in the top half of the System Enqueues display. All these selections are by default done for the local system only. However, you can set the scope to the whole sysplex by marking the field on the map.

> Selecting all Entries

>   If you leave all fields blank, all queues currently found in the operating system are displayed:

>       14:58:36        Tid    11          COMTEST          User SAG          07.10.10
>                                   --- System Enqueues ---                        UQSC
>       more ....:
>       QName ...:                      Refresh Time:  0          Min Waiters ..:  0
>       RName ...:                                                Mode(Char/Hex): C
>       Jobname .:
>       Trap ....:          Sysplex:                                        Enq  Wait
>       QName    RName                                        Jobname  Stat Type Cnt
>       -------- -------------------------------------------- -------- ---- ---- ----
>       TRACE1
>       TRACE4
>       TRACE5
>       TRACE2
>       STKCSCQN
>       TRACE3
>       TRACE6
>       TRACE7
>       TRACE8
>       TRACE9
>       -- P = Step, M = System, X = Systems, R = Reserve, E = Exclusive, S = Shared --

>       Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12---
>                         End   ThEnq

>   You can place the cursor on any Qname in the list and press ENTER. This has the same effect as entering the name in the Qname input field: all information pertaining to this Qname is displayed (see below).

> Selection by Qname

>   If you only know the Qname, you can enter it in the Qname field. When you press ENTER, all information about the specified Qname is displayed, for example:

>       15:04:30        Tid    11          COMTEST           User SAG          07.10.10
>                                   --- System Enqueues ---                        UQSC
>       more ....:
>       QName ...: COMPLETE             Refresh Time:  0          Min Waiters ..:  0
>       RName ...:                                                Mode(Char/Hex): C
>       Jobname .:
>       Trap ....:          Sysplex:                                        Enq  Wait
>       QName    RName                                        Jobname  Stat Type Cnt
>       -------- -------------------------------------------- -------- ---- ---- ----
>       COMPLETE 3                                            COMTEST3 OWNS M/E   00
>                P                                            PQACOM   OWNS M/E   00
>                6                                            DAEFCOT  OWNS M/E   00
>                2                                            COMTEST2 OWNS M/E   00
>                K                                            DAEFCODE OWNS M/E   00
>                4                                            COMTEST7 OWNS M/E   00
>                N                                            TESTNAT  OWNS M/E   00
>                H                                            DAEFHTP  OWNS M/E   00
>                M                                            TESTNAT2 OWNS M/E   00
>                F                                            DAEFCO   OWNS M/E   00
>       -- P = Step, M = System, X = Systems, R = Reserve, E = Exclusive, S = Shared --

>       Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12---
>                         End   ThEnq

>   You can place the cursor on any Rname or Jobname in the list and press ENTER. This has the same effect as entering the name in the corresponding input field: all information pertaining to the Qname with this Rname or Jobname is displayed (see below).

> Selection by Rname

>   If you only know the Rname, you can enter it in the Rname field. When you press ENTER, all information about the Qname with this specified Rname is displayed, for example:

>       15:06:19        Tid    11          COMTEST          User SAG           07.10.10
>                                   --- System Enqueues ---                        UQSC
>       more ....:
>       QName ...:                      Refresh Time:  0          Min Waiters ..:  0
>       RName ...: TIMON                                          Mode(Char/Hex): C
>       Jobname .:
>       Trap ....:          Sysplex:                                        Enq  Wait
>       QName    RName                                        Jobname  Stat Type Cnt
>       -------- -------------------------------------------- -------- ---- ---- ----
>       SAGCTIMO TIMON                                        DAEFCO   OWNS P/E   00
>                                                             DAEFHTP  OWNS P/E   00
>                                                             DAEFCODE OWNS P/E   00
>                                                             PQACOM   OWNS P/E   00
>                                                             COMTEST2 OWNS P/E   00
>                                                             TESTNAT2 OWNS P/E   00
>                                                             DAEFCOJB OWNS P/E   00
>                                                             TESTNAT  OWNS P/E   00
>                                                             COMTEST8 OWNS P/E   00

>       -- P = Step, M = System, X = Systems, R = Reserve, E = Exclusive, S = Shared --

>       Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12---
>                         End   ThEnq

>   You can place the cursor on any Jobname in the list and press ENTER. This has the same effect as entering the name in the Jobname input field: all information pertaining to this Jobname is displayed (see below).

> Selection by Jobname

>   If you only know the Jobname, you can enter it in the Jobnamefield. When you press ENTER, all information about the Qname with this specified Jobname is displayed, for example:

>       15:08:01        Tid    11          COMTEST           User SAG          07.10.10
>                                   --- System Enqueues ---                        UQSC
>       more ....:
>       QName ...:                      Refresh Time:  0          Min Waiters ..:  0
>       RName ...:                                                Mode(Char/Hex): C
>       Jobname .: COMTEST8
>       Trap ....:          Sysplex:                                        Enq  Wait
>       QName    RName                                        Jobname  Stat Type Cnt
>       -------- -------------------------------------------- -------- ---- ---- ----
>       RDC-HIST RYRDCH                                       COMTEST8 OWNS P/E   00
>       SAGCTIMO TIMON                                        COMTEST8 OWNS P/E   00
>       SYSZJES2 SJB.1F506228                                 COMTEST8 OWNS M/E   00
>       SYSDSN   RDC.HOTFIX.LOAD                              COMTEST8 OWNS X/S   00
>                COK.SYSF.COM6XX.USER.SOURCE                  COMTEST8 OWNS X/S   00
>                APS.V331.LOA##                               COMTEST8 OWNS X/S   00
>                RDC.RLSE.IV611.MVS.LOAD                      COMTEST8 OWNS X/S   00
>                INS.APS331.MVSLD00                           COMTEST8 OWNS X/S   00
>                PPEX.DAEF.NATURAL.LOAD                       COMTEST8 OWNS X/S   00
>                COK.SYSF.COM6XX.COMSYS.BASE                  COMTEST8 OWNS X/S   00
>       -- P = Step, M = System, X = Systems, R = Reserve, E = Exclusive, S = Shared --

>       Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12---
>                         End   ThEnq

> Selection by Rname and Jobname

>   If you only know both the Rname and the Jobname, you can enter them in the corresponding fields. When you press ENTER, all information about this Rname and Jobname is displayed, for example:

>       15:09:21        Tid    11          COMTEST           User SAG          07.10.10
>                                   --- System Enqueues ---                        UQSC
>       more ....:
>       QName ...:                      Refresh Time:  0          Min Waiters ..:  0
>       RName ...: TIMON                                          Mode(Char/Hex): C
>       Jobname .: COMTEST8
>       Trap ....:          Sysplex:                                        Enq  Wait
>       QName    RName                                        Jobname  Stat Type Cnt
>       -------- -------------------------------------------- -------- ---- ---- ----
>       SAGCTIMO TIMON                                        COMTEST8 OWNS P/E   00

>       -- P = Step, M = System, X = Systems, R = Reserve, E = Exclusive, S = Shared --

>       Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12---
>                         End   ThEnq

>   If there are more entries than fit on the screen, the cursor is positioned in the more field. Press ENTER to scroll the list. You can manipulate the output by entering other, valid values in the input fields.

>   To return to the NQ menu, press PF3.

## Display Modes

> Rname Mode

>   The Rname Mode parameter displayed at the top of the System Enqueue display screen can be used to set the mode of the Rname entries for a given Qname to either character or hexadecimal format. The values permitted are:

>   C | Rnames are displayed in character mode.
>   H | Rnames are displayed in hexadecimal mode.

>   Note
>   If you specify Mode=H, data input in the field Rname to select specific minor names also must be in hexadecimal mode (for example, if Mode=H and you wish to list enqueues for Rnames starting with SYS, input data in fieldRname must be E2E8E2).

>       15:11:01        Tid    11          COMTEST          User SAG           07.10.10
>                                   --- System Enqueues ---                        UQSC
>       more ....:
>       QName ...: RDC-HIST             Refresh Time:  0          Min Waiters ..:  0
>       RName ...:                                                Mode(Char/Hex): H
>       Jobname .:
>       Trap ....:          Sysplex:                                        Enq  Wait
>       QName    RName                                        Jobname  Stat Type Cnt
>       -------- -------------------------------------------- -------- ---- ---- ----
>       RDC-HIST D9E8D9C4C3C8                                 COMTEST8 OWNS P/E   00

>       -- P = Step, M = System, X = Systems, R = Reserve, E = Exclusive, S = Shared --

>       Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12---
>                         End   ThEnq

>   Setting the Rname entry to hex mode is useful in instances in which the Rname is an address (which is shown in the Rname column only as "...." when Rname mode is set to character).

> Refresh Time

>   The Refresh Time parameter displayed at the top of the System Enqueues display screen can be used to set the refresh rate to a one- or two-digit value specifying the time in seconds that is to pass before the System Enqueues screen is automatically redisplayed with the latest data.

>   The Refresh Time parameter enables you to bypass the need to keep pressing ENTER in order to see the most current status; entering a Refresh Time parameter causes the screen to be refreshed automatically regularly.

>   Note
>   To reset the Refresh Time, interrupt the system enqueue monitor by pressing RESET and then press ENTER, or by pressing ATTN on SNA devices.

## Displaying Enqueue/Dequeue Conflicts

The Min Waiters field can be used to set the number of resources waiting for allocation to the resource currently in use.

To search for specific enqueue conflicts, first enter precise Qname/Rname/ Jobname information in the appropriate fields on the System Enqueues display screen, or select them by placing the cursor on the desired Qname and pressing ENTER).

Set the Refresh Time and the Min Waiters parameters to the desired values and mark the Trap option with an X. (Note that the Trap option automatically sets the Refresh Time value to zero if an enqueue conflict with the given Min Waiters is encountered.)

    14:50:46        Tid     4           COM-5.1.          User JPO          05/06/97
                                 --- System Enqueues ---                        UQSC
     more ....:
     QName ...: SYSDSN               Refresh Time:  1          Min Waiters ..:  1
     RName ...: COM.SYSF.IV450.XA.LOAD                         Mode(Char/Hex): C
     Jobname .:
     Trap ....: X                                                        Enq  Wait
     QName    RName                                        Jobname  Stat Type Cnt
     -------- -------------------------------------------- -------- ---- ---- ----
     SYSDSN   COM.SYSF.IV450.XA.LOAD                       COM450   OWNS M/S   01
                                                           JPOBR14  WAIT M/E   01

     -- P = Step, M = System, X = Systems, R = Reserve, E = Exclusive, S = Shared --
     Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12---
                       End   ThEnq

The system ENQ monitor then searches for enqueue conflicts with the given criteria, and the desired information is displayed.

### On this page

- Thread ENQs / LOCKs
- System ENQs
- Selection Modes
- Display Modes
- Displaying Enqueue/Dequeue Conflicts