What's new?

CICS® Transaction Server for z/OS®, Version 5 Release 4 enables development teams to create powerful, mixed-language applications while allowing the operational teams to manage these applications from a single point of control.

You might also like to refer to the CICS Transaction Server for z/OS V5.4 announcement letter (continuous delivery release) and the CICS TS for z/OS V5 Performance Report.

Table 1. Features of CICS TS for z/OS 5.4. The features in this table are not exclusive to each of the job roles shown; several are of interest across roles. The features that are shown with an asterisk (*) are also available with APARs on previous releases. Details are in the description of each feature.
For application developers For system programmers
CICS asynchronous API New resource, MQMONITOR, provides a better mechanism for controlling MQ trigger and bridge monitors
* Support for Java EE 7 Full Platform Removal of TCB switch for Java applications that access MQ
* Enable CICS programs to invoke a Java EE application Improved management of JVM servers and associated CICS tasks
* New web services commands Non-Java support for JSON web services
New parameters for DFHLS2WS * System autoinstall of program definitions for Language Environment
* New MAPPING-OVERRIDES option for schema-to-PL/I conversion Changes to the CICS IPIC heartbeat function
* New WIDE-COMP3 option for schema-to-COBOL or schema-to-PL/I conversion * New system initialization parameter XPTKT to control whether CICS performs a RACF check before generating a PassTicket
* Support for mapping level 4.1 in the CICS assistants 3270 Intrusion Detection Service (IDS)
Enhancement of sockets domain (SO) Support for ABSTIME format in EXTRACT STATISTICS command
EXCI support for channels and containers New fields added to TCP/IP statistics
New execution diagnostic facility transactions New options to dump non-CICS address and data spaces
* Decision Server Insights Event format * New system initialization parameter allows preset userid terminals to share a single ACEE
Additional Event Processing (EP) enhancements New option to restart a CICS region after a normal shutdown
* Support for Kerberos mutual authentication through the EXEC CICS VERIFY TOKEN command VSAM data set access control is extended for GDPS Continuous Availability
NOSUSPEND option on EXEC CICS named counter server commands New previous transaction association data
* z/OS Provisioning Toolkit, a command-line utility to rapidly provision and deprovision CICS and other z/OS environments Support for the z/OS Workload Manager Health API
Changes to documentation New CMCI URI parameter OVERRIDEWARNINGCOUNT
z/OS Connect and z/OS Connect Enterprise Edition Changes to defaults of resource definition attributes

Added by IBM SupportSupport for mapping level 4.2 in the CICS assistants

Changes to the way that CICS handles unused HTTP persistent connections

Added by IBM SupportSupport for mapping level 4.3 in the CICS assistants

* Support for IBM Health Checker for z/OS

Added by IBM SupportEnhanced support for IBM SDK, Java Technology Edition Version 8

* Support for system rules in CICS policies

Added by IBM SupportEnhancement to JTA support of Db2 Type 2 Connectivity

Added by IBM Support* Support for static data capture items and event names for policy events

Added by IBM SupportREXX for CICS internal tracing, online help, and product documentation improvements

Added by IBM SupportAbility to specify Transaction ID and User ID conditions for policy task rules

Added by IBM Support* Build support for other toolchains

CICSPlex SM tasks in a MAS changed to be system tasks
Support for Spring Boot applications packaged as WAR files New STALLASYCNT and STALLASYTSK system parameters for CICSPlex SM
  * Change in TCB allocation for Liberty threads
  * Support for new deployment tasks in DFHDPLOY
  Feature toggles to enable new features that are available to in-service or open beta CICS releases
  * z/OS Provisioning Toolkit, a command-line utility to rapidly provision and deprovision CICS and other z/OS environments
  Changes to documentation
 

Added by IBM SupportSecure CICS Explorer sign-in with Multi-Factor Authentication

 

Added by IBM Support* New system initialization parameter, KERBEROSUSER, specifies a user ID to be associated with the Kerberos service principal

 

Added by IBM Support* VSAM dynamic buffer addition disabled for CICS LSR pools

 

Added by IBM Support* Management of Db2 threads used by CICS tasks subject to purge or forcepurge requests

 

Added by IBM Support* Enhanced replication logging for VSAM files

 

Added by IBM Support Multiple Liberty JVM servers can run in one region without using JVM server option WLP_ZOS_PLATFORM

 

Added by IBM SupportNew replication log record

 

Added by IBM SupportNew feature toggle to help you with RLS migration

 

Added by IBM SupportImprovement to CICS exception handling when a JVM server encounters a TCB failure

 

Added by IBM SupportSNI now supported in CICS TS communications with an HTTP server over TLS connections

 

Added by IBM SupportCICS capability of exploiting IBM z/OS Workload Interaction Correlator

 

Added by IBM SupportCICS-MQ trigger monitor and CICS-MQ bridge improvements

 

Added by IBM SupportImproved usage of BAS data space storage for large CICSplex environments

 

Added by IBM SupportEnhanced adapter tracking for CICS Db2 applications

Stripe to separate sections

CICS asynchronous API

This release introduces four EXEC CICS API commands: RUN TRANSID, FETCH CHILD, FETCH ANY, and FREE CHILD. Using these commands, an application developer can run asynchronous transactions in CICS, pass and consume data, and reduce the challenges that are involved in the management and execution of programs.

The CICS asynchronous API uses a parent-child model, enabling application developers to use an asynchronous programming model that can improve the responsiveness of applications, especially those applications that make multiple calls to external services, or which spend a lot of time waiting for the responses of other transactions.

As part of the parent-child model, the asynchronous API flows the security context of the parent task to the child task, ensuring that the children of any given parent task have the correct security authorization to run. New statistics are also provided to monitor the activity of the asynchronous services domain.

Learn more Learn more...

Stripe to separate sections

z/OS Connect

IBM® z/OS Connect enables better and more manageable connectivity between mobile systems and back-end z/OS systems and applications. You can now use z/OS Connect in a CICS region. It provides a consistent interface for mobile systems using REST and JSON, shields back-end systems from having to understand those protocols and formats, and shields mobile application developers from having to understand CICS.

