IMS 15 Systems Enhancements - IMS UG Oct 2017 Omaha

29
© 2014 IBM Corporation © 2012 IBM Corporation IMS Version 15 © 2017 IBM Corporation IMS 15 Systems Enhancements

Transcript of IMS 15 Systems Enhancements - IMS UG Oct 2017 Omaha

Page 1: IMS 15 Systems Enhancements - IMS UG Oct 2017 Omaha

© 2014 IBM Corporation© 2012 IBM Corporation

IMS Version 15

© 2017 IBM Corporation

IMS 15 Systems Enhancements

Page 2: IMS 15 Systems Enhancements - IMS UG Oct 2017 Omaha

IMS Version 14 IMS Version 15

Systems: 343

IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice at IBM’s sole discretion. Information regarding potential future products is intended to outline our general product direction and it should not be relied on in making a purchasing decision. The information mentioned regarding potential future products is not a commitment, promise, or legal obligation to deliver any material, code or functionality. Information about potential future products may not be incorporated into any contract. The development, release, and timing of any future features or functionality described

for our products remains at our sole discretion.

IBM, the IBM logo, ibm.com, z Systems, IMS, and z/OS are trademarks or registered trademarks of International Business

Machines Corporation in the United States, other countries, or both. If these and other IBM trademarked terms are marked

on their first occurrence in this information with a trademark symbol (® or ™), these symbols indicate U.S. registered or

common law trademarks owned by IBM at the time this information was published. Such trademarks may also be

registered or common law trademarks in other countries. A current list of IBM trademarks is available on the Web at

“Copyright and trademark information” at www.ibm.com/legal/copytrade.shtml

Other company, product, or service names may be trademarks or service marks of others.

THE INFORMATION CONTAINED IN THIS PRESENTATION IS PROVIDED FOR INFORMATIONAL PURPOSES ONLY.

WHILE EFFORTS WERE MADE TO VERIFY THE COMPLETENESS AND ACCURACY OF THE INFORMATION

CONTAINED IN THIS PRESENTATION, IT IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EXPRESS OR

IMPLIED. IN ADDITION, THIS INFORMATION IS BASED ON IBM’S CURRENT PRODUCT PLANS AND STRATEGY,

WHICH ARE SUBJECT TO CHANGE BY IBM WITHOUT NOTICE. IBM SHALL NOT BE RESPONSIBLE FOR ANY

DAMAGES ARISING OUT OF THE USE OF, OR OTHERWISE RELATED TO, THIS PRESENTATION OR ANY OTHER

DOCUMENTATION. NOTHING CONTAINED IN THIS PRESENTATION IS INTENDED TO, NOR SHALL HAVE THE

EFFECT OF, CREATING ANY WARRANTIES OR REPRESENTATIONS FROM IBM (OR ITS SUPPLIERS OR

LICENSORS), OR ALTERING THE TERMS AND CONDITIONS OF ANY AGREEMENT OR LICENSE GOVERNING THE

USE OF IBM PRODUCTS OR SOFTWARE.

© Copyright International Business Machines Corporation 2017. All rights reserved.

U.S. Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with

IBM Corp.

Trademarks, copyrights, and disclaimers

Page 3: IMS 15 Systems Enhancements - IMS UG Oct 2017 Omaha

IMS Version 14 IMS Version 15

Systems:

Topics

CQS Automatic Structure Checkpoint

CQS Unique Return Code for z/OS Logger Write Errors

Reduce IMS Sysgen

VSAM VATVPTR Clearing

Enhanced Error Handling for OLC

Enhanced DFSQUEI0 AOI Exit Interface

Eliminate need to calculate CNBA for DRA

Minimum thread specification for ODBM

IMS ESS (External Subsystem) Enhancements

Logger Media Manager Support

344

Page 4: IMS 15 Systems Enhancements - IMS UG Oct 2017 Omaha

IMS Version 14 IMS Version 15

Systems:

CQS Automatic Structure Checkpoint

CQS takes a structure checkpoint based on log record volume

– When specified number of log records are written to the structure, CQS

