7.4 Debugging
In general, it is difficult to debug distributed computations.
‘ox_asir’ provides several functions for debugging.
7.4.1 Error object
When an error has occurred on an OpenXM server,
an error object is pushed to the stack instead of a result of the computation.
The error object consists of the serial number of the SM command
which caused the error, and an error message.
[340] ox_launch();
0
[341] ox_rpc(0,"fctr",1.2*x);
0
[342] ox_pop_cmo(0);
error([8,fctrp : invalid argument])
7.4.2 Resetting a server
ox_reset()
resets a process whose identifier is number.
After its execution the process is ready for receiving data.
This function corresponds to the keyboard interrupt on an usual Asir
session. It often happens that a request of a client does not correspond
correctly to the result from a server. It is caused by remaining data
on data streams. ox_reset
is effective for such cases.
7.4.3 Pop-up command window for debugging
As a server does not have any standard input device such as a keyboard,
it is difficult to debug user programs running on the server.
‘ox_asir’ pops up a small command window to input debug commands
when an error has occurred during user a program execution or
ox_rpc(id,"debug")
has been executed.
The responses to commands are shown in ‘xterm’ to display
standard outputs from the server. To close the small window,
input quit
.
This document was generated on December 22, 2024 using texi2html 5.0.