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 status Perl script status.pl

  • Return to Designer's Interface Overview.