4.2.2.2 Unregistering a One-Pipe XA Resource Manager

This scenario is initiated when the higher-level logic signals the Unregister One-Pipe XA Resource Manager event on XA Resource Manager Bridge providing a Resource Manager Cookie and a RecoveryNotNecessary flag. Assuming the RecoveryNotNecessary flag is set to TRUE, the XA Resource Manager Bridge then sends an XATMUSER_MTAG_RMCLOSE user message with the ShutDownAbrupt field set to 0.

Field

Value

Value description

MsgTag

0x00000FFF

MTAG_USER_MESSAGE

fIsMaster

0x00000001

1

dwConnectionId

0x00000002

2

dwUserMsgType

0x10000001

XATMUSER_MTAG_RMCLOSE

dwcbVarLenData

0x00000008

8

dwReserved1

0xCD64CD64

dwReserved1: 0xcd64cd64

ShutdownAbrupt

0x00000000

The shutdown is not abrupt.

Reserved

0x00000001

Implementation-specific and to be ignored.

When the XA Resource Manager Bridge Facet receives the XATMUSER_MTAG_RMCLOSE message from the XA Resource Manager Bridge, the XA Resource Manager Bridge Facet attempts to remove the XA Resource Manager object referenced by the XA Resource Manager CMP Connection from the XA Resource Manager Durable Log. Assuming the removal is successful, the XA Resource Manager Bridge Facet sends an XATMUSER_MTAG_RMCLOSEOK message.

Field

Value

Value description

MsgTag

0x00000FFF

MTAG_USER_MESSAGE

fIsMaster

0x00000000

0

dwConnectionId

0x00000002

2

dwUserMsgType

0x10000002

XATMUSER_MTAG_RMCLOSEOK

dwcbVarLenData

0x00000000

0

When the XA Resource Manager Bridge receives the XATMUSER_MTAG_RMCLOSEOK message, it signals the Disconnect Connection event using the receiving Connection as the argument. Then the XA Resource Manager Bridge returns success to the Unregister One-Pipe XA Resource Manager event.