Avoiding the storm drain effect
If an application avoids making calls to resource managers because it knows the connection to the resource manager is not active, or it processes an error return code as a result of the connection being unavailable, and proceeds to issue an error message and return normally rather than abend, it could delude the workload manager into routing more work to the CICS® region. This situation is called the storm drain effect.
DB2
For connections between CICS and DB2 at the time of returning the -923 SQL return code, the CICS DB2 attachment facility informs the z/OS® Workload Manager that the request has failed. The DB2CONN definition should be configured with attributes STANDBYMODE=RECONNECT and CONNECTERROR=SQLCODE . Applications should unconditionally issue EXEC SQL requests and test for an SQLCODE of -923 rather than using an EXEC CICS EXTRACT EXIT or EXEC CICS INQUIRE EXITPROGRAM command beforehand to test to see if CICS is connected to DB2. Only when an -923 SQLCODE is returned will z/OS® Workload Manager be informed.
IMS
For connections between CICS and IMS, if the interface between CICS and IMS DBCTL is not active, applications that issue CALLDLI requests receive return codes 08FF in the UIB. At this time, the CICS-DBCTL interface informs the z/OS Workload Manager that the request has failed. For EXEC DLI requests, typically the request results in an application abend, unless the NODHABEND keyword has been used. In this situation, z/OS Workload Manager is also informed in order to avoid the storm drain effect. .
WebSphere MQ
For connections between CICS and WebSphere® MQ, if CICS has never been connected to a queue manager, then the request is rejected prior to entering the CICS- WebSphere MQ adapter, so it is not possible to avoid the storm drain effect.
- mqrc_connection_broken
- mqrc_q_mgr_quiescing
- mqrc_connection_quiescing
- mqrc_connection_not_authorized
- mqrc_q_mgr_name_error
- mqrc_q_mgr_not_available
- mqrc_q_mgr_stopping
- mqrc_connection_stopping
- mqrc_adapter_not_available
VSAM RLS
For connections between CICS and VSAM RLS, if CICS receives a response indicating an RLS failure, or RLS is disabled, or a previous RLS failure has occurred, the normal result is an AFCR, AFCS, or AFCT abend respectively. In case the abend is handled, CICS File Control informs z/OS Workload Manager that the request has failed.