SET SYSTEM

Change CICS® system option values.

SET SYSTEM

Read syntax diagramSkip visual syntax diagramSET SYSTEMAKP( data-value)DEBUGTOOL( cvda)DEBUGNODEBUGDSALIMIT( data-value)DSRTPROGRAM( data-value)DTRPROGRAM( data-value)DUMPING( cvda)NOSYSDUMPSYSDUMPEDSALIMIT( data-value)FORCEQR( cvda)FORCENOFORCEGMMTEXT( data-value)GMMLENGTH( data-value)LOGDEFER( data-area)MAXTASKS( data-value)NEWMAXTASKS( data-area)MROBATCH( data-value)PROGAUTOCTLG( cvda)CTLGALLCTLGMODIFYCTLGNONEPROGAUTOEXIT( data-value)PROGAUTOINST( cvda)AUTOACTIVEAUTOINACTIVEPRTYAGING( data-value)RUNAWAY( data-value)SCANDELAY( data-value)TIME( data-value)

Conditions: INVREQ, LENGERR, NOSTG, NOTAUTH, NOTSUPERUSER

Start of changeThis command is threadsafe.End of change

Note:
  1. For more information about the use of CVDAs, see CICS-value data areas (CVDAs).
  2. The CSCS, ECSCS, USCS, EUSCS, and ERSCS options, each of which returned the size of the storage cushion for a particular dynamic storage area, are obsolete. To maintain object compatibility, they are accepted at run time but ignored. The translator also accepts them, but issues a warning message.

Description

Use the SET SYSTEM command to change the values of some options that control how your CICS system runs.

These values are set initially by system initialization parameters. System initialization parameters that correspond to those in this command have the same or similar names, except where noted. Table 1 lists the exact correspondence.

Options

AKP(data-value)
Specifies, as a fullword binary value, the activity keypoint trigger value, which is the number of write requests to the CICS system log stream output buffer between the taking of keypoints. The number must be either zero, which turns off keypointing, or in the range 50–65535. If CICS was initialized without keypointing (that is, with the AKPFREQ system initialization parameter set to zero), the initial value can be overridden and a trigger value can be set.
DEBUGTOOL(cvda)
Specifies a CVDA value that indicates whether to use debugging profiles to select the programs that will run under the control of a debugging tool. The following debugging tools use debugging profiles:
  • Debug Tool, for compiled language application programs (programs written in COBOL, PL/I, C, C++ and Assembler)
  • Remote debugging tools (for compiled language application programs and Java™ programs)
Other debugging mechanisms, for example the CICS Execution Diagnostic Facility (CEDF), do not use debugging profiles.
The CVDA values are as follows:
DEBUG
Specifies that you want to use CICS debugging profiles to select the programs that will run under the control of a debugging tool.
NODEBUG
Specifies that you do not want to use CICS debugging profiles to select the programs that will run under the control of a debugger tool.

For more information about using debugging profiles, see Debugging profiles.

DSALIMIT(data-value)
Specifies, as a fullword binary value, the maximum amount of storage, in bytes, within which CICS can allocate storage for the four individual dynamic storage areas (DSAs) that reside below 16 MB (below the line). If DSALIMIT specifies a value lower than the current limit, CICS might not implement the new limit immediately, but attempts to do so over time as storage is freed. The range for DSALIMIT is 2 - 16 MB. For more information, see DSALIM system initialization parameter.
Note: That while you are changing the DSA limits dynamically is possible, it is recommended that you do not do so unless you are addressing an urgent situation and are trying to avoid cycling the region. While your change to the DSA limits might be successful from the CICS perspective, increasing the limits can cause other problems because the larger DSA will no longer be contiguous. MVS™ allocates storage both from high private growing down, and low private growing up. Increasing the DSA limits dynamically will cause a new piece of storage that is allocated by CICS in the middle of the MVS private storage area. Depending on the MVS use of storage in this area, you might now be at increased risk of an S878 or S80A abend as a result.

Similarly, decreasing the DSA limits dynamically might indeed give back storage to MVS for use, but there is no certainty where the storage given back will be, and it most likely will not be in an area where MVS needed it.

Monitor CICS statistics regularly, and proactively adjust DSA limits, and MXT limits.

