RESOLVE CHANNEL (ask a channel to resolve in-doubt messages)

Use the MQSC command RESOLVE CHANNEL to request a channel to commit or back out in-doubt messages.

Using MQSC commands

For information on how you use MQSC commands, see Performing local administration tasks using MQSC commands.

[z/OS]You can issue this command from sources CR. For an explanation of the source symbols, see Sources from which you can issue MQSC commands on z/OS®.

Synonym: RESOLVE CHL (RES CHL on z/OS )

RESOLVE CHANNEL

Read syntax diagramSkip visual syntax diagram RESOLVE CHANNEL ( channel-name ) ACTION ( COMMITBACKOUT ) CHLDISP(DEFAULT)CHLDISP(PRIVATE)CHLDISP(SHARED)12CMDSCOPE(' ')CMDSCOPE(qmgr-name)12
Notes:
  • 1 Valid only on z/OS when the queue manager is a member of a queue sharing group.
  • 2 Valid only on z/OS.

Usage notes for RESOLVE CHANNEL

  1. This command is used when the other end of a link fails during the confirmation period, and for some reason it is not possible to reestablish the connection.
  2. In this situation the sending end remains in doubt as to whether the messages were received. Any outstanding units of work must be resolved by being backed out or committed.
  3. If the resolution specified is not the same as the resolution at the receiving end, messages can be lost or duplicated.
  4. [z/OS]On z/OS, the command server and the channel initiator must be running.
  5. This command can be used only for sender (SDR), server (SVR), and cluster-sender (CLUSSDR) channels (including those that have been defined automatically).
  6. Where there is both a locally defined channel and an auto-defined cluster-sender channel of the same name, the command applies to the locally defined channel. If there is no locally defined channel but more than one auto-defined cluster-sender channel, the command applies to the channel that was last added to the local queue manager's repository.

Parameter descriptions for RESOLVE CHANNEL

(channel-name)
The name of the channel for which in-doubt messages are to be resolved. This is required.
ACTION
Specifies whether to commit or back out the in-doubt messages (this is required):
COMMIT
The messages are committed, that is, they are deleted from the transmission queue
BACKOUT
The messages are backed out, that is, they are restored to the transmission queue
[z/OS]CHLDISP
This parameter applies to z/OS only and can take the values of:
  • DEFAULT
  • PRIVATE
  • SHARED

If this parameter is omitted, then the DEFAULT value applies. This is taken from the default channel disposition attribute, DEFCDISP, of the channel object.

In conjunction with the various values of the CMDSCOPE parameter, this parameter controls two types of channel:
SHARED
A receiving channel is shared if it was started in response to an inbound transmission directed to the queue sharing group.

A sending channel is shared if its transmission queue has a disposition of SHARED.

PRIVATE
A receiving channel is private if it was started in response to an inbound transmission directed to the queue manager.

A sending channel is private if its transmission queue has a disposition other than SHARED.

Note: This disposition is not related to the disposition set by the disposition of the queue sharing group of the channel definition.
The combination of the CHLDISP and CMDSCOPE parameters also controls from which queue manager the channel is operated. The possible options are:
  • On the local queue manager where the command is issued.
  • On another specific named queue manager in the group.

The various combinations of CHLDISP and CMDSCOPE are summarized in the following table:

Table 1. CHLDISP and CMDSCOPE for RESOLVE CHANNEL
CHLDISP CMDSCOPE( ) or CMDSCOPE (local-qmgr) CMDSCOPE (qmgr-name)
PRIVATE Resolve private channel on the local queue manager Resolve private channel on the named queue manager
SHARED Resolve a shared channel on all active queue managers.

This might automatically generate a command using CMDSCOPE and send it to the appropriate queue manager. If there is no definition for the channel on the queue manager to which the command is sent, or if the definition is unsuitable for the command, the command fails.

The definition of a channel on the queue manager where the command is entered might be used to determine the target queue manager where the command is actually run. Therefore, it is important that channel definitions are consistent. Inconsistent channel definitions might result in unexpected command behavior.

Not permitted
[z/OS]CMDSCOPE
This parameter applies to z/OS only and specifies how the command runs when the queue manager is a member of a queue sharing group.
If CHLDISP is set to SHARED, CMDSCOPE must be blank or the local queue manager.
' '
The command runs on the queue manager on which it was entered. This is the default value.
qmgr-name
The command runs on the queue manager you specify, providing the queue manager is active within the queue sharing group.

You can specify a queue manager name only if you are using a queue sharing group environment and if the command server is enabled.