Guardian Programmer's Guide

Table Of Contents
Using the Sequential Input/Output Procedures
Guardian Programmer’s Guide 421922-014
15 - 64
Handling Retryable Errors
After sending the error message to one or more destinations, SIO retries the operation
that caused the error.
If the device in error is on the same system as the error file and if the error file is not
$0, SIO expects the user to make the device ready before responding to the message.
SIO therefore retries the operation immediately, and only once. If another of these
errors occurs, SIO reissues the error message and prompts the user to reply.
If the error file is $0 or if the error message is being written to $0 on a remote node
(because the error file is not on the same node as the device in error), then there is no
way to reply to the message. SIO will then retry the operation every six seconds to see
whether someone has made the device ready. In addition, SIO repeats the error
message every minute. If the device is not ready after 10 minutes, SIO treats the error
as fatal.
Errors Resulting From BREAK Activity
Errors resulting from BREAK activity are the following:
SIO makes an internal call to the CHECK^BREAK procedure to determine whether the
BREAK key was pressed for this device. If so, SIO ignores the error, because the
calling program is expected to check for BREAK by issuing a CHECK^BREAK
procedure call (see Handling BREAK Ownership, earlier in this section).
Otherwise, SIO retries the operation every two seconds. There is no limit on the
number of retries, because BREAK ownership may have been taken by another
process, which may return BREAK ownership at any time.
Errors resulting in BREAK activity do not generate error messages and are therefore
transparent to the user and the programmer.
Errors That Are Retried After a Delay
Errors that are retried after a delay include the following:
For each of these errors, SIO retries the operation after a two-second delay.
Error 110 Only BREAK mode requests accepted
Error 111 BREAK occurred on this request
Error 103 Disk not ready due to power failure
Error 112 READ or WRITEREAD preempted by operator message
Error 124 A line reset is in progress