DSRTPROGRAM(data-value)
Specifies the 8-character name of the distributed routing program.
DTRPROGRAM(data-value)
Specifies the 8-character name of the dynamic routing program.
DUMPING(cvda)
Specifies a CVDA value that indicates whether the taking of CICS system dumps is suppressed. CVDA values are as follows:
NOSYSDUMP
System dumps are suppressed.
SYSDUMP
System dumps are not suppressed.
EDSALIMIT(data-value)
Specifies, as a fullword binary value, the maximum amount of storage, in bytes, within which CICS can allocate storage for the individual dynamic storage areas that reside above 16 MB but below 2 GB (above the line). If EDSALIMIT specifies a value lower than the current limit, CICS might not implement the new limit immediately, but attempts to do so over time as storage is freed. For more information, see EDSALIM system initialization parameter.
Note: That while you are changing the EDSA limits dynamically is possible, it is recommended that you do not do so unless you are addressing an urgent situation and are trying to avoid cycling the region. While your change to the EDSA limits might be successful from the CICS perspective, increasing the limits can cause other problems because the larger EDSA will no longer be contiguous. MVS allocates storage both from high private growing down, and low private growing up. Increasing the EDSA limits dynamically will cause a new piece of storage that is allocated by CICS in the middle of the MVS private storage area. Depending on the MVS use of storage in this area, you might now be at increased risk of an S878 or S80A abend as a result.

Similarly, decreasing the EDSA limits dynamically might indeed give back storage to MVS for use, but there is no certainty where the storage given back will be, and it most likely will not be in an area where MVS needed it.

Monitor CICS statistics regularly, and proactively adjust EDSA limits, and MXT limits.

FORCEQR(cvda)
Specifies whether CICS forces all user application programs specified as CONCURRENCY(THREADSAFE) to run under the CICS QR TCB, as if they were specified as CONCURRENCY(QUASIRENT) programs.

You can use this option, in a test environment, to run incompletely tested threadsafe application programs that have proved to be non-threadsafe.

The FORCEQR option applies to all programs defined as threadsafe that are not invoked as task-related user exits, global user exits, or user-replaceable modules.

CVDA values are as follows:
FORCE
Force all CICSAPI user application programs to run under the QR TCB, even if they are defined with the CONCURRENCY(THREADSAFE) attribute. Force does not apply to certain programs, for example OPENAPI programs, or C or C++ programs compiled with XPLINK. For details, see FORCEQR system initialization parameter.
NOFORCE
CICS is to honor the CONCURRENCY(THREADSAFE) attribute defined on program resource definitions, and invoke them under either the QR TCB or an open TCB.

You can use this option to change dynamically the option specified by the FORCEQR system initialization parameter.

Any change to this option is not applied to currently invoked programs; it applies only to programs invoked for the first time after the change to the FORCEQR status.

GMMLENGTH(data-value)
Specifies, as a halfword binary value, the length of the good morning message text. The range for this value is 1 - 246.
GMMTEXT(data-value)
Specifies the good morning message text, which can be up to 246 characters long.
LOGDEFER(data-area)
Specifies, as a halfword binary value, the log deferral interval. The log deferral interval is the period of time used by CICS Log Manager to determine how long to delay a forced journal write request before invoking the MVS system logger. The value can be in the range 0 - 65535. For information about the LOGDEFER parameter and associated LGDFINT system initialization parameter, see LGDFINT system initialization parameter.
MAXTASKS(data-value)
Specifies, as a fullword binary value, the maximum number of tasks that can be eligible for dispatch at any one time in this CICS system. Both active and suspended tasks count toward this limit, but tasks that have not reached the point of initial dispatch do not. System tasks, for example terminal and journal control tasks, are not counted. The value can be in the range 10 - 2000.
MROBATCH(data-value)
Specifies, as a fullword binary value, the number of events that must occur, from a list of MRO and DASD I/O events on which CICS is waiting, before CICS is posted explicitly to process them. The value must be in the range 1 - 255.
NEWMAXTASKS(data-area)
Returns the new value of MAXTASKS, in fullword binary form.

When you use a SET SYSTEM command to set the MAXTASKS value, if there is not enough storage for the value you request, CICS raises the NOSTG condition, continues to process the command, and reduces the value from the one that you specified. The NEWMAXTASKS value shows the value after any such adjustment.