internally triggers a structure checkpoint

This new automatic structure checkpoint option is in addition to any

existing automation processes designed to take a structure checkpoint

CQS structure checkpoints may still be taken using IMS commands

345

>>-STRUCTURE(STRNAME=name,CHKPTDSN=name-

'-,BATCHDEL=YES-'+------------------+-+---------------+-+------------------+)-><

'-,SYSCHKPT=number-' '-,BATCHDEL=NO--' '-,STRCHKPT=number-'

/CQCHKPT SHAREDQ

And via Type2 command

CQSCHKPT FUNC=CHKPTSTR CQS

Page 5: IMS 15 Systems Enhancements - IMS UG Oct 2017 Omaha

IMS Version 14 IMS Version 15

Systems: 346

CQS Automatic Structure Checkpoint - User Exits

The current Structure Event User Exit is called to notify users of structure

event processing (such as an automatic structure checkpoint)

The Structure Statistics User Exit allows users to gather structure related

statistics

– The existing structure checkpoint statistics, mapped by DSECT CQSSSTT7, will

contain new field SS7LGCT1 containing the current log record count

– The value is updated at every structure checkpoint

The new SS7LGCT1 statistic field is added to the end of the current

Structure checkpoint statistics table:

– Structure checkpoint statistics entry

Field name Offset Length Field usage Description---------- ------ ------ ----------- -------------------------------------. . .SS7WRTS X'5C' X'04' Input Number of SRDS writes requiredSS7LGCT1 (new) X'60' X'04' Input Number of current log records written

Page 6: IMS 15 Systems Enhancements - IMS UG Oct 2017 Omaha

IMS Version 14 IMS Version 15

Systems: 347

CQS Automatic Structure Checkpoint Log Records –CQS Structure Statistics

Existing log record X‘6001’, CQS Structure Statistics, contains

the new field “SS7LGCT1”

– Holds the number of log records that has currently been written in

the structure checkpoint statistics

DFSERA10, with exit CQSERA30, can be used to format the

x’6001’ log record structure statistics in the log stream

SYSLOG.MSGQ01.LOG

Page 7: IMS 15 Systems Enhancements - IMS UG Oct 2017 Omaha

IMS Version 14 IMS Version 15

Systems:

Challenge

– Some z/OS logger write related errors return a generic return code

– The z/OS logger related issues may not be singled out for handling

separately and this could lead to a system outage

Solution

– Create new unique return and completion codes for the z/OS logger

write related errors

– New unique CQS-to-clients feedback for the z/OS logger write related

errors

Benefit

– Serviceability

• Eases problem determination and speeds problem analysis

CQS Unique Return Code for z/OS Logger Write Errors

348

Page 8: IMS 15 Systems Enhancements - IMS UG Oct 2017 Omaha

IMS Version 14 IMS Version 15

Systems:

CQS Shared Queues Logger Error Return

IMS CQS

Write dataAPI Request

Log data

IMS

QMGR

z/OS

LOGGER

Structure

Shared

queues

LOG Write ErrorLOG Write Error

1

2

3

349

CQSPUT , CQSREAD , and CQSMOVE requests can receive new reason codes.

CQSUNLCK and CQSCHKPT requests can receive new completion codes.

Page 9: IMS 15 Systems Enhancements - IMS UG Oct 2017 Omaha

IMS Version 14 IMS Version 15

Systems:

Reduce IMS Sysgen

Eases provision of an IMS System

– Remove building of sample PROCs from system generation

• now built during SMP/E processing and placed in the new

ADFSPROC and SDFSPROC library data sets.

– Eliminate the IMS.OPTIONS dataset

– Eliminate BUFPOOLS macro

• Specify in DFSPBxxx or use IMS Default values

– Eliminate IMSCTF Macro

– Remove user exits from system generation and the NUCLEUS

Continue long-term goal of eliminating IMS system definition and

generation

Business Value

– Simplifies IMS

350

Page 10: IMS 15 Systems Enhancements - IMS UG Oct 2017 Omaha