Diagram showing z/OS Connect linking to a mobile device through a Liberty JVM server.

Learn moreLearn more...

Stripe to separate sections
Added by IBM Support

z/OS Connect Enterprise Edition

CICS TS 5.4 supports z/OS Connect Enterprise Edition, a separately orderable IBM product that builds on the capabilities of z/OS Connect for CICS 1.0. z/OS Connect Enterprise Edition enables API developers to construct JSON APIs from JSON services. The APIs are constructed and packaged with the Eclipse-based API Editor that is provided with z/OS Connect Enterprise Edition, then deployed to the z/OS Connect runtime. The API package includes Swagger 2.0 definitions to make it easier for developers to incorporate the APIs into their applications. Key z/OS Connect capabilities, such as authorization security checking for service invocation, creation of System Management Facility (SMF) records, and logging of RESTful service requests also apply to the APIs.

Learn moreLearn more...

Stripe to separate sections

Support for Java EE 7 Full Platform

Java™ developers require access to the latest Java Standard Edition (Java SE) and Enterprise Edition (Java EE) APIs. In addition to the existing support for Java SE applications, CICS TS now supports Java applications that are written to the Java EE 7 Full Platform specification using the embedded version of WebSphere® Application Server Liberty (Liberty).

Java EE 7 provides a wealth of features that allow Java developers to quickly and easily write web applications, web service applications, enterprise applications, and Java batch applications. It also provides a number of standard connectors such as JDBC, JCA, and JMS that allow Java applications to operate with applications and data outside a Java runtime environment.

Java applications that are hosted in CICS TS are integrated with CICS tasks by default. This allows applications that are written in different programming languages to share core characteristics such as CICS security, transactionality, management, and monitoring. Using Java capabilities directly in CICS can provide a simple and powerful way to modernize CICS applications, without the requirement to unnecessarily distribute application components across multiple runtimes.

Additionally, a new standard-mode option is added to the Liberty JVM server. This mode is designed for applications that do not require tight integration with CICS by default, but benefit from the performance of Java on z/OS and proximity to data provided by IBM DB2® for z/OS and IBM MQ for z/OS.

Support for Java EE 7 Web Profile, a subset of Java EE 7 Full Platform, is also available on CICS TS 5.3 with APAR PI63877.

Support for standard-mode Liberty is also available on CICS TS 5.3 with APAR PI58375.

Learn more Learn more...

Stripe to separate sections
Stripe to separate sections

New web services commands

The EXEC CICS TRANSFORM command converts JSON data and a language structure. The following commands are now available:

  • TRANSFORM DATATOJSON to convert application data to JSON.
  • TRANSFORM JSONTODATA to convert JSON to application data.

This capability is also available on CICS TS 5.3 with APAR PI54841.

Learn moreLearn more about TRANSFORM DATATOJSON...

Learn moreLearn more about TRANSFORMJSONTODATA ...

Stripe to separate sections

New parameters for DFHLS2WS

New optional parameters, PORT-NAME, BINDING-NAME, and SERVICE-NAME, are added to the high-level language to WSDL conversion (DFHLS2WS) procedure to prevent your program name from being shown in the port and portType name, the binding name, and the service name in the generated WSDL document.

If you specify the following optional parameters, the PGMNAME name is not included in the generated WSDL 1.1 document:

  • BINDING-NAME
  • OPERATION-NAME
  • PORT-NAME
  • REQUEST-NAMESPACE
  • RESPONSE-NAMESPACE
  • SERVICE-NAME
  • WSDL-NAMESPACE

Learn more Learn more ...

Stripe to separate sections

New MAPPING-OVERRIDES option for schema-to-PL/I conversion

A new MAPPING-OVERRIDES option, HYPHENS-AS-UNDERSCORES, is available in the DFHWS2LS, DFHJS2LS, and DFHSC2LS assistants. You can use this option to convert any hyphens in the schema to underscores, rather than the character X. Using this option can improve the readability of the generated PL/I language structures.

This capability is also available on CICS TS 5.3 with APAR PI57467.

Learn moreLearn more ...

Stripe to separate sections

New WIDE-COMP3 option for schema-to-COBOL or schema-to-PL/I conversion

A new WIDE-COMP3 option, FULL, is available in the DFHWS2LS, DFHJS2LS, and DFHSC2LS assistants. You can use this option to generate packed decimal fields that are large enough to hold all valid values. The maximum size is 31 digits.

This capability is also available on CICS TS 5.3 with APAR PI47466.

Learn moreLearn more ...

Stripe to separate sections

Support for mapping level 4.1 in the CICS assistants

Mapping level 4.1 is added to the web services assistants, XML assistants, and JSON assistants. This mapping level implements improved mappings for simple arrays generated bottom-up from existing copybooks. It also adds the ability for CICS to auto-detect uninitialized trailing storage in arrays, and to omit those records from the generated XML/JSON form.

This capability is also available on CICS TS 5.2 and 5.3 with APAR PI67641.

Learn moreLearn more ...

Stripe to separate sections

Enhancement of sockets domain (SO)

The sockets domain is enhanced to allow data that is received or sent over a TCP/IP socket to reside in any valid data location, which is normally either 31-bit (above-the-line) storage or 64-bit (above-the-bar) storage. This change relieves constraint on 31-bit storage, depending on the size of the HTTP body that is sent or received.

As a result, the following EXEC CICS WEB commands are changed:

For the WEB RECEIVE (Server) command, CICS receives the body of the server HTTP request into 64-bit storage if the HTTP request contains a Content-Length header or is sent as a chunked request. The body is copied into 31-bit storage only when CICS needs to provide a 31-bit version for the server application.

For the WEB SEND (Server) command:
  • If the body of the server HTTP request is held in a container before it is sent to the server, CICS keeps the body in, and sends it from, 64-bit storage.
  • If the body of the server HTTP request is held in an application buffer and needs to be copied or converted before it is sent, CICS keeps the body in, and sends it from, 64-bit storage.

Learn moreLearn more about WEB RECEIVE (Server)...

Learn moreLearn more about WEB SEND (Server)...

Stripe to separate sections

EXCI support for channels and containers