PROGAUTOCTLG(cvda)
Specifies whether and when autoinstalled program definitions are cataloged. Cataloged definitions are restored on a warm or emergency restart. Definitions that are not cataloged are discarded at shutdown and must be installed again if they are used in a subsequent execution of CICS.
Decisions to catalog are made both at initial installation and whenever an autoinstalled definition is modified, and are based on the PROGAUTOCTLG value at the time. CVDA values are as follows:
CTLGALL
Definitions are cataloged when they are installed and when they are modified.
CTLGMODIFY
Definitions are cataloged only when they are modified.
CTLGNONE
Definitions are not cataloged.
PROGAUTOEXIT(data-value)
Specifies the 8-character name of the user-provided program that the CICS program autoinstall code calls to provide a model definition.
Note: This program (and any programs it invokes) must be installed before they can be used in the program autoinstall process, either by explicit PROGRAM definitions or by autoinstall when another autoinstall program is in force. Otherwise, the program autoinstall process fails when next used, and CICS makes it inactive.
PROGAUTOINST(cvda)
Specifies whether autoinstall for programs is active or inactive. When a task requests a program, map set, or partition set that is not defined, CICS attempts to create a definition for it automatically if autoinstall for programs is active. If not, CICS raises the PGMIDERR exceptional condition. CVDA values are as follows:
AUTOACTIVE
Autoinstall for programs is active.
AUTOINACTIVE
Autoinstall for programs is inactive.
PRTYAGING(data-value)
Specifies, as a fullword binary value, the rate at which CICS increases the priority of a task waiting for dispatch. After each number of milliseconds, set by the PRTYAGING value, of wait time without a dispatch, CICS increases the task priority by 1. The value must be in the range 0 - 65535.
RUNAWAY(data-value)
Specifies, as a fullword binary value, the default for runaway task time in milliseconds. This value is used for any task executing a transaction with a profile that does not specify runaway task time (see the RUNAWAY option of the INQUIRE TRANSACTION command: INQUIRE TRANSACTION options - RUNAWAY).

The value must be either zero, which means that runaway task detection is not required for tasks using the default value, or in the range 500 - 2700000. The value you supply is rounded down to the nearest multiple of 500.

SCANDELAY(data-value)
Specifies, as a fullword binary value, the terminal scan delay value for the CICS region in milliseconds, which is initially set by the ICVTSD system initialization parameter. The default setting is zero. The value must be in the range 0 - 5000. The terminal scan delay facility was used in earlier releases to limit how quickly CICS dealt with some types of terminal output requests made by applications, in order to spread the overhead for dealing with the requests. Specifying a nonzero value was sometimes appropriate where the CICS system used non-SNA networks. However, with SNA and IPIC networks, setting ICVTSD to 0 is appropriate to provide a better response time and best virtual storage usage.
TIME(data-value)
Specifies, as a fullword binary value, the maximum interval in milliseconds for which CICS gives control to the operating system if no tasks are ready for dispatch. This value is set initially by the ICV system initialization option and is sometimes called the region exit time interval. The TIME value must be in the range 100 - 3600000 and must not be less than the SCANDELAY value. To determine the current SCANDELAY value, you can use the INQUIRE SYSTEM SCANDELAY command.

Conditions

INVREQ
RESP2 values:
1
The MAXTASKS value is out of range.
3
The AKP value is out of range.
5
TIME is not in the range 100–3600000.
6
The RUNAWAY value is out of range.
7
MROBATCH is not in the range 1–255.
9
DUMPING has an invalid CVDA value.
12
AKP was specified, but CICS was initialized without keypointing.
13
TIME is less than SCANDELAY.
14
PRTYAGING is not in the range 0–65535.
15
SCANDELAY is not in the range 0–5000.
20
DSALIMIT is not in the range 2 to 16 MB.
21
EDSALIMIT is not in the range 48MB to 2047MB.
22
There is insufficient MVS storage to allocate DSALIMIT.
23
There is insufficient MVS storage to allocate EDSALIMIT.
29
The LOGDEFER value is out of range.
30
MAXSOCKETS is not in the range 1 through 65535.
LENGERR
RESP2 values:
20
The GMMLENGTH value is out of range.
NOSTG
RESP2 values:
16
CICS reduced the value you requested for MAXTASKS because of storage constraints; see the NEWMAXTASKS option.
NOTAUTH
RESP2 values:
100
The user associated with the issuing task is not authorized to use this command.
NOTSUPERUSER
RESP2 value:
15
CICS was unable to set MAXSOCKETS to the value you requested, because the userid under which the CICS job is running does not have superuser authority. CICS has set the limit to the value of the MAXFILEPROC parameter specified in SYS1.PARMLIB member BPXPRMxx.