gtpm2m21Migration Guide: Program Update Tapes

TPF MQSeries Local Queue Manager Support Enhancements (APAR PJ26156)

The following section discusses the migration considerations for TPF MQSeries local queue manager support enhancements. See the following for more information about TPF MQSeries support:

Prerequisite APARs

See the APEDIT for APAR PJ26156 for information about prerequisite APARs.

Functional Overview

The following enhancements are provided to improve the usability of TPF MQSeries local queue manager support and to provide functions that make the support more consistent with other MQSeries platforms.

Architecture

The following describes how the TPF MQSeries local queue manager support enhancements are implemented in the TPF 4.1 system.

Alias Queues

A local or remote queue can be defined with an alias by using the ZMQSC DEF QA command. This allows applications to issue a request to open the queue without having to know the true name of the queue. When the application specifies the alias queue name on the MQOPEN function call, TPF MQSeries local queue manager support substitutes the real queue name.

You can change an alias queue definition with the ZMQSC ALT QA command. The ZMQSC DISPLAY and ZMQSC DEL commands were also updated to support alias queues.

Function Trace

In addition to the communications trace (previously referred to as channel trace) that was provided with TPF MQSeries local queue manager support, you can now use a function trace to aid with debugging. You can set function tracing for:

Both communications and function tracing are controlled with the ZMQSC TRACE command. You can direct the output to an RTL tape, the console (recommended for test systems only), both tape and console, or neither tape nor console. The trace data is also attached to the entry control block (ECB) and will be included in any system error dumps that are issued.

MQSeries Application Programming Interface (API) Functions

The set of supported TPF MQSeries local queue manager functions was expanded to include the MQINQ and MQSET functions. The MQINQ function allows you to get attribute information about the queue or queue manager. The MQSET function allows you to set certain attribute information for a queue. These functions are based on the standard MQSeries architecture.

Disabling Receiver Channels

TPF MQSeries now provides protection against remote systems or applications with errors. You can use the ZMQSC STOP functional message to disable a TPF MQSeries receiver channel and prevent the remote system from connecting to the TPF MQSeries queue manager. You can use the ZMQSC START command to enable the receiver channel again so that it can be started by the remote system after any problems have been corrected.

Operating Environment Requirements and Planning Information

To ensure that your TPF 4.1 system performs correctly with TPF MQSeries local queue manager support enhancements, you must establish the required operating environment. The following section describes hardware and software requirements specific to TPF MQSeries local queue manager support enhancements.

Operating Environment Requirements and Planning Information provides information about the minimum system configuration requirements that are necessary to operate the TPF 4.1 system. You may find it helpful to review that chapter along with the following information.

Hardware

There are no changes.

Software (Programming Requirements)

The following section contains information about software requirements.

You must use the IBM OS/390 C/C++ Version 2 Release 4 compiler or later version or release to compile the TPF MQSeries programs. See the OS/390 C/C++ User's Guide for more information about C and C++ compilers.

Interface Changes

The following section summarizes interface changes.

C/C++ Language

The following section summarizes C/C++ language changes. This information is presented in alphabetic order by the type of C/C++ language information. See the TPF C/C++ Language Support User's Guide and TPF Application Programming for more information about the C/C++ language.

Build Scripts

Table 618 summarizes changes to the build scripts used by the build tool. This information is presented in alphabetic order by the name of the build script.

Table 618. Changes to Build Scripts for TPF MQSeries Local Queue Manager Support Enhancements

Build Script Type New, Changed, or No Longer Supported? Description of Change
CMQSBS DLL Changed Included new member CMQFTR for TPF MQSeries function trace.

Dynamic Load Module (DLM) Stubs

There are no changes.

General Use C/C++ Language Header Files

Table 619 summarizes the general use C/C++ language header file changes. This information is presented in alphabetic order by the name of the general use C/C++ language header file.

General use means these header files are available for your use.

Table 619. Changes to General Use C/C++ Language Header Files for TPF MQSeries Local Queue Manager Support Enhancements

C/C++ Language Header File New, Changed, or No Longer Supported? Do You Need to Recompile Segments?
cmqc.h Changed Yes