IMS Version 14 IMS Version 15

Systems:

Solution Highlights

IMSCTF Support:

– IMSCTF macro is ignored during Stage 1 System Definition

• Message G122 issued as an MNOTE 2 if IMSCTF is specified

– CPLOG must now be specified in DFSPBxxx/JCL

– LOG is obsolete

• DUAL/MONITOR DD statements available in new

SDFSPROC/ADFSPROC libraries

– PRDR must now be specified in DFSPBxxx/JCL

– RDS must now be specified in DFSPBxxx/JCL

– SVC2 and SVC4 must now be specified in DFSIDEF0

• Enhanced to support SVC specifications

• DFSIDEF0 loaded in all environments in 15, was only processed by Batch

in 14

351

Page 11: IMS 15 Systems Enhancements - IMS UG Oct 2017 Omaha

IMS Version 14 IMS Version 15

Systems:

VSAM VATVPTR Clearing

IMS 13 and 14, and prior releases, clear the VSAM control block pointer

VATVPTR by default during IMS batch (DFSRRC00) initialization

– This can cause DBRC errors in JOBs that access the RECONs and then

attach an IMS batch program

APARs PI48618 (V14), PI47278 (V13), and PI47270 (V12), provide a way for

programs to tell IMS NOT to clear the field

IMS 15, the default has been changed:

– IMS will not clear VATVPTR at startup by default

– Products which require VATVPTR to be cleared (eg. test tools) must use the

interface employed by the above APARs to tell IMS to clear the field

This primarily affects vendor test/debug tools that can attach multiple batch jobs

in an address space

352

Page 12: IMS 15 Systems Enhancements - IMS UG Oct 2017 Omaha

IMS Version 14 IMS Version 15

Systems:

Enhanced Error Handling for OLC

Online Change enhancement for FMTLIB user error handling

– Addresses ABENDU904 by rejecting the command with an error indicator

• Local OLC: /MODIFY COMMIT

– New message - DFS4596E OLC COMMIT REJECTED. INVALID MEMBER IN

FMTLIB ddname -nn fmtname

Note: first 2 characters of fmtname are in hex and may not be the same as

what is shown when browsing the dataset in TSO

• Global OLC: INITIATE OLC PHASE(COMMIT) TYPE(FMTLIB)

– New completion code – CC=80 Dataset error

– User response

• Delete the invalid member from the FMTLIB dataset and retry the

command or abort the online change

Benefit

– Prevention of an IMS Abend U094

353

Page 13: IMS 15 Systems Enhancements - IMS UG Oct 2017 Omaha

IMS Version 14 IMS Version 15

Systems:

Enhanced DFSQUEI0 AOI Exit Interface

The DFSAOUE0 AOI Exit Interface module, DFSQUEI0, has been

modified to obtain storage from the AOIP pool instead of the CIOP

– The UEHB and any additional buffers passed to the DFSAOUE0 exit are now

obtained from 31-bit storage

– If storage cannot be obtained from the AOIP pool, the new DFS3458

message will be issued

• DFS3458 INSUFFICIENT STORAGE AVAILABLE IN AOIP POOL

– The DFSAOUE0 AOI Exit Interface module, DFSQUEI0, was called to pass a

command to the type-1 AO user exit (DFSAOUE0). DFSQUEI0 failed to obtain

storage from the Automated Operator Interface (AOI) Pool

Benefit

– More efficient use of storage

354

Page 14: IMS 15 Systems Enhancements - IMS UG Oct 2017 Omaha

IMS Version 14 IMS Version 15

Systems:

Eliminate need to calculate CNBA for DRA

DRA Runtime

– CCTL (CICS) environments accessing IMS FP databases

– ODBM RRS=N environments accessing IMS FP databases

Current

– The current restriction of 9999 CNBA buffers for CCTLs can limit the number of parallel

DRA Threads that can be allowed for that CCTL.

Solution

– IMS will calculate the total number of FP buffers (CNBA) to allocate for a CCTL (CICS)

or ODBM RRS=N connecting to IMS

