TS/MP Pathsend and Server Programming Manual (G06.24+, H06.03+)
Writing Pathway Servers
NonStop TS/MP Pathsend and Server Programming Manual–132500
4-11
Considerations for Debugging Pathway Servers
Considerations for Debugging Pathway Servers
When you are running a Pathway server in debug mode (that is, with the server class 
configured with DEBUG ON) or when the server falls into debug mode because of an 
error, some situations might cause errors to be returned to the requester communicating 
with that server, and in some cases also might cause errors to be returned to other 
requesters. Those situations are described in the following subsections.
LINKMON Process and TCP Timeouts
The LINKMON process and the TCP have a built-in five-minute timeout for process 
opens and I/O operations such as get-link requests. During normal operation, such 
operations are generally completed in less than five minutes unless there is a problem. 
However, if the server process is in debug mode, the server can be stopped (for example, 
at a breakpoint) for longer than five minutes. In certain cases, this can cause a process 
open or I/O operation from a LINKMON process or TCP to time out. The effects of the 
timeout depend on what type of operation timed out.
If an I/O operation to the PATHMON process times out, the LINKMON process or the 
TCP behaves as if there were a problem with the PATHMON process: that is, it shuts 
down communication with the PATHMON process, relinquishing all links granted by 
that PATHMON process.
In this situation, if the requester that sent the request that timed out was a Pathsend 
requester, this request (as well as all other server-class send requests queued under that 
PATHMON process) fails with Pathsend error 902, FEScPathmonConnect, with 
file-system error 40 (timeout error). Subsequent send requests to server classes under 
that PATHMON process fail with Pathsend error 915, FEScPathmonShutDown.
If the timed-out request came from a SCREEN COBOL requester, this request (as well 
as all other server-class send requests queued under that PATHMON process) fails with 
a SEND error with a TERMINATION-STATUS value of 18 (PATHMON I/O error) and 
a TERMINATION-SUBSTATUS value of 40. Subsequent send requests to server classes 
under that PATHMON process fail with a SEND error with a TERMINATION-STATUS 
value of 18 (PATHMON I/O error) and a TERMINATION-SUBSTATUS value of 40.
If a timeout occurs on the server process open, the LINKMON process or the TCP 
returns the link to the PATHMON process. If other links to the server class exist, no send 
requests fail as a result of the open failure. If no other links exist, the send request (as 
well as all other server-class send requests queued for that LINKMON process or TCP) 
fails. A Pathsend requester receives Pathsend error 904, FEScServerLinkConnect, with 
file-system error 40 (timeout error). A SCREEN COBOL requester receives a SEND 
error with a TERMINATION-STATUS value of 12 (I/O error) and a TERMINATION-
SUBSTATUS value of 40 (timeout error). 
Note also that if the server class is configured so that it can be opened more than once 
(that is, with MAXLINKS greater than 1), a LINKMON process or TCP can attempt to 
open a server process in that server class at any time. This open attempt can time out if 
the server process is being debugged.










