CONTROL BLOCK NAME = DFHWMMPS
DESCRIPTIVE NAME = CICS TS (XRF) Message queue anchor block
Licensed Materials - Property of IBM
Restricted Materials of IBM
5655-Y04
(C) Copyright IBM Corp. 1985, 1987
FUNCTION =
Anchor for chain of in core message elements built by
the XRF GETMSG process.
An instance of this block is created for each distinct
message queue name for which either the reader process
retrieves messages from the message dataset, or for
which GETMSG requests are issued by the CICS TCB.
Each such block serves as an anchor for the chain of
messages yet to be read, and contains the ECB on
which a CICS transaction will wait if it issues a GETMSG
for a queue with no messages pending.
LIFETIME =
Created by either the XRF message reader process under
the XRF TCB, or by GETMSG under the CICS TCB, at the
first appearance of a message queue name.
Destroyed when the BACKUP either signs off, or takes over.
This is done only under the CICS TCB at a time when it is
known that no other CICS transactions have references to
the block or anything depending on it.
STORAGE CLASS =
Non-CICS storage. Usually in MVS subpool 0 storage
above 16M line.
LOCATION =
The anchor blocks are formed into hash chains using
WMMAHASH as chain field and WMGGHT (in DFHWMGPS) as
hash table.
INNER CONTROL BLOCKS =
WMME is the message queue element description. These
blocks form chains from the message anchor blocks
and contain the individual messages waiting to
be read. They are created by the reader process
when it reads a message, and destroyed by GETMSG
when the message has been delivered.
NOTES :
DEPENDENCIES = S/370
RESTRICTIONS =
None
MODULE TYPE = Control block definition
------------------------------------------------------------------
EXTERNAL REFERENCES =
DATA AREAS =
None
CONTROL BLOCKS =
None
GLOBAL VARIABLES (Macro pass) =
None
------------------------------------------------------------------
Message Manager Message Queue Anchor Block
Table 1.
Offset Hex |
Type |
Len |
Name (Dim) |
Description |
(0) |
STRUCTURE |
24 |
DFHWMMPS |
(0) |
ADDRESS |
4 |
WMMANEXT |
Address of next anchor block (first in chain is addressed from hash table in GETMSG global area). |
(4) |
CHARACTER |
4 |
WMMAQNAM |
Queue name. |
(8) |
ADDRESS |
4 |
WMMAFRST |
First element in message chain for this queue. |
(C) |
ADDRESS |
4 |
WMMALAST |
Last element in message chain for this queue. |
(10) |
HALFWORD |
2 |
WMMAHASH |
Hash table index |
(12) |
BIT(16) |
2 |
* |
(12) |
1... .... |
|
WMMAEOD |
Flag set by reader process if EOD/SIGNOFF or an error occurs. |
(12) |
BIT(15) POS(2) |
2 |
* |
Reserved |
(14) |
ADDRESS |
4 |
WMMAECB |
ECB posted at 'End-of-data or whenever this queue becomes non-empty. |
(14) |
1... .... |
|
* |
(14) |
.1.. .... |
|
WMMAPOST |
POST bit in ECB |
(14) |
BIT(30) POS(3) |
4 |
* |
(18) |
CHARACTER |
0 |
WMMAEND |
Message Queue Element
Table 2.
Offset Hex |
Type |
Len |
Name (Dim) |
Description |
(0) |
STRUCTURE |
8 |
WMME |
(0) |
CHARACTER |
8 |
WMMECTL |
Control part of element |
(0) |
ADDRESS |
4 |
WMMEOLDR |
Next older element |
(4) |
ADDRESS |
4 |
WMMENEWR |
Next newer element |
(8) |
CHARACTER |
0 |
WMMEDATA |
Start of message data. This contains a copy of whole of the record read from the message dataset. See DFHWMRPS for format. |