Status Information
The Designer's Interface shields the client from server
execution problems (e.g. dumping core or infinite loops)
by calling the server as a separate process.
The interface keeps track of the exit status of each server call.
Servers should be designed with this in mind when setting exit signals.
Server processes which exit with a signal are invalid.
The interface considers the query point as unevaluable.
Otherwise, the interface takes the following action based on
the exit value e (e is never negative):
- e > 200
-
These are hard failures and causes the interface to halt.
These exit values should be used only in conditions which bring
into question the validity of future server calls.
- 150 <= e < 200
-
These values signal invalid data (this is the same as exiting
with a signal condition).
- 0 <= e < 150
-
These exit values are considered normal.
This allows some leeway for existing servers to maintain their
current exit values (usually 0 is the only "normal" exit value).
Remote processs execution is handled using rsh.
rsh does not keep track of exit status information, so a Perl script
status.pl is used to record and return
the status.
A copy of status.pl should be made available on each machine
where the server is run.
For consistency, status.pl is also used for locally run processes.
The location of status.pl on each target machine must be specified
in the startup file.
Return to Designer's Interface Overview.