IMS-Specific Environment Variables

This topic lists environment variables relate to configuring the IMS environment.

Note: The Environment Variables: Alphabetical Order topic contains the values for most environment variables.
ES_ACBLIB
Specifies the locations of the IMS ACB files.

Syntax

SET ES_ACBLIB={pathname

Values

pathname The path location of the IMS ACB files.

Default

If this variable is not set the ACB files are assumed to be in the project directory.

ES_DFS3650
The default transaction to execute or MOD file to be displayed after successfully signing on to IMS. You specify these by setting environment variables prior to the start of the region: ES_DFS3650 - set to MOD if a MOD file is to be sent, or TRX if a TRANSACTION is to be executed. If you set to MOD, ES_MOD3650 needs to be set to the name of the MOD you want to display. If you set to TRX, ES_TRX3650 needs to be set to the name of the transaction.
Syntax
ES_DFS3650=value
Values
  • MOD - ES_MOD3650 needs to be set to the name of the MOD you want to display
  • TRX - ES_TRX3650 needs to be set to the name of the transaction
Default
No default transaction or MOD.
ES_IMS_BASIC_CHKP_OPT
When set to 1, enables a basic checkpoint call to process as if a SYNC call had been issued. The default is 0 (zero).
ES_IMS_BYPASS_OTMA_DEST_RES
By default, a CHNG call issued from an OTMA- or IMS Connect-submitted transaction assumes that the destination is the OTMA client. In some circumstances, the previous behavior of assuming a non-OTMA client is desirable. To use the previous behavior, set this environment variable to Y.

Values:

  • Y
  • N (default)

Example

ES_IMS_BYPASS_OTMA_DEST_RES=Y
ES_IMS_CANCEL_MODE
Controls the caching of IMS binaries.

Syntax

SET ES_IMS_CANCEL_MODE=<cancel-mode>

Values

Permissible values for <cancel-mode> are:
  • P - Performs a physical cancel; every transaction will have new-copy behavior. This option is the default behavior, but is the poorest performing of the options.
  • L - Performs a logical cancel. This gives the best performance of the options, but can only be used it there is only one DLITCBL entry point in an MPR.
  • D - Performs a deferred cancel, which will yield the same behavior as a logical cancel when the MPR services the same MPP back-to-back. It will behave as P (physical cancel) when the transaction changes.
ES_IMS_CLIENTID_LTERM
By default, an IMS Connect request sets LTERM (if not explicitly overridden) to the client-ID when commit-mode is zero and port-ID when commit-mode is one. Setting this variable to "Y" overrides this behavior to have LTERM be set to the client-ID instead of the port-ID.

Values:

  • Y
  • N (default)
ES_IMS_CONFIG
The IMS TM parameters.
ES_IMS_DB_COMMIT_FLUSH
When set to 0 (zero), forces the flushing of database buffers to disk on CLOSE only (default). When set to 1, forces the flushing of database buffers to disk on COMMIT only.
ES_IMS_DB_TLOG_WRITETHRU
When set to 0 (zero), forces the flushing of TLOG buffers to disk on COMMIT only (default). When set to 1, forces the flushing of TLOG buffers to disk on all database I/O.
ES_IMS_DEADLOCK_WAIT
Time in milliseconds to wait before checking for a deadlock. The default is 1000 (1 second).
ES_IMS_DIAGNOSE
Marks IMS TM as diagnose mode only for IMSMSGQ.

When set to Y, the Transaction Manager (TM) works in diagnostic mode only, and no activity key points are written to the message queue.

CAUTION:
Set ES_IMS_DIAGNOSE only when advised to do so by Micro Focus.
ES_IMS_DOSVS_PCB
Emulates DOS/VSE PCB address alignment for EXEC DLI programs.
ES_IMS_DUMP_ON_DEADLOCK
Creates a system dump when a deadlock is detected.
ES_IMS_DUMP_ON_TIMEOUT
Creates a system dump when a lock timeout occurs.
ES_IMS_EXITPATH
The location of compiled code that contains segment, field, and/or print exits.
ES_IMS_FORCE_SIGNON
Enables a user to force a sign-on to IMS on the current terminal and sign off from other terminals.
ES_IMS_GOTO_CICS_ON_SIGNOFF
Returns to CICS upon logging off or timing out, rather than returning to the IMS sign-on screen, which is the default behavior.
ES_IMS_IBMPLATFORM
Sets the emulation for the IMS run-time. Valid values are: M (for MVS) or D (for DOSVS). The default value is M.
Note: This variable is rarely required to be changed from its default, even for the majority of DOSVS users.
ES_IMS_IMSID
Allows the user to specify the IMS System ID returned to the AIBTDLI INQY ENVIRON call.
ES_IMS_INQY_OTMA
Returns TPIPE, MBR, SYNC, and MSYNC to an INQY call.
ES_IMS_INQY_UNKNOWN
Value returned to an INQY call.
ES_IMS_IRLM
Enables Internal Lock Resource Manager (IRLM) locking. IRLM locking more closely parallels mainframe IMS database DB locking behavior, reducing data constraint and potential for deadlock.
ES_IMS_JES_DIRTY_ABEND
The default setting is Y. IMS marks a JES container as dirty if an IMS application abends or is aborted. To disable this behavior, set this environment variable to N:
ES_IMS_JES_DIRTY_ABEND=N
ES_IMS_LOCALDLI
Deprecated. See IMS Database Locking. When set to 1, directs batch program execution to process all IMS DB calls entirely in the JES initiator providing significant performance improvement. All IMS DB control processes accessed from the batch program must be stopped before execution because they become exclusively owned by JES until the program completes.
ES_IMS_LOCK_RETRY_DELAY
The IMS DB lock retry delay in milliseconds.
ES_IMS_LOCK_TIMEOUT
The number of seconds during which IMS DB control continues to retry a locked record before timing out. Valid values are 0 to 65535. The default is 30 seconds; a value of 0 indicates an indefinite wait time.
ES_IMS_LTERM_PREFIX
Specify a one- to four-character LTERM prefix alternative to the default (OTMA) to use when the ES_IMS_SINGLE environment variable is set to N. Use of an alternative prefix to OTMA enables you to exercise control over name conflicts.

Syntax

ES_IMS_LTERM_PREFIX=1to4charprefix

Values

Use up to four characters of your choice. Enterprise Server pads the value specified with numeric digits up to eight characters, enabling the LTERM pool to be expanded from 9999 up to 999999. The pool size is dictated by the number of characters used in the specified prefix. For example, the LTERM pool size for a four-character prefix is 9999; for a three-character prefix is 99999; and so on.

Default

OTMA

Note: The default setting of this environment variable suggests that the LTERMS apply only to OTMA clients; however, this is not the case. LTERMS can also be applied to second and subsequent 3270 user connections.
ES_IMS_LU_LTERM
Determines the value of the LTERM literal returned by the MFS system. Valid values are: Y to return the LU name; N to return the user ID.
ES_IMS_MESGQ
Sets the configuration for the IMS TM message queue. The ES_IMS_MESGQ environment variable is generated and set automatically by Enterprise Server, and is reserved.
Restriction: Manually set this variable only when advised to do so by Micro Focus Customer Care.
ES_IMS_MESGQ=[ds-file-name];max-blocks;buffer-count;start-control;[cushion-size]
ds-file-name
An alternative data store file to the default, which is IMSMESGQ.dat.
max-blocks
Data store size limit represented as the number of 64K blocks. Default is 4.
buffer-count
The number of 64K buffers to allocate. Default is 2.
start-control
A flag that sets the start behavior as follows:
Y Cold start the resource definitions. Default.
S Cold start the statistics and resource state information.
Q Cold start the data store (system cold start).
cushion-size
The size of the cushion to be reserved for graceful lack-of-space behavior, represented as a number from 0 to 255. The specified number represents 32 times the actual percentage of max-blocks reserved for emergency use. The default is 4 (a raw value of 128).
ES_IMS_OPEN_TIMEOUT
Defines the wait period in seconds during which IMS retries the opening of a database file that is in use by another task. Default is 30 seconds.
ES_IMS_OTMA_DEST
Each specified destination consists of the destination name, the NONOTMA keyword, and the LU type (LU1 or LU3) separated by commas. Each destination definition is separated by a semi-colon.
IMS_OTMA_DEST=printerName,NONOTMA,LUtype[;...]
ES_IMS_PATH
The location of compiled COBOL applications.
ES_IMS_PLI_INDIRECT_PCBADDR

Determines whether the PL/I program converts the PCB address list from a direct to an indirect addressing technique. Set the variable to one of the following values:

D
If the main program is a PL/I program, PCB addresses are converted from a direct to an indirect addressing technique.
Y
Always converts addresses from a direct to an indirect addressing technique as long as the PSB language is set to PL/I.
N
Never converts addresses from a direct to an indirect addressing technique.

The default is D (dynamic).

ES_IMS_RCLASS

Creates a set of newly-named IMS security resource classes, appending the variable's value (maximum of seven characters) to each resource class' default character.

Create theses custom-named classes if you are using the same ESM active directory with two Enterprise Server systems and your security needs to differ for each.

See Resource Classes for IMS Security for the names of the resource classes created if this variable is not set.

ES_IMS_RELEASE
Allows the user to specify the IMS Release returned to the AIBTDLI INQY ENVIRON call.
ES_IMS_REGION
Allows the user to specify the IMS Region returned to the AIBTDLI INQY ENVIRON call.
ES_IMS_ROLLBACK
Enables automatic Backward Recovery; enabled by default.
ES_IMS_ROLLFORWARD
Enables or disables Forward Recovery logging. Valid values are: Y to enable; N to disable. The default is N.
ES_IMS_SINGLE
Enables or disables functionality that allows a single user to sign on to multiple LUs simultaneously.

Values

Y
Disables multiple sign-on functionality.
N
Enables multiple sign-on functionality.

When ES_IMS_SINGLE is set to N, and a user attempts to sign on to an LU using a sign-on that is currently active at another LU, IMS Transaction Manager (TM) assigns a temporary LTERM to the user and LU using a name constructed from the ES_IMS_LTERM_PREFIX setting followed by a numerical value totalling eight characters (see the IMS_LTERM_PREFIX entry in this topic for details). The temporary LTERM is the destination for the user and LU irrespective of activity at other LUs controlled by the user. When a user disconnects from an LU that is served by a temporary LTERM, the LTERM is returned to the temporary pool for reuse.

Also when ES_IMS_SINGLE is set to N, the execution of /dis USER all returns a sub-list for each user that shows all active connections. These connections persist throughout a session, and are dynamically recreated during a warm start.

Default

Y

Note: No KEYPOINT activity is associated with the use of ES_IMS_SINGLE.
ES_IMS_SPARSE_EXIT_LANG
Indicates the language of the IMS DB secondary index sparse routines.
  • C (for COBOL)
  • A (for Assembler)
By default, this variable is not set (sparse exits are disabled).
ES_IMS_SUPPORT
Enables IMS support.
ES_IMS_TLOG_COMPRESS
When set to 0 (zero), disables compression of the Backward Recovery TLOG file. When not compressed, the file contains only the information required to recover databases. The default is enabled.
Note: When enabled, Enterprise Server reclaims space in the file when information becomes obsolete.
ES_IMS_TLOG_FLUSH
When set to 1, forces the frequent flushing of TLOG and database buffers to disk.
Warning: Depending upon the number of database updates, the frequency of commits, and other computer activity, use of ES_IMS_TLOG_FLUSH could result in significant performance degradation.
Note: This environment variable is deprecated. Use ES_IMS_DB_TLOG_WRITETHRU to flush TLOG buffers and ES_IMS_DB_COMMIT_FLUSH to flush database buffers.
ES_IMS_TLOG_MAXSIZE
Maximum size of the IMS DB transaction logging file in bytes. The default is 4GB or h"FFF00000".
ES_IMS_TLOG_PATH
The location of IMS DB transaction logging files. The default is the Enterprise Server system directory.
Note: Once created, you can move log files, but do not rename them. Before attempting to recover a database, all log files must reside in the directory specified by ES_IMS_TLOG_PATH.
ES_IMS_TLOG_THRESHOLD
Threshold size of the IMS DB transaction logging file. When reached, the current TLOG file is closed and a new TLOG file created for subsequent transactions. The default is 2GB or h"7FFFFFFF".
ES_IMSCFG
The location of the IMS configuration files IMSCONFG.DAT.
ES_IMSDAT
The location of IMS DB data files.
ES_IMSLIB
The location of DBDGEN2.DAT, DBDGEN2F.DAT and PSBGEN3.DAT files.
ES_MFSLIB
The location of the control blocks generated by the MFS generation program.
Syntax
ES_MFSLIB=pathname
Values
  • pathname The path to the MFS directory.
Default
product_install_dir/etc/ims
ES_MOD3650
The default MOD file to be displayed after a successful sign-on to IMS. See ES_DFS3650.
Syntax
ES_MOD3650=filename
Values
  • filename - The name of the MOD file.
ES_SSTM_IMS
Location of the JCL used to initialize the SSTM IMS environment.
ES_TMC_AGGREGATE
Controls the performance environment for IMS TM data stores. See ES_TMC_AGGREGATE in Environment variables in alphabetical order for details.

Syntax

SET ES_TMC_AGGREGATE={[,N|,D]|nnn,Y}

Values

,N
Sets the default behavior, which is to unilaterally flush operating system buffers to your physical disk at each key transactional point. While this does not change the method used by default at startup, it does enable dynamic modification via ESMAC. Once set, you can then test the effect of various non-default settings by altering them dynamically.
,D
Disables the transactional flushing of operating system buffers to disk. This option can significantly enhance message queue performance; however it is at the expense of the transactional integrity of the message queue in the event of a system failure.
Note: To avoid unpredictable results when using this setting, we highly recommend that you also set the static options as follows on the Administration Server > Properties > MSS > IMS > TM > General tab:
  • Set Cold start to Everything (queue)
  • Check Persist

See Server Instance Properties: MSS IMS TM General for details.

nnn,Y
Enables the aggregated transactional flushing of operating system buffers to disk where nnn represents an interval of time, in milliseconds, during which additional buffers are allowed to accumulate before flushing. Valid values are 0 through 255.

Once a thread reaches a key transactional point and requests a flush, TM waits the specified interval to accumulate subsequent threads that also request a flush. At the end of the interval, one flush is performed for all accumulated requests thus potentially improving performance by reducing the number of flush commands issued to the operating system.

Note:
  • Threads requesting a flush wait until the flush is confirmed.
  • Generally, when the message queue resides on a higher performance I/O subsystem such as one using SSDs, a smaller value, e.g. 1 or 2, produces the best results. A value of 10 or higher seldom improves performance.

Default

,N

ES_TRX3650
The default transaction to run after a successful sign-on to IMS. See ES_DFS3650.

Syntax

SET ES_TRX3650=transaction

Values

  • transaction The default transaction to run.
ES_USR_DFLT_IMS
Allows you to override the default user when no user is logged on for IMS authentication.

Syntax

SET ES_USR_DFLT_IMS=user

Values

  • user - The user name to override the default.

Default

IMSUSER

ICONN1
Controls the client TCP connection status of an IMS Connect emulator.
IMSCPY
The location of copybook files for DBDGEN, PSBGEN and MFSGEN utilities .
MFIMS_ACBDUMP_TIMESTAMP
Suppresses date/time stamp display in ACB report.
MFIMS_BMPCHKP
Returns a QC to a checkpoint call when it the call includes an IO area.
MFIMS_BTS
Configures Mainframe Express-format BTS tracing
MFIMS_DIBSTAT_CODES
Specifies additional DIBSTAT return codes to be returned to EXEC DLI program.
MFIMS_DLI_OPT
Specifies DL/I call optimization flags.
MFIMS_DIAG
Enables IMS BTS format diagnostic tracing.
MFIMS_FLUSHTRACE
Flushes BTS trace file to disk after every write.
MFIMS_FP_DA
Bypasses keycheck on IMS Fastpath DB delete.
MFIMS_LOADMVS
Disables load of MVS support for IMS application programs.
MFIMS_PCBCALL
Allows a standalone EXEC DLI program to issue a PCB call.