rsvmqtrn
Resolve in-doubt and heuristically completed transactions
Purpose
The rsvmqtrn command
is used to resolve two different transaction states.
- in-doubt transactions
- Use the rsvmqtrn command to commit or
back out internally or externally coordinated in-doubt transactions.Note: Use this command only when you are certain that transactions cannot be resolved by the normal protocols. Issuing this command might result in the loss of transactional integrity between resource managers for a distributed transaction.
- heuristically completed transactions
- Use the rsvmqtrn command with the -f option
for IBM® WebSphere® MQ to remove
all information about externally coordinated transactions that were
previously resolved manually using the rsvmqtrn command,
but the resolution has not been acknowledged by the transaction coordinator
using the xa-forget command. Transactions that are manually resolved
by a resource manager and unacknowledged by the transaction manager,
are known as heuristically completed transactions by X/Open.Note: Only use the -f option if the external transaction coordinator is permanently unavailable. The queue manager, as a resource manager, remembers the transactions that are committed or backed out manually by the rsvmqtrn command.
Syntax
Required parameters
- -m
QMgrName
- The name of the queue manager.
Optional parameters
- -a
- The queue manager resolves all internally coordinated, in-doubt transactions (that is, all global units of work).
- -b
- Backs out the named transaction. This flag is valid for externally coordinated transactions (that is, for external units of work) only.
- -c
- Commits the named transaction. This flag is valid for externally coordinated transactions (that is, external units of work) only.
- -f
- Forgets the named heuristically completed transaction. This flag
is valid only for externally coordinated transactions (that is, external
units of work) that are resolved, but unacknowledged by the transaction
coordinator. Note: Use only if the external transaction coordinator is never going to be able to acknowledge the heuristically completed transaction. For example, if the transaction coordinator has been deleted.
- -r
RMID
- The participation of the resource manager in the in-doubt transaction
can be ignored. This flag is valid for internally coordinated transactions
only, and for resource managers that have had their resource manager
configuration entries removed from the queue manager configuration
information. Note: The queue manager does not call the resource manager. Instead, it marks the participation of the resource manager in the transaction as being complete.
Transaction
- The transaction number of the transaction being committed or backed
out. Use the dspmqtrn command to find the
relevant transaction number. This parameter is required with the -b,
-c, and -r
RMID
parameters, and if used it must be the last parameter.
Return codes
Return code | Description |
---|---|
0 | Successful operation |
26 | Queue manager running as a standby instance. |
32 | Transactions could not be resolved |
34 | Resource manager not recognized |
35 | Resource manager not permanently unavailable |
36 | Invalid arguments supplied |
40 | Queue manager not available |
49 | Queue manager stopping |
58 | Inconsistent use of installations detected |
69 | Storage not available |
71 | Unexpected error |
72 | Queue manager name error |
85 | Transactions not known |
Related commands
Command | Description |
---|---|
dspmqtrn | Display list of prepared transactions |