Enscribe Programmer's Guide
11 Errors and Error Recovery
Error Message Categories
The file system generates a number of messages indicating errors or other special conditions. You
can encounter these messages during execution of any program module that uses system procedures.
Both a condition code and an error number are associated with the completion of each file-system
procedure call. For successful completions, the condition code is CCE and the error number is 0.
The full range of error numbers can be subdivided into three general categories:
• Warnings issued by the file system (1 through 9).
• Errors encountered during standard file-system operations (10 through 255).
• Error numbers reserved for application-dependent use (300 through 511).
Many of the file-system error numbers indicate that you made a programming error, such as passing
an invalid parameter or trying to initiate an illegal operation. Others indicate that the system is
not being operated properly. Still others are essentially informational messages in that they merely
inform you of particular device-oriented problems.
Communication Path Errors
A communication path error is a failure of a processor module, I/O channel, or disk controller
port that is part of the primary path to disk unit. For errors of this type, the file system will attempt
to switch to an alternate path and complete the I/O operation if you specified a sync depth greater
than zero when opening the particular file.
An error number within the range 200 through 211 indicates that the operation is retryable. For
specific information regarding communication path errors associated with queue files, see Chapter 7:
Queue Files
Data Errors
A data error indicates that all or part of the file must be considered invalid.
Data errors are signified by the error numbers 50 through 59, 120 through 139, and 190 through
199.
Device Operation Error
Device operation errors are signified by the error numbers 60 through 69 and 103. The file system
does not retry the failed operation when one of these types of error conditions occurs.
Errors 60-69 indicate that the device has been deliberately made inaccessible and, therefore, the
associated operation should not be retried.
Error 103 indicates that the entire system has experienced a power failure and the disk is in the
process of becoming ready. In such a case, you should periodically retry the failed operation.
Extent-Allocation Errors
Two error numbers are associated with programmatic allocation of disk extents: 43 (unable to
obtain disk space for file extent) and 45 (file is full).
This example, in conjunction with Figure 23 (page 160), illustrates both types of error.
A file is created with an extent size of 2048 bytes. Repetitive WRITE operations of 400 bytes are
then performed on the file:
loop: CALL WRITE ( filenum, buffer, 400, number^written );
IF < THEN
BEGIN
Error Message Categories 159