– Dynamically expand FP buffers assigned to a CCTL when using 64 bit FP buffer

manager

– Allow the CNBA= parameter to be specified as 0 when FPBUF= and FPBOF= are non-

zero.

• IMS can calculate and can grow each thread up to FPBUF max.

Benefit

– With 64-bit FP buffer support, the CNBA limitation is not needed; allowing more buffers

allows for more scalability for CCTL usage

– Increase scalability for Open Database

355

Page 15: IMS 15 Systems Enhancements - IMS UG Oct 2017 Omaha

IMS Version 14 IMS Version 15

Systems: 356

DFSPRP MacroCCTL(DFSPZPxx)/ODBA(DFSxxxx0)

//DFSIVP10 EXEC PROC=ASMDRA,MBR=DFSIMSP0

//ASM.SYSIN DD *

DFSIMSP0 CSECT

DFSPRP DSECT=NO,

CNBA=0|NNNN Total Fast Path NBA buffers for CCTL/ODBA use

DBCTLID= IMSID default SYS1

DDNAME= ddname default CCTLDD

DSNAME= data set name default IMS.SDFSRESL

FPBOF=NNNN Fast Path DEDB overflow buffers default 00

FPBUF=NNNN Fast Path DEDB buffers default 00

FUNCLV= CCTL/ODBA DRA level. Use default

GENSNAP= SNAP output in DFSPAT20 default YES

IDRETRY= IDENTIFY to IMS retry default 0

IMSPLEX= ODBA routes calls to the ODBM address space

MAXTHRD= DRA MAX threads max 4095 default 1

MINTHRD= DRA MIN threads max 4095 default 1

ODBMNAME= ODBM name ODBA interface routes ODBA calls

OPENTHRD= DRA Open Thread support DISABLE is default

SOD= SNAP DUMP output class default is A

TIMEOUT= Time CCTL waits completion of DRA TERM

TIMER= time between attempts DRA identify to IMS

TIMETHREADCPU= DRA CPU usage statistics DRA Open Thread

USERID= Name of the CCTL region

END

//*

Page 16: IMS 15 Systems Enhancements - IMS UG Oct 2017 Omaha

IMS Version 14 IMS Version 15

Systems: 357

ODBM Configuration Member CSLDCxxx

• FPBUF=0 | nnnn

– Number of Fast Path DEDB buffers allocated and fixed per thread

– Maximum is 9999

• FPBOF=0 | nnnn

– Number of Fast Path DEDB overflow buffers allocated per thread

– Maximum is 9999

• CNBA=0 | nnnn

– Total Number of Fast Path NBA buffers for ODBM's use

– Range 1K-32K

– Maximum is 9999

<SECTION=GLOBAL_DATASTORE_CONFIGURATION>

Page 17: IMS 15 Systems Enhancements - IMS UG Oct 2017 Omaha

IMS Version 14 IMS Version 15

Systems:

Minimum thread specification for ODBM

Challenge

– ODBM calculates minimum thread value does not allow tuning

Solution

– IMS APAR PI64152 New ODBM MINTHRDS parameter

Business Value

– Provides ability to balance the competing performance factors of having

excessive

• thread creation and termination processes due to a too low value minimum

value

• control blocks allocated for open threads due to a too high minimum value

Target Market:

All IMS ODBM

Page 18: IMS 15 Systems Enhancements - IMS UG Oct 2017 Omaha

IMS Version 14 IMS Version 15

Systems:

IMS ESS (External Subsystem) Enhancements

Challenge

– ESAF SIGNON ACEE Performance

– ESAF Connection Thread pooling

– ESAF Db2 JCC statement caching

Solution

– IMS APAR PI64496 ESAF SIGNON ACEE Performance Enhancement

• IMS creates the ACEE only once for the ESAF thread commit cycle and

passes the ACEE to the ESS through the Signon exit routine

– ESAF Connection Thread pooling - IMS Associate Thread Exit

• Db2 utilizes ESAF Associate thread exit support

– IMS APAR PI60400 ESAF Db2 JCC statement caching

