using the ca idms™ mq adapter to enhance connectivity …

37
Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadc om Inc. and/or its subsidiaries. Using the CA IDMS™ MQ Adapter to Enhance Connectivity With Other Applications MIKE PICCHIONI, SENIOR SOFTWARE ENGINEER [email protected] 1.19.2020

Upload: others

Post on 16-Nov-2021

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

Using the CA IDMS™ MQ Adapter to Enhance Connectivity With Other ApplicationsMIKE PICCHIONI, SENIOR SOFTWARE ENGINEER

[email protected]

1.19.2020

Page 2: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

Certain information in this presentation may outline CA’s general product direction. This presentation shall not serve to (i) affect the rights

and/or obligations of CA or its licensees under any existing or future license agreement or services agreement relating to any CA software

product; or (ii) amend any product documentation or specifications for any CA software product. This presentation is based on current

information and resource allocations as of 13th October 2020 and is subject to change or withdrawal by CA at any time without

notice. The development, release and timing of any features or functionality described in this presentation remain at CA’s sole

discretion.

Notwithstanding anything in this presentation to the contrary, upon the general availability of any future CA product release referenced in this

presentation, CA may make such release available to new licensees in the form of a regularly scheduled major product release. Such release

may be made available to licensees of the product who are active subscribers to CA maintenance and support, on a when and if-available

basis. The information in this presentation is not deemed to be incorporated into any contract.

Copyright © 2020 Broadcom. All rights reserved. The term “Broadcom” refers to Broadcom Inc. and/or it’s subsidiaries. Broadcom, the pulse

logo, Connecting everything, CA Technologies and the CA Technologies logo are among the trademarks of Broadcom.

THIS PRESENTATION IS FOR YOUR INFORMATIONAL PURPOSES ONLY. Broadcom assumes no responsibility for the accuracy or

completeness of the information. TO THE EXTENT PERMITTED BY APPLICABLE LAW, BROADCOM PROVIDES THIS DOCUMENT “AS IS”

WITHOUT WARRANTY OF ANY KIND, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES OF MERCHANTABILITY,

FITNESS FOR A PARTICULAR PURPOSE, OR NONINFRINGEMENT. In no event will Broadcom be liable for any loss or damage, direct or

indirect, in connection with this presentation, including, without limitation, lost profits, lost investment, business interruption, goodwill, or lost

data, even if Broadcom is expressly advised in advance of the possibility of such damages.

Disclaimer

Page 3: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

Abstract

• IBM MQ is a popular messaging system that enables z/OS applications to share information with

other applications on z/OS and other platforms. CA IDMS 19.0 now includes support for IBM MQ

on z/OS in the base product. Come to this session to see the capabilities of the CA IDMS MQ

Adapter, and how it can provide a robust and cost effective way to enable your CA IDMS online

applications to communicate with other MQ applications.

3

Page 4: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

Agenda

• Overview

• IDMS MQ API

• MQ Sessions

• Trigger Monitor

• DCMT Commands

• MQ Statistics

4

Page 5: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

IBM MQ Overview

• Renamed from MQSeries to Websphere MQ to IBM MQ

• Enables applications to communicate using messaging asynchronously

• Queues are an MQ resource defined to contain messages

• Queue managers own and manage MQ resources

• Syncpoints are used to commit or back out a unit of work

5

Page 6: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

CA IDMS MQ Adapter

• Previously IDMS users needed 3rd party software in order to use IBM MQ

• CA IDMS MQ Adapter support now integrated into CV processing

• MQI is programming interface using same statements as IBM MQ

• IDMS MQ Adapter intercepts only commands that need intervention

• Other commands and parameters are passed through to IBM MQ

• Optional trigger monitor integrated in IDMS

6

Page 7: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

CA IDMS MQ Adapter

7

Page 8: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

CA IDMS MQ API

• Same as IBM Batch MQ API

• E.g. MQCONN (QMgrName, Hconn, CompCode, Reason)

• Link IDMSMQI stub with calling program

• Dynamically call CSQB or MQ name

• ReLink IDMSMQI with alias names

• Define each alias as program to IDMS-DC

• Programs Link or transfer control to alias name

• CSQB names documented by IBM

• E.g. CSQBCONN instead of MQCONN

8

Page 9: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

Supported Languages

• COBOL

• ASSEMBLER

• PL/I

• ADS

9

Page 10: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

Supported APIs

• MQBACK

• MQCLOSE

• MQCMIT

• MQCONN

• Starts a session

• Does not connect

• MQDISC

• Ends a session

• Does not disconnect

10

Page 11: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

Supported APIs (cont.)

• MQGET

• Wait options:

• MQGMO_NO_WAIT, MQGMO_SET_SIGNAL, MQGMO_FAIL_IF_QUIESCING

• MQGMO_WAIT is internally changed to a MQGMO_SET_SIGNAL with a #WAIT on the ECB

• Sync point options:

