SQL Server communications errors
Interpreting communications errors
When you use or attempt to use Connect★, Model 204 generates messages that track the network activity. Model 204 writes these messages in the audit trail.
If an error occurs involving Connect★, conversation processing is neither started nor stopped, and Model 204 automatically displays status codes and sometimes an error message on the operator's console. Model 204 also writes the error message in the audit trail.
Connect★ errors that involve the underlying communications layer are handled differently from application-level errors.
Communications error display format
Each Model 204 error condition involving the underlying communications layer is displayed as one or two error messages. One of these messages contains the status codes. The other line, if any, contains a Model 204 message that helps to describe the condition that caused the error.
An error message that includes the status codes has the following format:
M204.nnnn: COMM ERROR STATUS=nn, STATUSD=nn
The STATUS value refers to the status of the communications statement last executed. This value is a number value greater than or equal to zero. A value of 12 or greater indicates that a communications error occurred and identifies the error as belonging to a particular category.
STATUSD is set to the return code that details the specific error condition within a particular STATUS category.
STATUS and STATUSD refer to the Model 204 SOUL $STATUS and $STATUSD function values described in $STATUS and $STATUSD codes.
$STATUS and $STATUSD codes
The following table lists the possible combinations of return values of the $STATUS and $STATUSD functions and a brief description of each combination.
The combinations are listed by ascending $STATUSD value (SD column) for each $STATUS value (S column).
|0||0||Normal completion; no unusual conditions.|
|1||0||Normal completion; check RESULT variable.|
|1||1||Specified event(s) not pending (WAIT or TEST).|
|1||2||Specified event(s) still pending (TEST).|
|1||3||WAIT completed due to timeout.|
|2||2||SEND ERROR statement issued by partner.|
|3||3||State check: verb issued in wrong conversation state.|
|4||0||Conversation ended normally by partner process. The partner process has finished executing, or it has ended the conversation by issuing a CLOSE PROCESS statement.|
|4||1||Partner closed conversation abnormally.|
|5||1||Password is required. If the USERID keyword parameter is provided in the OPEN PROCESS statement, then PASSWORD parameter must also be provided.|
|5||2||Process is already open. The OPEN PROCESS statement being executed specifies a process name or CID for a process that is already open.|
|5||3||Initial (PIP) data incorrectly specified.|
|5||4||Entity (process, processgroup, or link) not defined.|
|5||5||Process has not been opened.|
|5||6||Statement or option not supported.|
|5||11||Process can be opened only within an application subsystem.|
|5||12||Process definition requires "OPEN" for security parameters. The OPEN PROCESS statement being executed contains an ACCOUNT or USERID parameter. This is valid only when the process definition specifies ACCTSOURCE=OPEN or UIDSOURCE=OPEN (PROFILE and PROFSOURCE can be written instead of ACCOUNT and ACCTSOURCE).|
|5||14||SESPARMS was specified on the processgroup definition but is not valid for Horizon or Horizon links.|
|5||15||OPEN type conflicts with PROCESS type.|
|5||16||Reserved names cannot be used in OPEN PROCESS.|
|5||17||Process name or CID is too long.|
|5||18||Synchronization level not supported. CONFIRM verb requires the process definition to have the CONFIRM parameter.|
|5||19||Required parameter not specified.|
|5||20||Invalid duration value specified for WAIT statement.|
|10||1||Insufficient main storage available at local node.|
|10||3||Local link is not open or is being stopped or closed.|
|10||4||Local processgroup is being stopped.|
|11||1||Partner process temporarily cannot be started.|
|11||3||Remote allocation failure that you can retry.|
|13||1||Session or connection failure.|
|13||3||Connection failure for parallel session setup.|
|50||1||Local session or connection limit has been reached.|
|50||2||Local conversation limit has been reached.|
|50||3||Server process subsystem could not be started because APSY is not initialized.|
|50||4||Subsystem is not available. The requested server process subsystem is not defined in CCASYS.|
|50||5||Input buffer too small for SUBSYSPARM. The SUBSYSPARM value specified in the process definition was larger than the size in the IODEV 27 command line.|
|50||6||Synchronization level not supported by local process. Requesting process and local process must agree on CONFIRM or NOCONFIRM.|
|50||7||Server security violation.|
|51||1||Server process not available. Examine messages sent to operator's console or audit trail at server node to diagnose.|
|51||2||Synchronization level not supported by server. The server process definition does not specify the same synchronization level as that of the local process (CONFIRM/NOCONFIRM).|
|53||1||Session or connection failure. Check the sense code in $Errmsg.|
|53||2||Conversation timed out waiting for response from partner.|
|53||3||Session or connection not established due to incorrect session or connection parameters.|