TS/MP Pathsend and Server Programming Manual (G06.24+, H06.03+)

Writing Pathsend Requesters
NonStop TS/MP Pathsend and Server Programming Manual132500
3-6
Security Issues
For Pathsend calls not protected by the TMF subsystem, the proper recovery depends on
the nature of the request:
Retryable requests that are not protected by the TMF subsystem can be repeated
many times without adverse effect. An example of this kind of request is a request to
read a bank account balance. Requests to retrieve data from a database are retryable
requests.
For these requests, on backup takeover, the backup can simply reissue the request.
The request could be processed more than once by different server processes without
resulting in data corruption.
Nonretryable requests that are not protected by the TMF subsystem cannot be
processed more than once without having adverse effects. An example of this kind
of request is a request to subtract $50.00 from a bank account balance.
For these requests, there is no way for the server class to detect duplicate requests;
Pathsend does not support checkpointing of Guardian sync IDs. Therefore, the
backup process cannot send the request again because the operation might be
processed more than once. Because the request cannot be safely retried, the
Pathsend process cannot ensure that the request gets processed at least once.
Because the request thread suspends while a checkpoint is in progress, checkpointing
large buffers can affect the performance of your application. You should checkpoint the
entire context of nonretryable requests, but avoid checkpointing unnecessary data: for
example, data from retryable requests or data that has not changed since the last
checkpoint.
The LINKMON process opens servers that are configured with the TMF parameter OFF
with a sync depth of 1, and I/O operations to the server process are automatically retried
if the primary process of a server process pair fails.
See the Guardian Programmer’s Guide for detailed information about checkpointing
and sync IDs.
Security Issues
There are two levels of security to consider for Pathsend processes: security at the
network level and security at the server-class level. In addition, if you are using the
Remote Server Call (RSC) product, you can provide additional security to control access
to servers.
Network Security
If your Pathsend process is to access a Pathway server class on another system, the user
ID of the PATHMON process controlling the server class has to have corresponding user
IDs and remote passwords with the following systems:
The system where the requesting process is running
The system where the PATHMON process is running
The system where the server class is running