• Db2 JCC utilizes ESAF Connection Thread Pooling

Business Value

– Reduce performance impact ESS creating/ACEE for every ESAF Call

– Improve efficiency of connection thread management

– Improve runtime efficiency of dynamic prepared SQL statements

Target Market:

All IMS External Subsystem

users

Page 19: IMS 15 Systems Enhancements - IMS UG Oct 2017 Omaha

IMS Version 14 IMS Version 15

Systems: 360

ESAF SIGNON ACEE PERFORMANCE ENHANCEMENT FOR PERSISTENT JVM MPP, IFP, BMP, JMP, JBP Regions

Performance impact ESS creating/ACEE for every ESAF call when

needed.

An option has been added to the ENVIRON= member called

– ESAF_SIGNON_ACEE=YES | NO. The default is NO.

• External Subsystem create/manage the ACEE for every ESAF call

– ESAF_SIGNON_ACEE=YES is specified,

• IMS will create/manage the ACEE in a persistent JVM dependent region

• Mutually exclusive with OTMA FULL

New ACEE address parm to the ESAF Signon exit parm list

New DFS549I message indicate function enabled for dependent region

– DFS549I ESAF SIGNON ACEE ENABLED

Note:

– ESAF_SIGNON_ACEE=YES overrides the DFSBSEX0 exitmanaging the

Page 20: IMS 15 Systems Enhancements - IMS UG Oct 2017 Omaha

IMS Version 14 IMS Version 15

Systems:

ESAF Db2 Connection Thread pooling

ESAF Associate thread exit support delivered in IMS 14

Db2 delivered ESAF support DSNMIN20

– APARs PI41599, PI41600 and PI41601

Support connection thread pooling utilizing ESAF Associate thread exit

Max 50 connection thread pool entries

Each pool entry is keyed off of a Db2 plan name plus the active user

name

Default Db2 plan name is IMS application program load

module name

Db2 with DSNMIN10 supports only one to one connection

Page 21: IMS 15 Systems Enhancements - IMS UG Oct 2017 Omaha

IMS Version 14 IMS Version 15

Systems: 362

ESAF Db2 Connection Thread pooling

POOL 1-50 Entries

Thread 1

UID1PGM1

Thread 2

UID3PGM3

Transaction 1

UID1

Schedule

PGM 1

Associate

Thread

Exit (pooling)

Dependent Region

StartESAF identify

ESAF Sign-on

User ID 1

ESAF Create

ThreadApplication

Processing

Application

Termination

and ESAF

Terminate

Thread

Transaction 1

UID1Schedule

PGM 1

Associate

Thread

Exit (pooling)

ESAF Sign-on

User ID 1ESAF Create

Thread

( Uses Thread 1 )

Application

Processing

DB2 puts in

thread pool

(eg:Thread 1

UID1/PGM1)

Transaction 3

UID3

Application

ProcessingESAF Sign-on

User ID 3

Associate

Thread

Exit (pooling)

Schedule

PGM 3

ESAF Create

Thread

(New Thread 2)

Application

Termination

and ESAF

Terminate

Thread

DB2 puts in

thread pool

(eg: Thread 2

UID3/PGM3)

CTHREAD and MAXDBAT values set in Db2 ZPARM

IMS ESAF SSM SST=DB2,SSN=GRP1,LIT=SYS1,ESMT=DSNMIN20,REO=R,CRC=-

Page 22: IMS 15 Systems Enhancements - IMS UG Oct 2017 Omaha

IMS Version 14 IMS Version 15

Systems:

Db2 JCC Statement Caching

Runtime

– IMS 14/15 persistent JVM MPP, IFP,BMP regions with Db2 JCC

• JMP and JBP not supported

Current

– Db2 JCC dynamically prepared SQL statements are not cached causing

additional CPU utilization to re-prepare them in each transaction.

Solution

– Enable Db2 JCC statement caching

• JCC prepared statements cache will associate SQL entries in the pool with

the received ESAF thread token

Benefit

– Improve runtime efficiency of dynamic prepared SQL statements

363