The external CICS interface (EXCI) can pass more than 32 K of data. EXCI now supports passing a CHANNEL with its set of containers, instead of passing a COMMAREA, when linking to a CICS program from a non-CICS address space.

EXCI supports issuing EXEC CICS PUT CONTAINER, GET CONTAINER, MOVE CONTAINER, DELETE CONTAINER, and DELETE CHANNEL commands in batch.

EXCI also provides the ability to do code page conversion in and out of containers.

A channel can be specified on both the EXEC API (EXEC CICS LINK) and the call level API (DPL_REQUEST).

Any CICS applications that are coded to the channels and containers API and invoked by CICS Distributed Program Link (DPL) can now also be invoked unchanged from an EXCI client, including CICS applications that run on previous releases of CICS TS that support channels and containers.

Learn more Learn more ...

Stripe to separate sections

New execution diagnostic facility transactions

New transactions CEDG and CEDY, read-only forms of CEDF and CEDX, are now available. You can examine application programs by using CEDG and CEDY, but you cannot modify resources or alter the execution of commands.

Learn more Learn more ...

Stripe to separate sections

Decision Server Insights Event format

The Decision Server Insights Event format is an XML representation of a CICS event that is recognized by the Decision Server Insights component of IBM Operational Decision Manager. This format can also be used by any consumer that can recognize the Decision Server Insights Event format.

This capability is also available on CICS TS 5.1 and 5.2 with APAR PI55133, and on CICS TS 5.3 with APAR PI55134.

Learn moreLearn more ....

Stripe to separate sections

Additional Event Processing (EP) enhancements

The following enhancements are made to CICS Event Processing support:
  • Addition of new transient data queue (TDQ) EP adapter to emit events to any consumer that can read events from a TD queue.
  • Custom EP adapters are passed capture data in a printable (character) form. A new set of containers (DFHEP.CHAR.nnnnn) is passed to custom EP adapters, which contain a printable version of the raw capture data that is passed in the DFHEP.DATA.nnnnn containers.
  • Addition of the MESSAGE_TEXT capture item on a MESSAGE system event to allow the complete message text to be captured.

Learn moreLearn more about TDQ adapter ...

Learn moreLearn more about DFHEP.CHAR.nnnnn containers ...

Learn moreLearn more about MESSAGE_TEXT capture item ...

Stripe to separate sections

Support for Kerberos mutual authentication through the EXEC CICS VERIFY TOKEN command

New options OUTTOKEN and OUTTOKENLEN are added to VERIFY TOKEN to support Kerberos mutual authentication.

This capability is also available on CICS TS 5.3 with APAR PI56774.

Learn moreLearn more ...

Stripe to separate sections

NOSUSPEND option on EXEC CICS named counter server commands

A new option, NOSUSPEND, is added to the following EXEC CICS named counter server commands to allow an immediate return to the application program during a coupling facility structure rebuild:
  • DEFINE COUNTER and DEFINE DCOUNTER
  • DELETECOUNTER and DELETE DCOUNTER
  • GET COUNTER and GET DCOUNTER
  • QUERY COUNTER and QUERY DCOUNTER
  • REWIND COUNTER and REWIND DCOUNTER
  • UPDATE COUNTER and UPDATE DCOUNTER

Learn moreLearn more ...

Stripe to separate sections

New resource, MQMONITOR, provides a better mechanism for controlling MQ trigger and bridge monitors

A new RDO-defined resource, MQMONITOR, is provided to complement the existing MQCONN resource. You can use this new resource to configure an MQMONITOR, which can be a trigger monitor, an MQ bridge monitor, or a user-written monitor.

Configuration options include the ability to specify a transaction ID to be used by the MQ monitor, the user ID under which an MQ monitor task runs, and the user ID to be used by the MQ monitor to start the application tasks if an alternative user ID is not provided by the application. The AUTOSTART option automatically starts MQ monitors when the CICS-MQ connection is started. MQ monitors are automatically stopped when the CICS-MQ connection is stopped. Any number of MQMONITOR resources can be defined and installed. Using the MQMONITOR resource removes the need to use the CKQC transaction to start and stop monitors manually.

With the introduction of the MQMONITOR resource, CICS now differentiates between the user ID under which the transaction that is monitoring the MQ queue runs (the MONUSERID) and the user ID under which the initiated transactions run (for which, the USERID is used by default unless it is otherwise provided).

CHANGE OF IMPACT:
With the introduction of the MQMONITOR resource, you must be aware of the following changes to MQ resources:
  • The MQINI(DFHMQINI) resource dynamically created by CICS when an MQCONN resource definition with the INITQNAME parameter set to the name of an MQ queue is installed has been replaced with a dynamically created MQMONITOR resource DFHQMINI.
  • As is mentioned earlier, CICS now differentiates between the user ID under which the transaction monitoring the MQ queue runs and the user ID under which the initiated transactions run. This has implications for any dynamically created resources.
    CICS TS V5.3 or earlier CICS TS V5.4 or later
    Resource name: MQINI(DFHMQINI) Resource name: MQMONITOR(DFHQMINI)
    Transaction: CKTI Transaction: CKTI
    Default user ID for CKTI: Either of
    • CICS region user ID
    • PLTPIUSR
    Default user ID for CKTI: Either of
    • DFLTUSER
    • PLTPIUSR
    The CKTI transaction runs under the authority of the transaction that initiated the CKTI instance.

    The CKTI transaction uses the authority of the transaction that initiated the CKTI instance also for starting the transaction associated with the IBM MQ application queue (IBM MQ Process name).

    The CKTI transaction runs under the authority of the DFHQMINI MONUSERID, which is either the CICS region user ID, or the PLTPI user ID if specified.

    CKTI uses the DFHQMINI USERID, which is set to the CICS default user ID, for starting the required application transaction.

    The user ID changes are required to remove a security exposure where potentially unauthorized user IDs could be used.

As you start using CICS TS V5.4 or later, you must review the use of MQCONN. Follow the advice in Review the use of MQCONN in Upgrading CICS regions.

Learn moreLearn more ...

Stripe to separate sections

Removal of TCB switch for Java applications that access MQ