• MQGMO_SYNCPOINT, MQGMO_NO_SYNCPOINT, MQGMO_SYNCPOINT_IF_PERSISTENT, MQGMO_MARK_SKIP_BACKOUT

• Browse options:

• MQGMO_BROWSE_FIRST, MQGMO_BROWSE_NEXT, MQGMO_BROWSE_MSG_UNDER_CURSOR,

MQGMO_MSG_UNDER_CURSOR, MQGMO_MARK_BROWSE_HANDLE, MQGMO_MARK_BROWSE_CO_OP,

MQGMO_UNMARKED_BROWSE_MSG, MQGMO_UNMARK_BROWSE_CO_OP, MQGMO_UNMARK_BROWSE_HANDLE

• Lock options:

• MQGMO_LOCK, MQGMO_UNLOCK

11

Page 12: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

Supported APIs (cont.)

• MQGET (cont.)

• Message-data options:

• MQGMO_ACCEPT_TRUNCATED_MSG, MQGMO_CONVERT

• Message group:

• MQGMO_LOGICAL_ORDER, MQGMO_COMPLETE_MSG, MQGMO_ALL_MSGS_AVAILABLE

MQGMO_ALL_SEGMENTS_AVAILABLE

• Properties options:

• MQGMO_PROPERTIES_AS_Q_DEF, MQGMO_PROPERTIES_IN_HANDLE, MQGMO_NO_PROPERTIES,

MQGMO_PROPERTIES_FORCE_MQRFH2, MQGMO_PROPERTIES_COMPATIBILITY

• Default option:

• MQGMO_NONE

12

Page 13: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

Supported APIs (cont.)

• MQINQ

• MQOPEN

• MQOO_OUTPUT, MQOO_INPUT_AS_Q_DEF, MQOO_FAIL_IF_QUIESCING, and its remaining options

• MQPUT

• MQPMO_SYNCPOINT,MQPMO_NO_SYNCPOINT, MQPMO_SYNC_RESPONSE,

• MQPUT1

• MQPMO_SYNCPOINT,MQPMO_NO_SYNCPOINT, MQPMO_SYNC_RESPONSE,

• MQSET

• MQSTAT

13

Page 14: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

ADS BIFs

• A new BIF for each supported MQ API

• Each BIF is the same name as the API

• Example:

MQOPEN(ConnectionHandle, ObjectDescriptor, Options,

ObjectHandle, CompCode, RsnCode)

14

Page 15: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

IDMS defined reason codes

• IBM MQ has reason codes in the 2000 range

• IDMS MQI reason codes are in the 13000 range

• IDMSQRNA – Assembler definitions

• IDMSQRNC – COBOL definitions

15

Page 16: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

SYSGEN

• Requires new MQ statement

• Specify the queue manager name

• Specify enabled/disabled

• For example

16

Page 17: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

Utility Subtasks

• Formerly called RRS subtasks

• Used for RRS and MQ calls and if multi-tasking, IDMS work

• Automatically started if MQ statement sysgenned

• RRS=Y on startup JCL EXEC PARM implies utility subtask use

• Modifying the number of subtasks

• The default number of utility subtasks is equivalent to the number of CPUs in the system, minus one.

• To modify the number of utility subtasks available to IDMS the SUBTASKS parameter must be modified in the PARM

parameter of the EXEC statement of the startup JCL.

• Example:

//STARTUP EXEC PGM=dcucfsys,PARM='MT=N,SUBTASKS=3’

• See ‘Specify the Number of Utility Subtasks (Optional)’ in DocOps for more information.

17

Page 18: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

IDMS MQ Sessions

• An IDMS MQ session is an internal structure used by DC to track open objects, units of work, and to

reserve a subtask

• A session is explicitly created on MQCONN and freed on MQDISC

• A session is implicitly created on the first MQOPEN and freed when there are no open objects and

no uncommitted work

• Active sessions are freed at task termination

• A session reserves a subtask

18

Page 19: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

Trigger Monitor

• RHDCD0MQ – Line Driver/Trigger Monitor

• Issues an MQOPEN on the Initiation queue for each MQTRIGGR PTE

• Waits for a Trigger Message to arrive

• Once a Trigger Message arrives

• Gets taskcode to invoke from the trigger message

• Comes from the APPLICID field defined in the IBM MQ Process

• MQTM fields of trigger message put in PTE and parm address set to PTE version of MQTM to be passed to started program

• Starts a BULK PTE to run the task

• Issues an MQCLOSE for each queue during shutdown

• The Trigger Monitor uses 1 utility subtask, regardless of the number of MQTRIGGR PTEs.

• Attached tasks will run on a different available utility subtask

19

Page 20: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

Trigger Monitor: SYSGEN

• Requires new MQ line

• Type is MQ

• Requires new PTE type MQTRIGGR

• Must specify the initiation queue.

• The line must have BULK pterms defined.

• Can have multiple MQTRIGGR PTEs for different initiation queues

20

Page 21: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

Trigger Monitor: SYSGEN

• For example

21

Page 22: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

