TS/MP 2.5 Pathsend and Server Programming Manual

When the one-transaction-per-dialog model is used, the current TMF transaction, if any, is
automatically aborted when the server returns an error value (FEEOF, or any other value besides
FEOK or FEContinue) in the reply. When the any-transaction-perdialog model is used (when bit
14 of the dialog flags is equal to 1), no automatic transaction abort occurs. In either case, the
requestor must abort the transaction when it receives an error reply.
If the server is shut down by the operator:
For dialogs that currently have an I/O operation outstanding, the I/O operation is first
completed, and action is then taken depending on the error value returned:
If the I/O operation is completed with an error value of FEOK (0), then the FEOK value
is passed back to the requestor along with all user data.
If the I/O operation is completed with an error value of FEContinue (70), the requestor
receives error 233, FEScError, and SERVERCLASS_SEND_INFO_ returns Pathsend error
929, FEScDialogAborted. No user data is passed back to the requestor.
If the I/O operation is completed with any other file-system error, the requestor receives
error 233, FEScError, and SERVERCLASS_SEND_INFO_ returns the file-system error that
occurred. No user data is passed back to the requestor.
After completion of the I/O operation, the dialog is aborted and the ACS subsystem ROUT
process closes the server process. The server process must interpret the close operation as a
dialog abort.
For dialogs that have no I/O operation outstanding, the dialog is aborted and the ACS
subsystem ROUT process closes the server process. The server process must interpret the close
operation as a dialog abort.
When writing requestors as process pairs with or without the TMF subsystem, note that it is not
possible to checkpoint dialogs. The dialog and the transaction, if any, are aborted when the
requestor fails.
ACS Restart Errors
The considerations mentioned in this chapter apply to the context-sensitive Pathsends in addition
to the considerations described in “Basic Pathsend Programming” (page 51).
A new ROUT process does not identify a dialog initiated with the earlier ROUT process. Therefore,
it returns Pathsend error 926 (invalid dialog). In this case, the application must abort the old dialog
and initiate a new dialog.
Cancellation of Server-Class Send Operations
The requestor can explicitly cancel an outstanding server-class send operation if it has used the
nowait option in the Pathsend procedure call and has not yet sensed completion of the server-class
send operation through the AWAITIOX procedure. In this case, the server receives a Pathsend
dialog abort system message (as described in chapter 4) even if it has already replied to the last
send operation.
Writing Requestors That Interoperate With NonStop Tuxedo Servers
Pathsend requestors can call on the services of NonStop Tuxedo servers in either of two ways:
Directly, by making calls to the NonStop Tuxedo ATMI functions
Indirectly, by using the Pathway translation server for the NonStop Tuxedo system
Writing Requestors That Interoperate With NonStop Tuxedo Servers 59