CICS Java applications that run in an OSGi JVM can now use the MQ Classes for Java and the MQ Classes for JMS to access IBM MQ for z/OS from a T8 TCB instead of forcing a move to an L8 TCB.

The CICS-MQ task-related user exit changed to take advantage of an enhancement to the RMI that allows TRUEs to run on any key 8 TCB, not just an L8 TCB. The REQUIRED option on the ENABLE PROGRAM command is used to specify that a task-related user exit must run on an open TCB. If OPENAPI is specified with REQUIRED, an L8 TCB is used. If OPENAPI is not specified, any key 8 open TCB is used. Hence the CICS-MQ TRUE is enabled with the REQUIRED option but not the OPENAPI option.

The change in TCB switch behavior affects the results that you see in CICS monitoring and statistics. TCB usage for Java MQ applications is changed in that MQ CPU time is now accumulated against a T8 TCB. End of task syncpoint processing is still accumulated on an L8 TCB.

Learn more Learn more ...

Stripe to separate sections

Improved management of JVM servers and associated CICS tasks

The ability to robustly manage workloads is critical to an application server. CICS can now remove disruptive tasks from the JVM server by using the PURGE option on the SET TASK command. (This command should be used with caution and with the understanding that objects that are modified by that application might be left in an inconsistent state.) In addition, when disabling the JVM server by using the SET JVMSERVER command, CICS can now remove associated threads and tasks in an orderly sequence in most situations.

Learn more Learn more about SET TASK...

Learn more Learn more about SET JVMSERVER...

Stripe to separate sections

Non-Java support for JSON web services

JSON messages can now be processed in CICS regions with no Java configuration. You don't have to configure and install a JVM server. Performance and throughput for many workloads will be better than when using a JVM server to process JSON messages.

To set up CICS as a non-Java JSON service provider, you must configure a provider pipeline that uses the CICS-supplied program DFHPIJT as the terminal handler. For detailed instructions, see Creating the CICS infrastructure for a non-Java JSON service provider.

Learn moreLearn more ...

Stripe to separate sections

System autoinstall of program definitions for Language Environment

CICS now uses system autoinstall to install program definitions for Language Environment® as required, removing the need to maintain definitions in the CEE CSD group. Only those programs that are used have their definitions installed.

This capability is also available on CICS TS 5.1 and 5.2 with APAR PI60388 and APAR PI73184, and on CICS TS 5.3 with APAR PI60389.

Learn moreLearn more ....

Stripe to separate sections

Changes to the CICS IPIC heartbeat function

The CICS IPIC heartbeat function is changed. IPIC heartbeat messages are sent out only if the connected CICS region is running in a different sysplex.

Learn moreLearn more ...

Stripe to separate sections

New system initialization parameter XPTKT to control whether CICS performs a RACF check before generating a PassTicket

You can use the XPTKT system initialization parameter to instruct CICS to perform a RACF® check before it generates a PassTicket. If you have applications that generate PassTickets by using the EXEC FEPI REQUEST PASSTICKET, EXEC CICS REQUEST PASSTICKET, or EXEC CICS REQUEST ENCRYPTPTKT commands, you must create RACF definitions to allow regions (and optionally userIDs or groups) to generate PassTickets.

Note that for CICS TS 4.2 through 5.3, the default is NO; for CICS TS 5.4, the default is changed to YES, which means that CICS performs a RACF check by default before generating a PassTicket.

Learn moreLearn more ...

Stripe to separate sections

3270 Intrusion Detection Service (IDS)

This service allows CICS to detect if 3270 emulators invalidly modify protected fields, potentially compromising the security of an application. You can opt into this capability with a feature toggle, as described in Specifying feature toggles. You configure this service by using feature toggle com.ibm.cics.bms.ids.

CICS BMS 3270 IDS works with the 3270 Intrusion Detection Service in z/OS Communications Server: SNA Network Implementation Guide to provide an IDS that handles all 3270 or BMS applications. The BMS only service was previously called BMS 3270 data stream validation and was configured using a user replaceable module (URM).

Learn moreLearn more ...

Stripe to separate sections

Support for ABSTIME format in EXTRACT STATISTICS command

The EXTRACT STATISTICS SPI command now can return the time at which the counters for the requested statistics were last reset in ABSTIME format, through the new LASTRESETABS option. ABSTIME specifies the absolute time, which can be transformed into any familiar format by using the FORMATTIME command. You can now handle time periods that cross a day boundary more easily.

Learn moreLearn more ...

Stripe to separate sections

New fields added to TCP/IP statistics

New fields are added to TCP/IP global statistics and TCP/IP services resource statistics to provide more information about TCP/IP performance.

New fields in TCP/IP: Global statistics
The new fields better illustrate how well connections are reused to give a view of connection persistence for a CICS region.
New fields in TCP/IP services: Resource statistics
Some new fields illustrate how well connections are reused to give a view of connection persistence for connections into a specific TCPIPSERVICE.
Some new fields show the effects of performance tuning for HTTP connections on a TCPIPSERVICE.
Some new fields show the socket backlog and details on connections that are dropped to help diagnostics when CICS is under stress.

Learn more Learn more ...

Stripe to separate sections

New options to dump non-CICS address and data spaces

New options, JOBLIST and DSPLIST, are added to the INQUIRE SYSDUMPCODE and SET SYSDUMPCODE commands to dump additional non-CICS address spaces and data spaces when a CICS dump is triggered.

You can set JOBLIST and DSPLIST only through the SET SYSDUMPCODE SPI command or the CEMT SET SYDUMPCODE command. JOBLIST and DSPLIST are inquire-only for CICSPlex® SM SYSDUMP.

Learn more Learn more ...

Stripe to separate sections

New system initialization parameter allows preset userid terminals to share a single ACEE

A new system initialization parameter, SNPRESET, allows userid terminals that are associated with the same user ID to share a single access control environment element (ACEE). You can save storage by specifying SNPRESET=SHARED.

Learn moreLearn more ...

Stripe to separate sections

New option to restart a CICS region after a normal shutdown

A new option, RESTART, is added to the PERFORM SHUTDOWN command to support the automatic restart of CICS regions even if they shut down normally.

