WebSphere MQ for iSeries journals

WebSphere MQ for iSeries uses journals in its operation to control updates to local objects. Each queue manager library contains a journal for that queue manager, which has the name

QMGRLIB/AMQAJRN, where QMGRLIB is the name of the queue manager library.

QMGRLIB takes the name QM, followed by the name of the queue manager in a unique form. For example, a queue manager named

TEST has a journal receiver library named QMTEST.

These journals have associated journal receivers that contain the information being journaled. These receivers are objects to which information can only be appended and will fill up eventually.

Journal receivers also use up valuable disk space with out-of-date information. However, we can place the information in permanent storage to minimize this problem. One journal receiver is attached to the journal at any particular time. If the journal receiver reaches its predetermined threshold size, it is detached and replaced by a new journal receiver. We can specify the threshold of journal receivers when you create a queue manager using CRTMQM and the THRESHOLD parameter.

The journal receivers associated with the local WebSphere MQ for iSeries journal exist in each queue manager library, and adopt a naming convention as follows:

   AMQArnnnnn

where

nnnnn

is decimal 00000 to 99999

r

is decimal 0 to 9

The sequence of the journals is based on date. However, the naming of the next journal is based on the following rules:

  1. AMQArnnnnn goes to AMQAr(nnnnn+1), and nnnnn wraps when it reaches 99999. For example, AMQA000000 goes to AMQA000001, and AMQA999999 goes to AMQA000000.

  2. If a journal with a name generated by rule 1 already exists, the message

    CPI7OE3 is sent to the QSYSOPR message queue and automatic receiver switching stops.

    The currently-attached receiver continues to be used until you investigate the problem and manually attach a new receiver.

  3. If no new name is available in the sequence (that is, all possible journal names are on the system) we need to do both of the following:

    1. Delete journals no longer needed (see Journal management).

    2. Record the journal changes into the latest journal receiver using (RCDMQMIMG) and then repeat the previous step. This allows the old journal receiver names to be reused.

The AMQAJRN journal uses the MNGRCV(*SYSTEM) option to enable the operating system to automatically change journal receivers when the threshold is reached. For more information on how the system manages receivers, see i5/OS Backup and Recovery.

The journal receiver's default threshold value is 100 000 KB. We can set this to a larger value when you create the queue manager. The initial value of the

LogReceiverSize attribute is written to the LogDefaults stanza of the mqs.ini file.

When a journal receiver extends beyond its specified threshold, the receiver is detached and a new journal receiver is created, inheriting attributes from the previous receiver. Changes to the

LogReceiverSize or LogASP attributes after a queue manager has been created are ignored when the system automatically attaches a new journal receiver

See Configuring WebSphere MQ for further details on configuring the system.

If we need to change the size of journal receivers after the queue manager has been created, create a new journal receiver and set its owner to QMQM using the following commands:

CRTJRNRCV JRNRCV(QMGRLIB/AMQAnnnnnn) THRESHOLD(xxxxxx) +
   TEXT('MQM LOCAL JOURNAL RECEIVER')
CHGOBJOWN OBJ(QMGRLIB/AMQAnnnnnn) OBJTYPE(*JRNRCV) NEWOWN(QMQM)

where

QmgrLib

Is the name of your queue manager library

nnnnnnn

Is the next journal receiver in the naming sequence described

xxxxxx

Is the new receiver threshold (in KB)
Note:
The maximum size of the receiver is governed by the operating system. To check this value look at the THRESHOLD keyword on the CRTJRNRCV command.

Now attach the new receiver to the AMQAJRN journal with the command:

CHGJRN JRN(QMGRLIB/AMQAJRN) JRNRCV(QMGRLIB/AMQAnnnnnn)

See Journal management for details on how to manage these journal receivers.