The RRS batch adapter

Use this information to learn about the RRS batch adapter and the two RRS batch adapters provided by IBM MQ .

The transaction management and recoverable resource manager services (RRS) adapter:

  • Uses z/OS® RRS for commit control.
  • Supports simultaneous connections to multiple IBM MQ subsystems running on a single z/OS instance from a single task.
  • Provides z/OS-wide coordinated commitment control (using z/OS RRS) for recoverable resources accessed through z/OS RRS-compliant recoverable managers for:

    • Applications that connect to IBM MQ using the RRS batch adapter.
    • Db2®-stored procedures executing in a Db2-stored procedures address space that is managed by a workload manager (WLM) on z/OS.
  • Supports the ability to switch an IBM MQ batch thread between TCBs.
IBM MQ for z/OS provides two RRS batch adapters:

    CSQBRSTB
    This adapter requires you to change any MQCMIT statement to SRRCMIT and any MQBACK statement to SRRBACK in your IBM MQ application. (If you code MQCMIT or MQBACK in an application linked with CSQBRSTB, you receive MQRC_ENVIRONMENT_ERROR.)

    CSQBRRSI
    This adapter allows your IBM MQ application to use either MQCMIT and MQBACK or SRRCMIT and SRRBACK.

Note: CSQBRSTB and CSQBRRSI are shipped with linkage attributes AMODE(31) RMODE(ANY). If our application loads either stub below the 16 MB line, first relink the stub with RMODE(24).


Migration

We can migrate existing Batch/TSO IBM MQ applications to use RRS coordination with few or no changes.

If you link-edit your IBM MQ application with the CSQBRRSI adapter, MQCMIT and MQBACK syncpoint your unit of work across IBM MQ and all other RRS-enabled resource managers. If you link-edit your IBM MQ application with the CSQBRSTB adapter, change MQCMIT to SRRCMIT and MQBACK to SRRBACK. The latter approach is preferable; it clearly indicates that the syncpoint is not restricted to IBM MQ resources only.