If you specify the RESTART option on the PERFORM SHUTDOWN command for a CICS region, when the region shuts down normally, it is restarted by MVS™ Automatic Restart Manager (ARM) after the shutdown.

Learn moreLearn more ...

Stripe to separate sections

VSAM data set access control is extended for GDPS Continuous Availability

To enhance the IBM GDPS® Continuous Availability (GDPS AA) solution to support replication of VSAM data for active-standby and active-query configurations, you can now set VSAM data sets to allow only replication programs to have full access, and other programs to have read access only.

The AVAILABILITY option of the SET DSNAME and INQUIRE DSNAME commands has a new CVDA value, RREPL. If you specify AVAILABILITY(RREPL) for a VSAM data set, full access to the data set is restricted to REPLICATOR programs. Other programs only have read access. The new AVAILABILITY(RREPL) option allows you to set up a fence that is specific to a VSAM data set, rendering the data set accessible only for read and replication. To remove the fence, issue a SET DSNAME AVAILABILITY(AVAILABLE) command.

The SET PROGRAM and INQUIRE PROGRAM SPI commands have a new option, REPLICATION, which allows you to specify REPLICATOR programs. For a REPLICATOR program to update a VSAM data set in the AVAILABILITY state of RREPL, the program must be executed in the region that owns the data set.

Learn moreLearn more ...

Stripe to separate sections

New previous transaction association data

To enable more efficient use of the new CICS asynchronous API, association data identifies the local or parent task of a request to attach a task by an EXEC CICS RUN TRANSID command to allow the transaction tracking and monitoring of parent and child tasks. The new association data also works for EXEC CICS START commands that are not a new point of origin.

Learn more Learn more ...

Stripe to separate sections

Support for the z/OS Workload Manager Health API

CICS now uses the z/OS Workload Manager Health (IWM4HLTH) API as a means of controlling the flow of work into a CICS region. This service is used to inform z/OS WLM of the health state of a server (in this context, a CICS region). This can allow a CICS region to have a warm-up process after the end of system initialization until the region is fully ready to receive work.

The WLMHEALTH system initialization parameter specifies the parameters to be used by CICS on z/OS WLM Health API (IWM4HLTH) calls, which CICS makes to inform WLM about the health state of a CICS address space. You can view the z/OS WLM health service settings for CICS regions through the INQUIRE WLMHEALTH SPI command or the CEMT INQUIRE WLMHEALTH command. You can also change the health service settings by using the SET WLMHEALTH SPI command or CEMT SET WLMHEALTH.

The primary user of CICS regions' health values is TCP/IP, but the values are also used by CICS and CICSPlex SM components. When TCP/IP is configured, the health value feeds into the WLM server recommendations to sysplex distributor, affecting when connections are established with a CICS region. In CICS, the health value affects when MQ trigger monitors, the MQ Bridge, and user-written MQ consumers that are using the MQMONITOR resource are started and stopped. In addition, CICSPlex SM workload management takes into account the health state of target AORs when deciding where to route work.

Added by IBM SupportWith APAR PI90147, the z/OS WLM health value of a region becomes a more effective factor in CICSPlex SM workload routing decisions. When determining the target region to route workload to, CICSPlex SM workload management assigns additional weights in the routing algorithm based on the actual health value of each region. The higher the health value, the lower the penalizing weight assigned, which makes a region with a greater health value more favorable as a target. In addition, a region with a health value of zero is deemed as ineligible to receive work.

Learn more Learn more ...

Stripe to separate sections

New CMCI URI parameter OVERRIDEWARNINGCOUNT

The new CICS management client interface (CMCI) URI parameter, OVERRIDEWARNINGCOUNT, provides the option to bypass the warning count limit mechanism and allow the request to execute as if default warning count limits were not specified. The OVERRIDEWARNINGCOUNT parameter is effective only when the following CICSPlex SM WUI server initialization parameters are in effect:
  • RESOURCELIMIT is set to WARNING.
  • DEFAULTWARNCNT is non-zero (which means a non-zero default warning count limit).

OVERRIDEWARNINGCOUNT is applicable to DELETE, GET, and PUT requests, but accepted by POST with no effect.

Learn more Learn more ...

Stripe to separate sections

Changes to defaults of resource definition attributes

Defaults of several resource definition attributes are changed for better system performance:
  • To avoid the inadvertent use of 24-bit storage, defaults of the following attributes are changed:
    • DATALOCATION on program definitions
    • TASKDATALOC on transaction definitions
  • To allow better recovery from failure and stall scenarios, defaults of attributes that affect transaction purgeability are changed:
    • SPURGE and TPURGE on transaction definitions

Learn more Learn more about PROGRAM attributes ...

Learn more Learn more about TRANSACTION attributes ...

Stripe to separate sections

Changes to the way that CICS handles unused HTTP persistent connections

If you are using a TCPIPSERVICE resource for CICS web support with the HTTP protocol, when a command is issued to close the TCPIPSERVICE and there are unused HTTP persistent connections, CICS now ensures that the TCPIPSERVICE closes within 30 seconds or within the time as specified in the TCPIPSERVICE SOCKETCLOSE attribute if this value is less than 30 seconds.

Learn more Learn more ...

Stripe to separate sections

Support for IBM Health Checker for z/OS

IBM Health Checker for z/OS provides a foundation to help simplify and automate the identification of potential configuration problems. CICS TS now supports three health checker rules that define best practice for CICS TS security. If a CICS region becomes non-compliant with these security best practices, a warning message is issued so that you can take corrective actions.

This capability is also available on CICS TS 5.3, 5.2, and 5.1 with APAR PI76965, and on CICS TS V4.2 with APAR PI76963.

Learn more Learn more ...

Stripe to separate sections

Support for system rules in CICS policies

If you want to monitor the state of system resources or the overall health of a CICS system, you can define system rules in CICS policies. System rules define an automated action to be performed (issue a message or emit a CICS event) when something of interest happens in a CICS system, such as a resource state change, a threshold that is crossed, or an unusual system state or action.

System rules provide equivalent function to system events, which are now deprecated. You should use system rules instead. Also following the introduction of system rules, policy threshold rules are renamed to policy task rules.

