EXCI considerations

For EXCI workloads, CICS® Transaction Gateway and CICS must be configured to ensure there is not an EXCI pipe shortage.

A connection manager uses one worker thread for every request to run a transaction in CICS. A worker thread allocates one EXCI pipe (MRO session) to every CICS server (APPLID) with which it communicates. This can be limited to a single pipe using the setting CTG_PIPE_REUSE.

Configure your system as follows:

  • Set the maximum number of connection manager threads (maxconnect) in the Gateway daemon to the same value as the maximum number of connections in all connection factories that connect to the Gateway daemon.
  • Set the initial number of connection manager threads (initconnect) to the same value as the minimum number of managed connections in the connection pool in all connection factories that connect to the Gateway daemon.
  • Set the maximum number of worker threads to a value that meets both the following criteria:
    • Less than or equal to the maximum number of connection manager threads.
    • Less than or equal to the EXCI LOGONLIM.
  • Set the initial number of worker threads to the same value as the initial number of connection manager threads.
  • Set the RECEIVECOUNT for the CICS SESSIONS definition to a value that meets both the following criteria:
    • No less than the value for EXCI LOGONLIM.
    • No less than 110% of the number of worker threads in the Gateway daemons that can connect through this connection, if multiple Gateway daemons share a connection.

When EXCI connections are used by a Gateway daemon, the maximum number of worker threads is restricted to LOGONLIM. Because all CICS server connections share the same pool of worker threads, this restriction also affects any IPIC connections. If EXCI has been disabled using the CTG_EXCI_INIT parameter, this restriction does not apply.

EXCI connections

When you define your EXCI connections you can choose between generic EXCI pipes and specific EXCI pipes. Specific EXCI pipes give slightly better performance. See CICS server connection definition for more information on selecting your EXCI connections.

EXCI resource shortage

An insufficient number of EXCI pipes causes intermittent resource shortage errors to be reported to the API. Requests receive ECI_ERR_RESOURCE_SHORTAGE errors. This can occur when any of the following events is happening.
  • Several CICS servers are being used by each Gateway and the CTG_PIPE_REUSE=ALL model is in use.
  • Large numbers of worker threads are being used.
  • Requests receive EXCI return code 608 if the value of LOGONLIM is exceeded, or EXCI return code 202 if the number of CICS receive sessions is exhausted.
  • Significant numbers of requests are being timed out by the EXCI timeout mechanism.
  • Requests receive EXCI return code 202 if the number of CICS receive sessions is exhausted.
The EXCI options table, generated by the DFHXCOPT macro, enables you to specify the time interval, in hundredths of a second, during which the EXCI waits for a DPL command to complete.

If CS_CALLOC = CS_SLOGONLIM all EXCI pipes are in use. Resource shortage errors might occur because there are not enough EXCI pipes available to support the number of incoming requests from the worker threads.

If several CICS servers are being used by each Gateway, change the CICS Transaction Gateway pipe usage model by setting the CTG_PIPE_REUSE=ONE configuration parameter.

If large numbers of worker threads are being used, increase the value of the CICS LOGONLIM system parameter for the LPAR.

If large numbers of worker threads are in use, or significant numbers of requests are being timed out by the EXCI timeout mechanism, and the value of the RECEIVECOUNT parameter in the CICS SESSIONS definition is less than double the value of the number of worker threads created (WT_CCURR), increase the value of the RECEIVECOUNT parameter in the CICS SESSIONS definition to be at least double the value of WT_CCURR.

Other factors

When you define your EXCI connections you can choose between generic EXCI pipes and specific EXCI pipes. Specific EXCI pipes give slightly better performance. See CICS server connection definition for more information on selecting your EXCI connections.