Implementation-Specific C/C++ Language Header Files (IBM Use Only)

Table 620 summarizes the general use C/C++ language header file changes that are for IBM use only. This information is presented in alphabetic order by the name of the general use C/C++ language header file.

Table 620. Changes to Implementation-Specific C/C++ Language Header Files (IBM Use Only) for TPF MQSeries Local Queue Manager Support Enhancements

C/C++ Language Header File (IBM Use Only) New, Changed, or No Longer Supported? Do You Need to Recompile Segments?
amqrriha.h Changed Yes
amquscrw.h Changed Yes
c$mqs.h Changed Yes
c$mqtr.h Changed Yes

Library Interface Scripts

There are no changes.

Library Members (Object Files)

There are no changes.

Link-Edited Modules

There are no changes.

Members (Object Files)

Table 621 summarizes changes to members (object files). This information is presented in alphabetic order by the name of the member (object file).

Notes:

  1. You must recompile or reassemble a member (object file) if it has changed.

  2. You must prelink and link a dynamic load module (DLM) if it has changed.

Table 621. Changes to Members (Object Files) for TPF MQSeries Local Queue Manager Support Enhancements

Member (Object File) DLM/DLL New, Changed, or No Longer Supported? Type Description of Change
CCCITA CMQS Changed Object Code Only Updated for TPF MQSeries local queue manager support enhancements.
CCCMXA CMQS Changed Object Code Only Updated for TPF MQSeries local queue manager support enhancements.
CCLIBA CMQS Changed Object Code Only Updated for TPF MQSeries local queue manager support enhancements.
CMQAPI CMQS Changed C++ Language Updated for TPF MQSeries local queue manager support enhancements.
CMQCOL CMQS Changed C++ Language Updated for TPF MQSeries local queue manager support enhancements.
CMQERR CMQS Changed Object Code Only Updated for TPF MQSeries local queue manager support enhancements.
CMQFTR CMQS New C++ Language Created for TPF MQSeries local queue manager support enhancements.
CMQGBL CMQS Changed C++ Language Updated for TPF MQSeries local queue manager support enhancements.
CMQHSH CMQS Changed C++ Language Updated for TPF MQSeries local queue manager support enhancements.
CMQL CMQL Changed Object Code Only Updated for TPF MQSeries local queue manager support enhancements.
CMQMCA CMQS Changed Object Code Only Updated for TPF MQSeries local queue manager support enhancements.
CMQMGC CMQS Changed C++ Language Updated for TPF MQSeries local queue manager support enhancements.
CMQMGR CMQS Changed C++ Language Updated for TPF MQSeries local queue manager support enhancements.
CMQMTR CMQS Changed Object Code Only Updated for TPF MQSeries local queue manager support enhancements.
CMQNPM CMQS Changed C++ Language Updated for TPF MQSeries local queue manager support enhancements.
CMQNPS CMQS Changed Object Code Only Updated for TPF MQSeries local queue manager support enhancements.
CMQQUE CMQS Changed C++ Language Updated for TPF MQSeries local queue manager support enhancements.
CMQR CMQR Changed Object Code Only Updated for TPF MQSeries local queue manager support enhancements.
CMQUTL CMQS Changed C++ Language Updated for TPF MQSeries local queue manager support enhancements.
CQRFPT CMQI Changed C Language Updated for TPF MQSeries local queue manager support enhancements.
CQRREQ CMQI Changed C Language Updated for TPF MQSeries local queue manager support enhancements.
CRCMSA CMQS Changed Object Code Only Updated for TPF MQSeries local queue manager support enhancements.
CRCRSA CMQS Changed Object Code Only Updated for TPF MQSeries local queue manager support enhancements.
CRCSIA CMQS Changed Object Code Only Updated for TPF MQSeries local queue manager support enhancements.
CRMCLA CMQS Changed Object Code Only Updated for TPF MQSeries local queue manager support enhancements.
CRMCVA CMQS Changed Object Code Only Updated for TPF MQSeries local queue manager support enhancements.
CRMRCA CMQS Changed Object Code Only Updated for TPF MQSeries local queue manager support enhancements.
CRMRSA CMQS Changed Object Code Only Updated for TPF MQSeries local queue manager support enhancements.
CRMSAA CMQS Changed Object Code Only Updated for TPF MQSeries local queue manager support enhancements.
CRMSSA CMQS Changed Object Code Only Updated for TPF MQSeries local queue manager support enhancements.
CRMTRA CMQS Changed Object Code Only Updated for TPF MQSeries local queue manager support enhancements.
CUIE CUIE Changed Object Code Only Updated for TPF MQSeries local queue manager support enhancements.
CUIF CUIF Changed Object Code Only Updated for TPF MQSeries local queue manager support enhancements.
CUIQ CMQS Changed C++ Language Updated for TPF MQSeries local queue manager support enhancements.
CUIS CMQS Changed C++ Language Updated for TPF MQSeries local queue manager support enhancements.
CUIT CMQS Changed C++ Language Updated for TPF MQSeries local queue manager support enhancements.
CUIV CMQS Changed C++ Language Updated for TPF MQSeries local queue manager support enhancements.
CUIW CMQS Changed C++ Language Updated for TPF MQSeries local queue manager support enhancements.
CUIX CUIX Changed Object Code Only Updated for TPF MQSeries local queue manager support enhancements.
CUSCCA CMQS Changed Object Code Only Updated for TPF MQSeries local queue manager support enhancements.
CUSCCD CMQS Changed Object Code Only Updated for TPF MQSeries local queue manager support enhancements.
CUSCPF CMQS Changed C++ Language Updated for TPF MQSeries local queue manager support enhancements.
CUSCQL CMQS Changed C++ Language Updated for TPF MQSeries local queue manager support enhancements.
CUSCQM CMQS Changed C++ Language Updated for TPF MQSeries local queue manager support enhancements.
CUSCQR CMQS Changed C++ Language Updated for TPF MQSeries local queue manager support enhancements.
CUSCRW CUSC Changed C++ Language Updated for TPF MQSeries local queue manager support enhancements.
CUSCUL CMQS Changed C++ Language Updated for TPF MQSeries local queue manager support enhancements.
CXCSMW CMQS Changed Object Code Only Updated for TPF MQSeries local queue manager support enhancements.
CXCSSW CMQS Changed Object Code Only Updated for TPF MQSeries local queue manager support enhancements.