This capability is also available on CICS TS 5.1, 5.2, and 5.3 with APAR PI83667, and is further enhanced in CICS TS 5.4 by APAR PI92806, which adds support for the following new system rules:

Bundle available status
Use this rule to monitor and react to the change in available status of bundles that declare application entry points.

This rule is not applicable to any bundles that do not declare application entry points.

Bundle enable status
Use this rule to monitor and react to the change in enable status of bundles.
IPIC connection status
Use this rule to monitor and react to the change in status of IPIC connections.
MRO connection status
Use this rule to monitor and react to the change in status of MRO connections.
Program enable status
Use this rule to monitor and react to the change in enable status of CICS programs.

Learn more Learn more ...

Stripe to separate sections

Support for static data capture items and event names for policy events

Available with APAR PI88500. If you use CICS Explorer®® Version 5.4.0.6 or later and you use the policy definition editor to work with policy rules, you can now define items of static data to be emitted with policy events and specify a user-defined name for the event.

Learn more Learn more...

This capability is also available on CICS TS 5.1, 5.2, and 5.3 with APAR PI88500.

Stripe to separate sections

Ability to specify Transaction ID and User ID conditions for policy task rules

Available with APAR PH26145. When defining a policy task rule, you can now limit this rule to be triggered when status changes are made in relation to a specific transaction or a range of transactions, in relation to a specific user ID or a range of user IDs, or in relation to a combination of both, by setting Transaction ID and User ID filters in the Condition section in the Rules tab of the Policy definition editor.

Learn moreLearn more ...

Stripe to separate sections

CICSPlex SM tasks in a MAS changed to be system tasks

Tasks that are internally initiated by CICSPlex SM in a MAS and that have transaction IDs beginning with the characters CO are changed to run as CICS system tasks. As a result, these tasks are no longer displayed among active tasks in a MAS that is at CICS TS Version 5.4 or later. Web User Interface (WUI) tasks and CICSPlex SM utility transactions (for example COLM for starting the MAS agent initialization) continue to run as user tasks.

As a result of this change:
  • A MAS can now have an initial user task count of zero tasks, even when the MAS agent is active.
  • In a CICSPlex, where workload target regions are a mix of both CICS TS V5.4 and lower releases, the workload distribution favors target regions that run CICS TS V5.4 because those regions have a lower initial user task count. CICSPlex SM WLM continues as normal to select the target region with the lowest routing weight and the bias disappears as the CICS TS V5.4 target regions calculated routing weight starts to equal or exceed that of the lower CICS TS releases.
  • It is no longer possible to purge CICSPlex SM internal system tasks, protecting the system from accidental damage.
Stripe to separate sections

New STALLASYCNT and STALLASYTSK system parameters for CICSPlex SM

Two new system parameters, STALLASYCNT and STALLASYTSK, are introduced to CICSPlex SM to enable the tracking and STALL detection of asynchronous tasks.

Learn moreLearn more ...

Stripe to separate sections

Change in TCB allocation for Liberty threads

To alleviate the potential impact of Liberty thread pooling on zIIP-eligibility of workloads, tasks that run as Liberty threads now invoke a TRUE on the T8 TCB that CICS provided to the Liberty ThreadPool. All other tasks continue to invoke it on the QR TCB.

This capability is also available on CICS TS 5.3 with APAR PI54263.

Learn more Learn more ....

Stripe to separate sections

Support for new deployment tasks in DFHDPLOY

DFHDPLOY is enhanced to perform PIPELINE SCAN, PROGRAM NEWCOPY, and PROGRAM PHASEIN. This enables automation to be written to update these resources without requiring the direct use of the CICSPlex SM API.

This capability is also available on CICS TS 5.1, 5.2, and 5.3 with APAR PI72104.

Learn more Learn more ....

Stripe to separate sections

Feature toggles to enable new features that are available to in-service or open beta CICS releases

CICS delivers features on a continual basis to enhance its capabilities. You can now enable new features that are made available to in-service or open beta CICS releases by configuring feature toggles. This mechanism gives you more control over the enablement of such features.

Learn more Learn more ...

Stripe to separate sections

z/OS Provisioning Toolkit, a command-line utility to rapidly provision and deprovision CICS and other z/OS environments

IBM z/OS Provisioning Toolkit (z/OS PT) is a simple command-line utility that uses the IBM z/OS Management Facility (z/OSMF) REST API to rapidly provision and deprovision CICS and other z/OS development environments. System programmers can set up the environments, authorize access to individuals or teams, and set provisioning controls and limits. Then, using a command-line interface, application developers can quickly provision and deprovision environments, without needing mainframe administration skills or authority.

z/OS PT is also available for use with CICS TS 5.1, 5.2, and 5.3.

Learn moreLearn more ...

Stripe to separate sections

Changes to documentation

This release has some changes to the structure and availability of the product documentation:
  • Documentation for CICS Explorer in IBM Knowledge Center is published independently from the documentation for CICS Transaction Server. The CICS Explorer documentation is in CICS Explorer User Guide.
  • The table of contents in IBM Knowledge Center is streamlined into fewer sections.
  • There are a number of changes to the way that the PDF manuals are structured and delivered.
  • IBM Knowledge Center V2.0 withdrew support for creating bespoke PDFs. As a consequence, the collections that were provided to support this facility are also withdrawn from the CICS documentation.

Learn more Learn more ...

Stripe to separate sections
Added by IBM Support

Secure CICS Explorer sign-in with Multi-Factor Authentication

Available with APAR PI87691. CICS TS now supports CICS Explorer sign-in with Multi-Factor Authentication for enhanced CICS Explorer sign-on security.

To implement this security capability in your CICS environment, you must configure the WUI region to use the CMCI JVM server. The CMCI JVM server runs in the WUI region and handles CMCI requests.

Learn more Learn more...

Stripe to separate sections
Added by IBM Support

New system initialization parameter, KERBEROSUSER, specifies a user ID to be associated with the Kerberos service principal

You can use the new KERBEROSUSER system initialization parameter to specify a user ID other than the CICS region user ID, to be associated with the Kerberos service principal for the CICS region. This user ID must not be a protected user ID, because protected user IDs should not be used for Kerberos authentication and Kerberos authentication failures can result in user revocation.

