A transaction failed to recover on a particular terminal after autostart
The CICS Universal Client does not have the SYSID set consistently for the client system.
The message ERZ007057E appears in the console log on an auto start (ERZ010118I) of the region. During an auto start the region will recover transactions which were started on a terminal but did not execute before the region terminated. The terminal for the transaction was hard coded in the WD.stanza making it available for use. When the transactions was restarted it tried to connect to the same terminal on the same SYSID as installed before the region terminated. The failure in the setup was the way the CICS Universal Client and the CICS Transaction Gateway connect CICS Clients to the region. The SYSID for incoming CICS Client connections is dynamic. Each time a connection is made between the CICS Client and a region the SYSID is different. This can be proven by connecting a CICS Client to a region and then establishing a terminal session. Next, disconnect the terminal and stop the CICS Client. Now make another connection to the region and establish a terminal. The CSMT.out shows the different SYSIDs for the connections. Even with a hard coded terminal definition in the WD.stanza the SYSID will change. Since the terminal came in with a different SYSID the reconnection to the terminal at the client failed.
Resolving the problem
To correct the problem of the SYSID a modification to the CTG.ini is needed on the system where the CICS Client is started. The SYSID for an incoming connection can be changed by modifying the "SECTION CLIENT = *" line. Change the "*" to a four character string or name. An example would look like "SECTION CLIENT = BULL". Start the terminal again and review the CSMT.out. You will see the terminal installed is for client "BULL".
To ensure the required CICS Client terminal connects with the same terminal name each time use the /n option when starting up the Universal Client. An example is:
"C:\Program Files\IBM\CICS Universal Client\bin\cicsterm.exe" /s /n=TAIL"
Review the CSMT.out after making this change. You will see a message for terminal "TAIL" installed.
CICS will now have the same SYSID and terminal id each time the CICS Client is installed.
Another important part is to keep the CICS Client active when the region is down. When the CICS Client becomes aware that a region to which it was connected is no longer active, it attempts to reconnect to the region 1 second after it becomes inactive. If it fails it keeps trying, at the interval specified by the SRVRETRYINTERVAL in the CTG.ini. The default setting is 60 seconds.