Setting the IAM Global Options
The next step is to review and make whatever changes are necessary to the IAM Global Options. Many of the various default values for IAM can be changed in the IAM Global Options Table. For example, defaults for buffers, Data Compression, SMF recording and many others can be changed using this capability. The defaults are changed by executing the IAMZAPOP utility program. The use of this program and all of the default values and options are fully described in IAM Global Option Change Facility of the IAM User Manual. This section will discuss what is new and changed in this version, how to use the IAM Global Options change capability along with some examples, plus make some recommendations for changing some of the defaults.
New in Version 10
IAM Custom Zap Elimination — Several of the commonly used custom zaps have been replaced by a Global Option, implemented into the code as normal process, or put into the ICL library. The following table describes each of the custom zaps that have changed along with information on how to enable the processing for each of these custom zaps. Custom zaps are identified by the zap-id beginning with C-vv.nnnn, where vv is the version number for example 94, and nnnn is the zap number. Custom zaps for versions prior to 9.3 may have had a different zap number, so carefully check the description of each one.
IAM Custom zaps with description and conversion plan
Zap-ID | Module(s) | Description | Replacement Action |
---|---|---|---|
C-vv.0004 | IAMSTART | Coexistence with Hyperbuf | Global Option keyword ENABLE=HYPERBUF. Default is disabled, IAMSTART will do its normal installation with CDEs. Set Global Option ENABLE=HYPERBUF to activate the function of this custom zap. This will prevent IAMSTART from overlaying the Hyperbuf CDE when IAM is being installed. |
C-vv.0009 | IAMSTART | Allow IAMSTART to use link list instead of SYSLIB | This custom zap has been eliminated. If a SYSLIB DD is not available, then module will be obtained through normal z/OS standard search. |
C-vv.0028 | IAMACC | Avoid WTOR for Native interface | Implemented as permanent change. |
C-vv.0035 | IAMAMIOP | Change default mode from update to immediate | Custom zap is available in the ICL library from the IAM product install in member C100035. |
C-vv.0036 | IAMAMIOP | Provide for read only interface | Custom zap is available in the ICL library from the IAM product install in member C100036. |
C-vv.0046 | IAMCRT | Support high value key for fixed length records in Compatible format file. | Supported without need for custom zap. |
C-vv.0047 | IAMAMIZP | Increase maximum open tags | Custom zap is available in the ICL library from the IAM product install in member C100047. |
C-vv.0106 | IAM026DU | Do not set DSORG=VS for native IAM files not defined with IDCAMS. | Code changed to eliminate need for custom zap. |
C-vv.0119 | IAM0192A IAM0001I | MSG IEC161I 076 OPENING | For Compatible format files. Set as default action. |
C-vv.0132 | IAMDEFIN | Always set STORCLAS value from the IAM Global Option | New Global Option keyword of ENABLE=USESTORC. |
C-vv.0138 | IAMOVRID | Increase maximum OVERFLOW override to 9,000,000 | Permanent change for OVERFLOW override, no zap needed. |
C-vv.0208 | IAMOVRID | Increase maximum overrides from 200 to 400 | Made permanent change, no zap needed. |
C-vv.0217 | IAMDEFIN | Do not pass VOLSER from define on DYNALLOC for SMS. | New Global Option keyword of ENABLE=NOSMSVOL. |
C-vv.0828 | IAMAVSOC | Ignore UPDATENQ=NONE override for Enhanced Format files under RLS. | New Global Option keyword of ENABLE=NOUPDENQ, Default is disabled meaning that the UDPATENQ=NONE ACCESS override is honored and will facilitate the use of MVS Checkpoint / Restart services. Setting the Global Option ENABLE=NOUPDENQ will implement this custom zap to ignore the UPDEATENQ=NONE override for IAM Enhanced Format files to preserve the integrity of the IAM files but can prevent the use of Checkpoint Restart. |
C-vv.0830 | IAMCRTVS | Do not reduce secondary space on single volume data set | New Global Option keyword of ENABLE=USEX37. Default is disabled which allows IAM to reduce secondary space on single volume data sets to possibly prevent an X37 abend from occurring. Specify ENABLE=USEX37 to invoke this custom zap to indicate IAM IS not to reduce space. This will allow products that manage DASD space to make adjustments of secondary space and potentially add volumes to the data set. This will prevent IAM allocating several small extents. |
C-vv.0913 | IAM026DU | Allow Delete Cluster to delete a non-VSAM data set | New Global Option keyword of ENABLE=OLDELETE. Default is disabled, meaning that IAM will limit a DELETE CLUSTER to function on VSAM clusters or IAM non-VSAM data sets, to avoid accidental deletion of non-VSAM and non-IAM data sets. Set Global Option ENABLE=OLDELETE to have IAM allow a non-VSAM type of entry to be deleted even though the CLUSTER keyword was specified, as was done in much earlier versions of IAM for users that took advantage of that process. |
C-vv.0919 | IAMAMIOP | If caller specifies 0, increase to default of 5 for # random read positions | Custom zap is available in the ICL library from the IAM product install in member C100919. |
C-vv.0922 | IAMABUFR | Do not do sequential i/o chaining under CICS | New Global Option keyword of ENABLE=CICSNOSEQ. Default is disable, allowing IAM to read multiple blocks per I/O for sequential processing under CICS. This is not as aggressive as is done for batch processing. Set the Global Option ENABLE=CICSNOSEQ to activate this custom zap action. This prevents IAM from reading multiple blocks in a physical I/O request under CICS address spaces, and may provide some performance advantages when there is not a significant amount of sequential browsing activity. |
C-vv.924 | IAMABUFR | Limit ENDREQ write I/O to only write last block, not to do a flush buffer | New Global Option keyword of ENABLE=ENDREQNF to activate the function of this custom zap. Default Is disabled which means that IAM will perform a flush of all updated buffers when an ENDREQ is issued for a positioned request. Set the Global Option ENABLE=ENDREQNF which will perform the custom zap function of only writing out updated buffers that are directly related to the place holder. This will help to minimize I/O activity performed by ENDREQ that are being issued. |
C-vv.0925 | IAMAVSOC | Allow switch to different RLSID if currently have no data sets open to an IAMRLS address space. | Permanent change as normal action. |
C-vv.0926 | IAMACCXM | Reduce trigger point for RLS Fast Path processing. | New Global Option keyword of FASTPATH=nn where nn is number of sequential requests needed to trigger start of fast path I/O function under IAMRLS. |
C-vv.0930 | IAMAVSOC | Abide by data set share options under IAMRLS instead of always getting exclusive update enqueue. | New IAM Global Option keyword ENABLE=RLSDSNSO to perform the action of this custom zap. Default is that IAMRLS will always obtain an exclusive ENQUEUE for update processing on any IAM files opened under IAMRLS to protect a data set to only being updated by jobs using IAMRLS. Set Global Option ENABLE=RLSDSNSO meaning that IAMRLS will abide by the data set’s Share Options for the update enqueue. This can result in IAMRLS not having complete control of updates to a data set that can result in loss of data integrity for files being used under IAMRLS. |
C-vv.0931 | IAMDRCS | Reorg data set even if no extended area blocks | New IAM Global Option keyword of ENABLE=DRNOEXT. Default is that Dynamic Reorg will not reorganize a data set unless it has overflow or prime extension data blocks. Set Global Option ENABLE=DRNOEXT to enable the custom zap action of allowing Dynamic Reorg to reorganize a data set even if it has no extended area blocks. |
C-vv.0932 | IAMRLS IAMRINFO | Change reporting interval for RLS INFO reports, and eliminate line when no activity. | New IAM Global Option of ENABLE=NOARLSI. Set ENABLE=NOARLSI to reduce RLSINFO output when there are long periods of inactivity for the RLS or PLEX address space. |
New in IAM V9.4/01
The following IAM Global Options are either new in IAM Version 9.4/01, or have been revised.
ENABLE=AUTORECAT
IAM
has had a feature that automatically renames and recatalogs IAM AIX and PATH Data Set names if the Base Cluster is renamed. IAM users can now disable this option if they prefer to take care of AIX and PATH renames/recatalogs manually. The default behavior is that IAM will perform the automatic renames and recatalogs at Base Cluster open time, as has been the behavior in previous IAM releases.
New in IAM V9.4/00
The following IAM Global Options are either new in IAM Version 9.4/00, or have been revised.
- ENABLE=CICSBUF64 CICS default usage of 64-bit addressable virtual storage for IAM file buffers is now separately controllable from default 64-bit buffer usage of other types of address spaces with the ENABLE/DISABLE=BUF64 Global Option. ENABLE=CICSBUF64 is the default setting with IAM 9.4 and DISABLE=BUF64 continues to be the default setting for that Global Option. Users should make sure that their CICS regions have a MEMLIMIT setting that can accommodate 64-bit IAM buffer usage.
- CICSBUFSP=16384 The default CICSBUFSP Global Option increases from 1024 (K) to 16384 (K) (16M). This change goes hand in hand with the new default of ENABLE=CICSBUF64. If you decide that you prefer to run with DISABLE=CICSBUF64 then you should set a CICSBUFSP Global Option of the old default of 1024 or whatever value you used in your previous IAM release.
- ENABLE=IAMCAMS When enabled, specifies that during the define of an IAM encrypted data set, an IAMCAMS SYSOUT=* output file will be dynamically allocated. IAMCAMS output will show the underlying Linear Data Set IDCAMS Define statement used. The default is that this IAM Global Option is disabled. Typically a user would only need to review this output in a diagnostic situation. The user also has the ability to manually add a
//IAMCAMS DD SYSOUT=* statement to an encrypted IAM file Define step. - ENABLE=LOGVR When enabled, specifies that IAM journal exits will use the IAMLOGVR server address space to write LOGREPLICATE and FRLOG Logstream journal records rather than writing to the associated Logstream directly.
New in IAM V9.3
The following IAM Global Options are either new in IAM Version 9.3, or have been revised.
- ENABLE=LARGE This value is now enabled as the default setting for DSNTYPE to reflect the product default. Revising this option will not alter the default use of DSNTYPE=LARGE.
- ENABLE=SMSEXTOK This is a new Global Option that defaults to enabled. This indicates that during define processing, if the data set is initially presented to IAM as an SMS Extended Format data set, IAM will leave it as such and not force it to DSNTYPE=LARGE. If this option is set to DISABLE, then the DSNTYPE will be set to LARGE.
- MAXSECONDARY The maximum value that can be specified has been increased from 10 to 25. This may be of benefit to users converting SMS Extended Format data sets to DSNTYPE=LARGE.
- ENABLE=SPACEADJ A new Global Option that defaults to disabled. If this option is enabled and the SMSEXTOK option is disabled, IAM will adjust the primary and secondary space values requested during the define by the factor indicated in MAXSECONDARY when an SMS Extended Format data set is converted to DSYNTYPE=LARGE data set.
- ENABLE=NOLIMSEC New Global Option that defaults to disabled. The default is that the secondary space adjustment will not exceed the primary space. If enabled, then for file load processing this will not limit the secondary space adjustment to the primary space allocation.
- DATACOMPRESS=HWE This is a new option for the DATACOMPRESS keyword. Specifying HWE (or HWENHANCED will set default compression technique to hardware using the new enhanced dictionary build process. The default remains unchanged as DATACOMPRESS=SW for the software compression algorithm.
Always use the matching version of IAMZAPOP to set the Global Options for that specific version. Do not copy the old options directly from the load library of a different version.
New in IAM V9.2
The following are the new and changed Global Options for Version 9.2:
CRBUFOPT=64BIT The 64BIT is a new operand for the CRBUFOPT Global Option that specifies that the IAM file load process will acquire storage for two cylinders of buffers in above the bar (64-bit addressable virtual storage). The default value for CRBUFOPT as IAM is shipped remains as MCYL, which is two cylinders of buffers in 31-bit addressable storage.
- DATASPACE=2048 The default for this Global Option has been changed from 1024 to 2048, the maximum value permitted. This change was made because some users have encountered problems loading very large files that ended up failing due to insufficient data space storage with the prior default value.
- ENABLE or DISABLE= BUF64 This option when enabled specifies that IAM will attempt to acquire storage for buffers during normal access of IAM Enhanced Format files in 64-bit virtual storage. The default is that this is disabled, IAM will use 31-bit virtual storage. Note that use of BUF64 will increase CPU time due primarily to overhead of fixing the pages of 64-bit virtual storage.
- ENABLE or DISABLE= HPF This option when enabled specifies that IAM will automatically use z/HPF channel programs for volumes that the IOSZHPF macro indicates support such channel programs. The use of z/HPF channel programs when available enhances channel performance and may result in reduced time to perform I/O operations. The default is that HPF is enabled. The option to disable use of z/HPF is provided in case that usage is causing performance or functional problems.
- IAMW22LIM=nnnn Specifies up to a 4-digit number representing megabytes of storage used for the overflow index of an IAM data set. When more than the specified amount of storage is in use for any particular data set an IAMW22 message will be displayed indicating that a reorganization of the file may be necessary. The default value is 64. In prior releases the message appeared when the overflow index exceeded 16 megabytes.
New in IAM V9.1
The new and changed Global Options for Version 9.1 of IAM are:
- CICSTXID=cccc - This option sets the name of transaction IAM is to use for the IAM provided transaction to facilitate that IAM/RLS and IAM/PLEX functions for automatic disconnect and reconnect should those address spaces become unavailable. The default value is $IAM.
- ENABLE=SAFRC4 or DISABLE=SAFRC4 - This option when enabled will result in an IAMW28 warning message being issued if the security call issued by IAM when opening a data set indicated that no security decision was made, that is it was completed with a return code of 4. This option is provided to help ensure that your security software environment is functioning properly with IAM.
New in IAM V9.0
The following options are those that were new and changed for Version 9.0, is provided for those who are upgrading from IAM Version 8.1:
- ENABLE=XESDS or DISABLE=XESDS - This option will enable or disable 8-byte RBA’s as the default for ESDS files under IAM. If disabled then 4 byte RBA’s will be used unless overridden with the XESDS CREATE override.
- ENABLE=ESDSLOCK or DISABLE=ESDSLOCK -A new option to control the CI lock obtained on the high used RBA in an ESDS file while adding records. If any applications are adding records to an ESDS file and the applications are dependent on the order in which these adds are done, this option should be enabled. An exclusive control reason code will be returned to the application if the CI is locked and it can reissue the request. If the order of adds is not important then this option can be disabled to eliminate the exclusive control waits on the last CI.
- BELOWPOOL=YES - The default for this option has been changed to YES in V9.1. Many of our users have been using this option to reduce the below the line storage used by IAM file in CICS regions.
- DATASPACE=1024 - The default for this option has been changed from 256 to 1024 to allow for the maximum DATASPACE size of 2gig used for the INDEXSPACE.
- INDEXSPACE=64BIT - The default for this option has been changed from CICS to 64BIT which will cause above the bar 64BIT storage to be used for the INDEXSPACE if above the bar storage can be allocated. Depending on your installation you may need to specify a MEMLIMIT keyword on the EXEC card in job steps where you want to use the 64BIT INDEXSPACE. If above the bar storage cannot be obtained then a DATASPACE will be obtained for the INDEXSPACE instead. Changing this option to ALL or CICS will cause the INDEXSPACE to be used only and will bypass any 64BIT processing.
- LONGKEYS=33 - The default for this option has been changed from 128 to 33 as we have found this to be a better fit for most of our users. Users of Prior Versions of IAM
Users of Prior Versions of IAM
The first step in determining what, if any, Global Options should be changed is to find out what Global Options were changed previously. Users of prior versions can determine what Global Options they have changed in their current release through the use of the IAMZAPOP AUDIT function. This is a critical part of installing a new release or level of IAM to insure that existing applications will continue to run as they have with prior levels. Below is an example of running the AUDIT function.
Example of IAMZAPOP AUDIT Command
JCL to run AUDIT Function of IAMZAPOP (EX9004A)
//STEPLIB DD DISP=SHR,DSN=current.iam.loadlib
//SYSLIB DD DISP=SHR,DSN=current.iam.loadlib
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
AUDIT
/*
AUDIT Command Output
An example of the output from the AUDIT command follows. Note that it prints the name of the load library. The changed Global Option(s) keywords are displayed, followed by the current value, and the default value. From this example, we see that the following Global Options were changed:
- RECTYPE=201
- SMF=YES
These options are important to maintain across releases, as they provide for IAM SMF data to be collected, and enable customers to obtain reports on IAM activity using the IAMSMF or IAMSMFVS programs, or their own programs.
Example of Output from AUDIT Command
IAM303 CARD IMAGE - * AUDIT 00060000*
IAM491 AUDIT OPTIONS FUNCTION STARTED - 08.12.31
IAM541 THE FOLLOWING OPTIONS HAVE BEEN CHANGED IN -- IAMX.TESTLIB
RECTYPE SMF RECORD TYPE -----------------------------201 DEFAULT---------000
SMF SMF RECORDING ENABLED -----------------------YES DEFAULT----------NO
IAM547 AUDIT REQUEST COMPLETE FOR --- IAMX.TESTLIB
IAM492 AUDIT OPTIONS FUNCTION ENDED - 08.12.31 - CONDITION CODE 000
IAM499 IAMZAPOP(9.4/01P ) PROCESSING COMPLETED
Recommended Global Option Changes
The next step, after determining what Global Options had been changed for the prior version, is to review the various default values and determine which, if any, would provide a benefit to your installation. IAM-Global-Option-Change-Facility of the IAM User space describes the various options available. We recommend that you consider changing the following Global Option values from their default settings.
- Set ESDSINTEGRATED=5 or higher to allow for updates to ESDS files to remain in their original block. While VSAM (and IAM) do not allow a record length to change on update processing for ESDS files, the record lengths can change due to data compression. It is better for overall performance to minimize the use of overflow, as much as possible which is accomplished by defaulting to providing some integrated overflow for updated ESDS files.
- Set SMF=YES and RECTYPE=201 to enable the IAM SMF records. This will provide a way, through SMF reports, to monitor and track IAM data set usage. With this option enabled, the IAMINFO reports will be available from the IAM SMF records. This may prevent rerunning jobs just to obtain an IAMINFO report, should one be necessary. Valid record types are from 128 to 255. Make sure to select a record type that is not being produced by other software packages.
There are also a few options that you may have to set for compatibility with other software products. In particular, the following options may have to be set as indicated:
- Set DYNCAT=YES if you are using the BMC MAINVIEW product.
- Set ENABLE=BIM if you have any of the VSAM products from B. I. Moyle.
- Set ENABLE=VAM if you have CA-ALLOCATE.
- Set ENABLE=SAFRC4 if you are using a product other than RACF for security, such as ACF2 or Top Secret to make sure that security decisions are being when opening data sets.
- Leave DSORG=PS set, particularly if you use DFSMSdss or DFSMShsm to backup your data sets. If IAM files have a DSORG of DA set, these products may not be able to restore IAM data sets, particularly if they are multi-volume.
Other Global Option Considerations
There are a few other Global Options that should also be considered, which may need to be set depending on your installation requirements. These include the following:
- While rather rare, there are some applications that require the setting of the Global Option ENABLE=NOREUSE for proper function. Such applications require an open error to occur when opening a non-reusable VSAM data set to prevent overlaying a previously loaded file. By setting this Global Option, IAM will follow VSAM rules for reloading data sets without a Delete and Define as based on the Define parameters.
- If you already have CICS regions of 512 megabytes or higher, then consider raising the default value for MAXREGION to allow IAM to increase the region of those CICS systems if necessary. With a default value of 512 megabytes, IAM will not be able to increase the region for CICS systems that already have the large region value.
- If X37 abends have been a problem, consider revising the MAXSECONDARY default values. This facility acts as a multiplier that IAM will use when requesting another extent. Because IAM files that are not DFSMS Extended Format are limited to 16 extents per volume, use of this facility will increase the amount of DASD space requested without having to change the IDCAMS DEFINE. This option is not used for IAM files that are in the DFSMS Extended Format.
- Consider how you prefer allocations to work for multi-volume data sets. Depending on this option, IAM will request either the primary or secondary space when it appears that a volume switch will occur. The keyword is MULTIVOLUME=[ PRIMARY | SECONDARY]. Because IAM does not have control over whether or not a volume switch occurs, this may not always work as desired, particularly when the primary space value is less than the secondary. This option is not used for IAM files that are in the DFSMS Extended Format.
- If you have a DFSMS STORCLAS that causes data sets to not be SMS managed, such as NONSMS, then set the IAM Global Option STORCLAS to that value.
Setting IAM Global Options
Once you have decided on the Global Options you want to change, use the program IAMZAPOP to change them. Global Options can also be changed subsequent to the product installation as may be needed. The following JCL and control card example demonstrates how to set the recommended Global Option values. See to IAM Global Option Change Facility for complete information on setting and changing the IAM Global Options Table.
Example of setting Recommended Global Option Values (EX9004B)
//STEPLIB DD DISP=SHR,DSN=new.iam.loadlib
//SYSLIB DD DISP=SHR,DSN=new.iam.loadlib
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
ZAP ESDSINTEGRATED=5,SMF=YES,RECTYPE=201
/*
The above example also includes a PRINT command. This will print out the Global Option settings, and can be done whenever a list is necessary. It is a good idea to review this listing, to make sure that the Global Options are set as you expect them to be. The PRINT command does not need to be preceded by the ZAP command, so a listing of your Global Options can be obtained whenever necessary. This listing of your Global Options can also be obtained through the IAM ISPF panels.