Typically, the CICS region user ID is a protected user ID, so it is recommended to specify a non-protected user ID on KERBEROSUSER for the Kerberos service principal.

Learn more Learn more...

Stripe to separate sections
Added by IBM Support

Support for mapping level 4.2 in the CICS assistants

Available with APAR PI86039. Mapping level 4.2 is added to the web services assistants, XML assistants, and JSON assistants. This mapping level is primarily for use with DFHJS2LS. It implements support for Additional Properties in JSON, and introduces the following three parameters to DFHJS2LS: ADDITIONAL-PROPERTIES-DEFAULT, ADDITIONAL-PROPERTIES-MAX, and ADDITIONAL-PROPERTIES-SIZE.

Learn more Learn more...

Stripe to separate sections
Added by IBM Support

Support for mapping level 4.3 in the CICS assistants

Available with APAR PI88519. Mapping level 4.3 is added to the web services assistants, XML assistants, and JSON assistants. This mapping level implements support for multidimensional arrays in JSON.

Learn more Learn more ...

Stripe to separate sections
Added by IBM Support

VSAM dynamic buffer addition disabled for CICS LSR pools

Available with APAR PI92486. From z/OS V2.2, VSAM provides a dynamic buffer addition capability that allows for the addition of extra buffers for an LSR pool if no buffer is available for a given VSAM request. For CICS, it is preferable to retry the request rather than allow uncontrolled expansion of an LSR pool, so dynamic buffer addition is not enabled for CICS LSR pools.

Stripe to separate sections
Added by IBM Support

Enhanced support for IBM SDK, Java Technology Edition Version 8

Available with APAR PI87181, CICS is changed to report the full heap and garbage collection statistics for IBM SDK, Java Technology Edition Version 8 Service Refresh 5 and above. CICS has also been changed to disable the new heap structure by specifying -XX:+HeapManagementMXBeanCompatibility. You can override this setting by using -XX:-HeapManagementMXBeanCompatibility in the JVM profile.

APAR PI87695 is required by the Liberty JVM server to support IBM SDK, Java Technology Edition Version 8.

Learn more Learn more...

Back to top

Stripe to separate sections
Added by IBM Support

Management of Db2 threads used by CICS tasks subject to purge or forcepurge requests

Available with APAR PI98569. The SET TASK command has been enhanced such that CICS processing of task purge or forcepurge requests will attempt to cancel active Db2® threads used by CICS tasks that are being purged or forcepurged.

If CICS detects that the task being purged or forcepurged has a thread active in Db2, it will issue a Db2 cancel thread command to cancel the request in Db2 before initiating the purging of the CICS task. This enhancement ensures that the purge does not cause problems for Db2 and that the Db2 updates are safely backed out.

To cancel the Db2 thread in Db2 used by the task being purged or forcepurged, CICS uses a Db2 IFI command to issue the cancel thread command. This IFI request uses a command thread defined as part of the DB2CONN. The ID passed to Db2 needs to have the relevant authority to issue cancel thread requests; therefore, you should review the COMAUTHTYPE or COMAUTHID settings of the DB2CONN. Processing of the purge or forcepurge request will continue even if the cancel thread request is unsuccessful.

Note: This capability requires APAR PI92893 on DB2 Version 11 or higher.

Learn more Learn more...

Back to top

Stripe to separate sections
Added by IBM Support

Enhanced replication logging for VSAM files

Available with APAR PI97207. A new system transaction, called CFCT, and its associated program, DFHFCLJ1, are supplied to provide tie-up records for VSAM files (including non-recoverable VSAM files) to a replication log at specified intervals. You enable this capability by setting the INITPARM system initialization parameter.

Learn more Learn more...

Back to top

Stripe to separate sections
Added by IBM Support

Multiple Liberty JVM servers can run in one region without using JVM server option WLP_ZOS_PLATFORM

Available with APAR PI98174. The JVM server option WLP_ZOS_PLATFORM={TRUE|FALSE} is no longer needed to allow more than one Liberty JVM server to be started in the same region. Multiple Liberty JVM servers can connect to a single angel process within individual regions.

Learn more Learn more...

Back to top

Stripe to separate sections

Enhancement to JTA support of Db2 Type 2 Connectivity

Available with APAR PH07233, Db2 JDBC type 2 connectivity is supported for batch persistence.

Back to top

Stripe to separate sections

REXX for CICS internal tracing, online help, and product documentation improvements

Available with APARS OA56111, OA56806 and OA56807. Support for REXX for CICS internal tracing and a new online help utility are now provided. To use the help utility, you must load the relevant data sets, as described in Create the help files. The REXX for CICS Transaction Server product documentation is provided in this Knowledge Centre, and in the online help.

Learn moreLearn more about Developing REXX applications...

Learn moreLearn more about REXX/CICS Reference ...

Back to top

Stripe to separate sections
Added by IBM Support

New replication log record

Available with APAR PH09381. Replication logging in support of GDPS Continuous Availability is enhanced to log a REDO record when an application issues an UNLOCK command following a read-update command, or a series of write-massinsert commands. It allows replication products to cater more efficiently for non-RLS applications, which, in the absence of browse for update support, issue read-update requests against all records in a file, but update very few and unlock most records.

Learn more Learn more ...

Back to top

Stripe to separate sections
Added by IBM Support

Build support for other toolchains

Available through continuous delivery. Build toolchains such as Maven and Gradle are extremely popular for developing, building, and testing applications. To provide an enhanced experience for Java developers who are using such tools, CICS now offers JCICS and related artifacts through Maven Central.

With this enhancement, you can manage Java dependencies more easily, develop the applications in an integrated development environment (IDE) of your choice, and integrate the application build smoothly with popular automation tools such as Jenkins and Travis CI during development.

Learn moreLearn more ...

Back to top

Stripe to separate sections
Added by IBM Support

New feature toggle to help you with RLS migration

Available with APAR PH07596. A new feature toggle com.ibm.cics.rls.delete.ridfld has been introduced to help you with RLS migration. When this feature is enabled, you can issue a DELETE command with the RIDFLD option for a single record without causing AFCG abends.