Trigger Monitor: SYSGEN

22

Page 23: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

Trigger Monitor – IBM MQ setup

• IBM MQ definitions related to IDMS MQ Trigger Monitor

• Define Process identifies task to be invoked

• Define Queue identifies initiation queue to be monitored

• Other values defined in IBM MQ are placed in trigger message by IBM MQ queue manager

• For example

23

Page 24: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

Trigger Monitor

• DCMT V LINE mq-line OFF

• Disables Trigger Monitor for all MQTRIGGR pterms

• DCMT V LINE mq-line ON

• Enables Trigger Monitor for all MQTRIGGR pterms that were not individually varied offline

• DCMT V PTERM mq-pterm ON/OFF

• Enables/Disables Trigger Monitor for the individual MQTRIGGR pterm

24

Page 25: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

Trigger Monitor: Polling

• When Trigger Monitoring is enabled, but cannot connect to the defined initiation queue, the trigger

monitor will periodically retry to connect

• The time between polling attempts, in seconds, is defined on the MQ LINE statement in SYSGEN

with the clause

• POLLING INTERVAL IS n

• Polling Interval is 0 disables polling. This is the default

• DCMT D LINE/PTERM - New PTERM status for MQTRIGGR PTERMS

• New status: POLL - Indicates PTERM is polling

• If a PTERM is POLLing, it can be disabled by varying the PTERM offline.

25

Page 26: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

Trigger Monitor

• Messages:

• DC131024 Line <line-id> Pterm <physical-terminal-id> trigger monitoring initiated on queue <queue-name>

• DC131025 Line <line-id> Pterm <physical-terminal-id> trigger monitoring ended

• DC131029 Line <line-id> Pterm <physical-terminal-id> Trigger Monitor: Cannot start trigger message designated task

26

Page 27: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

DCMT Commands

• DCMT D SUBTASK

• Work type RRS is now UTIL for UTILITY

• IDMS and Utility is I+U

• DCMT D MQ

• Displays the SYSGEN MQ definitions and the Runtime MQ definitions

• DCMT D STAtistics SYStem

• Display system-wide statistics, including statistics for the MQ component.

• DCMT D STAT MQ

• DCMT D STAT MQ QUEUES

• DCMT D STAT MQ QUEUE <queue-name>

27

Page 28: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

DCMT Commands (cont.)

• DCMT V MQ ENAbled

• Turns on MQ processing

• System must be started with MQ defined in Sysgen

• DCMT V MQ DISabled (QUIesce/FORce)

• Turns off MQ processing

• FORce disables MQ immediately. QUIesce lets current running MQ sessions finish. New MQ sessions are not allowed.

• QUIesce is the default

• DCMT V MQ Queue MANager

• Changes the run time queue manager the system is connected to

• MQ must be disabled before varying the queue manager

28

Page 29: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

Quiesce Processing

• DCMT V MQ DISABLE

• No new sessions are allowed

• Existing sessions are allowed to finish

• MQ commands with Fail-if-quesce option get an error

• Subtasks disconnected when freed

• MQI disabled when last session ends

• IBM MQ quiesces

• Same as above except occurs when we detect MQ is quiescing

• We don’t disable MQI when the last session ends

• New sessions are attempted

• Quiesce state ends when new session connects

29

Page 30: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

MQ Statistics

• MQ Statistics displayed on DCMT D STATISTICS SYSTEM screen

• Example:

30

Page 31: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

MQ Statistics

• Total number of MQOPENs, MQCLOSEs, MQPUTs, and MQGETs

• Total MQI calls – Number of calls of all types made through the IDMS MQ API

• Total MQ calls – Total number of calls of all types made including those through the IBM MQ API

31

Page 32: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

MQ Statistics

• Subtasks

• HWM

• High Water Mark

• The highest number of utility subtasks allocated to MQ

• Threshold

• The total number of utility subtasks that can be allocated to MQ

• Times exceeded

• The number of times a utility subtask was needed but could not be allocated because none were available

• If this occurs the number of subtasks should be increased

32

Page 33: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

MQ Statistics

• DCMT D STA MQ

• Displays same MQ stats as DCMT D STA SYS

• Only MQ system stats

• DCMT D STA MQ QUEUES

• Display same stats as DCMT D STA MQ

• Plus Queue Name Stats for each accessed queue

• DCMT D STA MQ QUE queue-name

• Display queue name stats for specified queue

33

Page 34: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

MQ Statistics

• Queue Name Stats

34

Page 35: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

Summary

• IBM MQ support now integrated into IDMS

• Supports all MQ Commands

• Has a built-in optional trigger-monitor

35

Page 36: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Thank You

Page 37: Using the CA IDMS™ MQ Adapter to Enhance Connectivity …

Broadcom Proprietary and Confidential. Copyright © 2020 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.

Now, please join us for a live Question and Answer discussion. Click the meeting link at the bottom of the Session Description to join us.

This is your opportunity to connect with the presenter(s) and your peers, ask

questions, and share information related to this topic.