Page 23: IMS 15 Systems Enhancements - IMS UG Oct 2017 Omaha

IMS Version 14 IMS Version 15

Systems:

Setup

MPP,IFP,BMP where JVM is launched

Configure IMS SSM member

SST=DB2,SSN=GRP1,LIT=SYS1,ESMT=DSNMIN20,REO=R,CRC=-

Configure IMS DFSJVMEV(ENVIRON=) member

DB2JCC_ESAF_THREAD_NOTIFICATION= YES | NO

NO is default Note: DB2JCC_ESAF_THREAD_NOTIFICATION=YES is MANDATORY

When application issues JCC calls

DB2 IMS attachment thread pooling is enabled

Set “KEEPDYNAMIC ” to YES

property in com.ibm.db2.jcc.DB2BaseDataSource

Set “maxStatements” > 0

property in com.ibm.db2.jcc.DB2BaseDataSource

maxStatements default is 0 pooling is disabled

Db2 JCC Statement Caching

364

Page 24: IMS 15 Systems Enhancements - IMS UG Oct 2017 Omaha

IMS Version 14 IMS Version 15

Systems: 365

Logger Media Manager Support

Page 25: IMS 15 Systems Enhancements - IMS UG Oct 2017 Omaha

IMS Version 14 IMS Version 15

Systems:

Logger Parms Moved to DFSDFxxx

In IMS 15, the IMS Logger parameters are consolidated in DFSDFxxx

– In a new <SECTION=LOGGER>

– Optional enablement of zHyperWrite support for both WADS and OLDS

– The DFSDFxxx member of PROCLIB is now mandatory

– Having all the Logger parms in one location will simplify the IMS definition

process

– Continuous Delivery: To increase IMS system availability, the zHyperWrite

parameters will be modifiable using an IMS type-2 command

– IMS 15 is the first IMS release where the DFSDFxxx member of the

PROCLIB data set is mandatory.

366

Page 26: IMS 15 Systems Enhancements - IMS UG Oct 2017 Omaha

IMS Version 14 IMS Version 15

Systems:

Logger’s Use of MM for Writing to the WADS

IMS 15 Logger will use DFSMS Media Manager for all WADS I/O

– Logger’s use of Media Manager for WADS I/O is not optional

– WADS data sets must be defined as VSAM Linear Data Sets

– DFSMS Media Manager is a no-charge feature

– Media Manager leverages zHyperWrite to reduce replication latency

– Media Manager uses zSystem High Performance FICON (zHPF) to

increase Logger throughput, when available

IMS Logger processing can run faster and consumes fewer resources

Exploiting hardware features zHPF and zHyperWrite can increase

IMS throughput by reducing WADS replication latency and overall

WADS I/O time

– Customers who experience replication problems when mirroring WADS

data sets will benefit most, but all customers can benefit

367

Page 27: IMS 15 Systems Enhancements - IMS UG Oct 2017 Omaha

IMS Version 14 IMS Version 15

Systems:

IMS Logging in IMS 15

368

(VSAM LDS)

IMS 15 Requires that the WADS be defined as a VSAM Linear Data Sets

Page 28: IMS 15 Systems Enhancements - IMS UG Oct 2017 Omaha

IMS Version 14 IMS Version 15

Systems:

OLDS use of zHyperWrite

– OLDS must be extended format data sets

• OLDS are already extended format if above-the-bar storage is

being used for the LOG buffers

• BUFSTOR=64 parameter of OLDSDEF statement

369

Page 29: IMS 15 Systems Enhancements - IMS UG Oct 2017 Omaha

IMS Version 14 IMS Version 15

Systems:

Logger’s Exploitation of Hardware Features

Logger’s use of Media Manager positions IMS to exploit newer

hardware features

– zHyperWrite – part of the zSystem I/O Supervisor

• Can reduce replication latency in HyperSwap-Managed metro

mirror environments

– zHPF - High Performance FICON for System z

• Increases I/O throughput, when accessing data on IBM DS8000

family storage

Media Manager’s interface is much more user-friendly than typical

channel programming

370