Learn more Learn more ...

Back to top

Stripe to separate sections

Improvement to CICS exception handling when a JVM server encounters a TCB failure

Available with APAR PH12280. CICS exception handling when a JVM server encounters a TCB failure has been changed to the following process to ensure that the JVM server is recycled.

  1. CICS disables the JVMSERVER resource with the PHASEOUT option to allow existing work in the JVM to complete where possible and prevent new work from using the JVM.
  2. If the PHASEOUT operation fails to disable the JVMSERVER within the interval specified by the PURGE_ESCALATION_TIMEOUT JVM server option, CICS escalates to the next disable action PURGE until the JVMSERVER is disabled.
  3. If the PURGE operation fails to disable the JVMSERVER within the interval, CICS escalates to the next disable action FORCEPURGE.
  4. If the FORCEPURGE operation fails to disable the JVMSERVER within the interval, CICS escalates to KILL.
  5. After the JVMSERVER is successfully disabled, message DFHSJ1008 is issued.
  6. CICS attempts to re-enable the resource to create a new JVM.

You can control the interval between the disable actions that CICS performs by setting the PURGE_ESCALATION_TIMEOUT JVM server option.

Learn moreLearn more about JVM server option PURGE_ESCALATION_TIMEOUT

Back to top

Stripe to separate sections
Added by IBM Support

SNI now supported in CICS TS communications with an HTTP server over TLS connections

Available with APAR PH20063. CICS TS now supports the use of the Server Name Indication (SNI) extension as defined in Internet Engineering Task Force RFC 6066. With this enhancement, CICS TS, when acting as an HTTP client, can use a TLS connection to a virtual host where the server supports multiple virtual hosts using a single IP address.

No configuration change is required in CICS TS. CICS TS supports SNI if it is supported by the HTTP server.

Back to top

Stripe to separate sections
Added by IBM Support

CICS capability of exploiting IBM z/OS Workload Interaction Correlator

Available with APAR PH16392.

IBM z/OS Workload Interaction Correlator (Correlator) is a priced feature that provides infrastructure for z/OS software to generate synchronized, standardized, concise, content-rich data with common context for automated analysis by an analytics engine such as the IBM z/OS Workload Interaction Navigator. You can use Correlator to generate standardized SMF records for CICS, making it easier to identify and correlate workload across your mainframe environment.

CICS uses the WIC IFAWIC service to register CICS regions for collecting data about transaction activities, and provides a WIC exit routine that SMF calls for WIC processing. The WIC exit routine aggregates and summarizes transaction activities from all registered CICS regions and records exceptional CICS regions into SMF type 98 subtype 1024 records.

Added by IBM SupportAvailable with APAR PH30291, CICS-supplied Assembler copybook DFHWICCD is updated to enable IBM z/OS Workload Interaction Navigator with PTF UJ04388 to analyze multiple SMF files collected from multiple systems respectively and display the correlated anomalies across multiple systems for a single interval in one screen.

Hardware and system requirements: IBM z/OS Workload Interaction Correlator requires IBM z14 or z15 hardware and is provided in PTFs for APAR OA57165 for z/OS in V2R3 and V2R4.

Learn moreLearn more ...

Added by IBM Support

Support for Spring Boot applications packaged as WAR files

The CICS Liberty JVM server supports Spring Boot applications using the Spring application programming model. Spring was originally designed to simplify Java Enterprise Edition (EE), using plain old Java objects (POJOs) and dependency injection. It has since grown to extend and encompass many aspects of Java EE development.

Spring Boot builds on Spring by adding components to avoid complex configuration, reduce development time, and offer a simpler startup experience. Spring Boot applications can run on CICS without modification. It also is possible to configure Spring Boot applications for integration with CICS transactions and security, and to call the CICS API using JCICS when built as a web application archive (WAR). A Spring Boot application can be deployed and managed using CICS bundles in the same way as can other CICS Liberty applications.

The LINK capability is available in CICS TS V5.5 for Spring Boot applications packaged as WAR or JAR files. It is not available in CICS TS v5.4 or v5.3

Learn moreLearn more ...

Added by IBM Support

CICS-MQ trigger monitor and CICS-MQ bridge improvements

Available with APAR PH22136.

The CICS-MQ trigger monitor transaction CKTI now handles abends produced when starting user transactions. If an abend occurs when the CKTI transaction attempts to start the user transaction, rather than terminating, CKTI will now send the trigger message to the dead-letter queue, and trigger monitor processing continues.

Additionally, both the CICS-MQ trigger monitor transaction CKTI and the CICS-MQ bridge monitor transaction CKBR now handle temporary errors that occur when issuing MQOPEN and MQGET requests. Rather than terminating, CKTI and CKBR will retry every minute for up to an hour. If the error is not resolved after an hour, the monitor transactions will then terminate. This caters for errors caused by the loss of a coupling facility when the monitor transactions are processing shared queues. The IBM MQ queue manager can recover from a coupling facility failure, and when the connection is restored, bridge and trigger monitor processing will resume.

Added by IBM Support

Improved usage of BAS data space storage for large CICSplex environments

Available with APAR PH19761. The CICSPlex SM BAS component is now able to use all available BAS data space storage by spreading large resource deployment lists for BAS across multiple data spaces instead of being constrained to a single data space. This feature is controlled by the feature toggle com.ibm.cics.cpsm.bas.largecicsplex.

This feature is disabled by default, but you can opt into this feature by setting the feature toggle com.ibm.cics.cpsm.bas.largecicsplex=true.

Learn moreLearn more ...

Added by IBM Support

Enhanced adapter tracking for CICS Db2 applications

Available with APAR PH30252. The CICS Db2 attachment facility is enhanced to pass adapter data to Db2. If a CICS task that is accessing Db2 has adapter data in the CICS origin data, the adapter ID is passed as appl-longname and the adapter data is passed as an accounting-string. Db2 writes the data in its SMF accounting records and the data is also available online through the Db2 special registers CURRENT CLIENT_APPLNAME and CURRENT CLIENT_ACCTNG. This capability also requires Db2 12 with APAR PH31447 or higher.

Learn moreLearn more ...