Object Code Only (OCO) Stubs

There are no changes.

Configuration Constant (CONKC) Tags

There are no changes.

Control Program Interface (CINFC) Tags

There are no changes.

Copy Members

There are no changes.

Fixed File Records

There are no changes.

Macros

The following section summarizes the macro changes. This information is presented in alphabetic order by the type of macro.

Advanced Program-to-Program Communications (APPC) Macros

There are no changes.

Communication Macros and Statements

There are no changes.

Data Macros

There are no changes.

General Macros

There are no changes.

Selected Equate Macros

Table 622 summarizes the selected equate macro changes. This information is presented in alphabetic order by the name of the selected equate macro.

Table 622. Changes to Selected Equate Macros for TPF MQSeries Local Queue Manager Support Enhancements

Selected Equate Macro New, Changed, or No Longer Supported? Do You Need to Reassemble Programs?
IEQCE2 Changed Yes

Structured Programming Macros (SPMs)

There are no changes.

System Initialization Program (SIP) Skeleton and Internal Macros (Inner Macros)

Table 623 summarizes the system initialization program (SIP) skeleton and internal macro changes. This information is presented in alphabetic order by the name of the SIP skeleton and internal macro. If the SIP skeleton and internal macro (inner macro) is changed, you must reassemble the SIP Stage I deck and run the appropriate job control language (JCL) jobs from the SIP Stage II deck.

Table 623. Changes to SIP Skeleton and Internal Macros for TPF MQSeries Local Queue Manager Support Enhancements

SIP Skeleton and Internal Macro New, Changed, or No Longer Supported?
SPPGML Changed

System Initialization Program (SIP) Stage I Macros and Statements

There are no changes.

System Initialization Program (SIP) Stage II Macros

There are no changes.

System Communication Keypoint (SCK) Generation Macros

There are no changes.

System Macros

There are no changes.

System Macros (IBM Use Only)

There are no changes.

Segments

Table 624 summarizes segment changes. This information is presented in alphabetic order by the name of the segment.

Table 624. Changes to Segments for TPF MQSeries Local Queue Manager Support Enhancements

Segment Type Link-Edit Module (Where Offline Segment Is Linked) New, Changed, or No Longer Supported? Description of Change
CMQMPP  Offline CMQMPP Changed Updated to support TPF MQSeries function trace.

System Equates

There are no changes.

User Exits

There are no changes.

Functional and Operational Changes

The following section summarizes functional and operational changes. This information is presented in alphabetic order by the functional or operational change.

See Appendix A, "PUT 2-15 Interface Changes by Authorized Program Analysis Report (APAR)" for a summary of functional and operational changes by APAR.

Commands

Table 625 summarizes command changes. This information is presented in alphabetic order by the name of the command. See TPF Operations for a complete description of all commands.

Attention: Changes to commands can impact any automation programs you are using in your complex.

Table 625. Changes to Commands for TPF MQSeries Local Queue Manager Support Enhancements

Command New, Changed, or No Longer Supported? Description of Change
ZMQSC ALT QA New Changes a TPF MQSeries alias queue definition.
ZMQSC ALT QL Changed Updated to allow the PUT and GET parameters for transmission queues.
ZMQSC ALT QR Changed Added the PUT parameter.
ZMQSC DEF QA New Defines a TPF MQSeries alias queue.
ZMQSC DEF QL Changed Updated to allow the PUT and GET parameters for transmission queues.
ZMQSC DEF QR Changed Added the PUT parameter.
ZMQSC DEL Changed Added the QA parameter.
ZMQSC DISPLAY Changed Added the QA parameter.
ZMQSC START Changed Updated to allow you to enable receiver channels that were previously disabled by the ZMQSC STOP command.
ZMQSC STOP Changed Updated to allow you to disable receiver channels.
ZMQSC SWQ Changed Updated to allow chained requests.
ZMQSC TRACE Changed Updated for the enhanced TPF MQSeries trace.

Messages and System Errors

Table 626 summarizes message (offline and online messages) and system error changes.

The message IDs or system error numbers are listed in numeric order preceded by their alphabetic prefix. Some offline and online messages do not have a standard message ID. For these, the messages are presented in alphabetic order based on the initial message text; or for those messages that begin with variable information, the initial message text that follows that variable information. See Messages (System Error and Offline) and Messages (Online)for a complete description of all messages and system errors.

Attention: Changes to offline messages, online messages, and system errors may impact any automation programs you are using in your complex.

Table 626. Changes to Messages and System Errors for TPF MQSeries Local Queue Manager Support Enhancements

Message ID or System Error Number Message Type New, Changed, or No Longer Supported?
MQSC0008I Online New
MQSC0011I Online No Longer Supported
MQSC0012E Online New
MQSC0013E Online New
MQSC0014I Online New
MQSC0021E Online No Longer Supported
MQSC0022E Online No Longer Supported
MQSC0028I Online New
MQSC0029I Online New
MQSC0030I Online New
MQSC0031I Online New
MQSC0032I Online New
MQSC0033I Online New
MQSC0034E Online New
MQSC0035E Online New
MQSC0036W Online New
MQSC0046W Online New
MQSC0047I Online New
MQSC0048I Online New
MQSC0049I Online New
MQSC0051E Online New
MQSC0052I Online Changed
MQSC0053E Online New
MQSC0056I Online New
MQSC0073E Online New
MQSC0075E Online No Longer Supported
MQSC0076E Online No Longer Supported
MQSC0078E Online Changed
MQSC0079E Online Changed
MQSC0085I Online New
MQSC0114E Online No Longer Supported
MQSC0119E Online No Longer Supported
MQSC0122E Online No Longer Supported
MQSC0133E Online New
MQSC0134E Online New
MQSC0150I Online New
MQSC0158I Online No Longer Supported
MQSC0160I Online No Longer Supported
MQSC0161I Online No Longer Supported
MQSC0162E Online Changed
MQSC0165E Online New
MQSC0166E Online New
MQSC0177I Online New
MQSC0204I Online New
MQSC0333E Online New
MQSC0334E Online New
MQSC0335I Online New
MQSC0336E Online New
MQSC0337I Online New
MQSC0338E Online New
MQSC0339E Online New
MQSC0340E Online New
MQSC0501E Online New

Performance or Tuning Changes

There are no changes.

Storage Considerations and Changes

There are no changes.

System Initialization Program (SIP) and System Generation Changes

There are no changes.

Loading Process Changes

There are no changes.

Online System Load Changes

There are no changes.

Publication Changes

Table 627 summarizes changes to the publications in the TPF library. This information is presented in alphabetic order by the publication title. See the TPF Library Guide for more information about the TPF library.

Table 627. Changes to TPF Publications for TPF MQSeries Local Queue Manager Support Enhancements

Publication Title Softcopy File Name Description of Change
TPF C/C++ Language Support User's Guide GTPCLU0A Updated with information about the C language functions that were added and changed for TPF MQSeries local queue manager support enhancements.
Messages (System Error and Offline) and Messages (Online) Not Applicable Updated with information about messages and system errors that were added, changed, and no longer supported for TPF MQSeries local queue manager support enhancements.
TPF Migration Guide: Program Update Tapes GTPMG200 Updated with migration considerations for TPF MQSeries local queue manager support enhancements.
TPF Operations GTPOPR0A Updated with information about the commands that were added and changed for TPF MQSeries local queue manager support enhancements.
TPF Program Development Support Reference GTPPDV0A Updated with information about the trace function that was enhanced for TPF MQSeries local queue manager support enhancements.

Host System Changes

There are no changes.

Application Programming Interface (API) Changes

There are no changes.

Database Changes

There are no changes.

Feature Changes

There are no changes.

Installation Validation

There are no changes.

Migration Scenarios

Use the following procedures to install TPF MQSeries local queue manager support enhancements on your existing TPF 4.1 system.

  1. Install program update tape (PUT) 10.
  2. Use the IBM OS/390 C/C++ Version 2 Release 4 compiler or later version or release to compile all non-OCO programs in the following build scripts: CMQLBS, CMQRBS, CMQSBS, CUIEBS, CUIFBS, CUIKBS, CUIMBS, CUIRBS, CUIUBS, CUIXBS, CUSCBS. See the OS/390 C/C++ User's Guide for more information about C and C++ compilers.
  3. Use the CMQSBS build script to link-edit the CMQS DLL, which produces the CMQS definition side-deck.
  4. Use the CMQS definition side-deck to link-edit the following DLMs: CMQL, CMQR, CUIE, CUIF, CUIK, CUIM, CUIR, CUIU, CUIX, CUSC.
  5. Link-edit the CMQMPP offline trace program by using the system initialization program (SIP) generated job control language (JCL). The CMQMPP program does not require prelinking because the program is compiled with the NORENT and NOLONGNAME options.
  6. Compile the Message Queue Interface (MQI) client modules contained in the CMQI, CMQ1, CMQ2, and CMQ3 DLMs. Link-edit these DLMs. See Message Queue Interface (MQI) Client (APAR PJ22434) for more information about the MQI client modules.
  7. Do the following for any MQI client application programs that currently call the MQINQ and MQSET functions:
    1. Use the DLL option to recompile the application programs.
    2. Modify the prelink step to import the CMQS definition side-deck for the application programs.
    3. Link-edit the application programs.
  8. Enter ZMQSC STOP QMGR to stop the TPF MQSeries queue manager.
  9. Load the new versions of the MQSeries programs or activate a loadset that contains the MQSeries programs.
  10. Enter ZMQSC START QMGR to restart the TPF MQSeries queue manager.

Additional Information: See TPF Operations for more information about the ZMQSC START and ZMQSC STOP commands.