Next: Obsolete Error Codes
Up: ERROR CODES
Previous: ERROR CODES
An error status value (not equal to SAI__OK) is returned by any HDS routine
which detects an error condition. If a program is to perform specific tests on
these status values, then the HDS-supplied symbolic names described below
should be used rather than explicit numerical values. These symbolic status
names are prefixed either with `DAT' (for error codes returned by the DAT_ and
HDS_ routines) or `CMP' (for error codes returned by the CMP_ routines) and a
double underscore. The appropriate symbol definitions are contained in the
include files DAT_ERR (for the DAT__ error codes) and CMP_ERR (for the
CMP__ error codes). The symbols defined in these two files are shown in the
following tables and described in more detail below.
Symbolic Name |
Meaning |
DAT__ACCON |
Access conflict |
DAT__BOUND |
Outside bounds of object |
DAT__COMEX |
Component already exists |
DAT__CONER |
Conversion error |
DAT__DELIN |
Deletion invalid |
DAT__DIMIN |
Dimensions invalid |
DAT__FATAL |
Fatal internal error |
DAT__FILCK |
File locking error |
DAT__FILCL |
File close error |
DAT__FILCR |
File create error |
DAT__FILIN |
File invalid |
DAT__FILMP |
File mapping error |
DAT__FILND |
File not deleted |
DAT__FILNF |
File not found |
DAT__FILNX |
File not extended |
DAT__FILPR |
File protected |
DAT__FILRD |
File read error |
DAT__FILWR |
File write error |
DAT__GRPIN |
Group invalid |
DAT__INCHK |
Integrity check |
DAT__ISMAP |
Data currently mapped |
DAT__LOCIN |
Locator invalid |
DAT__MODIN |
Mode invalid |
DAT__NAMIN |
Name invalid |
DAT__NOMEM |
Insufficient memory available |
DAT__OBJIN |
Object invalid |
DAT__OBJNF |
Object not found |
DAT__PRMAP |
Primitive data mapped |
DAT__SUBIN |
Subscripts invalid |
DAT__TRUNC |
Text truncated |
DAT__TYPIN |
Type invalid |
DAT__UNSET |
Primitive data undefined |
DAT__VERMM |
Version mismatch |
DAT__WLDIN |
Wild-card search context invalid |
Symbolic Name |
Meaning |
CMP__DIMIN |
Dimensions invalid |
CMP__FATAL |
Fatal internal error |
CMP__ISMAP |
Data currently mapped |
CMP__NOMAP |
Not mapped |
CMP__TYPIN |
Type invalid |
- ACCON:
- A write operation has been rejected because the container file was originally
opened for read-only access.
- BOUND:
- An array specification is outside the permitted dimension bounds.
- COMEX:
- An attempt to create a new component of a structure has failed because a
component of the same name already exists.
- CONER:
- One of the following primitive data conversion errors occurred during a
GET, PUT, MAP or UNMAP operation:
- Floating point overflow.
- Integer overflow.
- Truncation of non-blank characters in a character string.
- DELIN:
- The object to be deleted was a non-empty structure.
- DIMIN:
- One of the following conditions occurred:
- When creating an object, the number of dimensions specified exceeds the
system-imposed limit (currently 7) or is negative, or one or more of the
dimension sizes is zero or negative.
- When slicing an object, the number of dimensions specified exceeds the
system-imposed limit (currently 3) or is negative, or an incorrect number of
lower and upper bounds has been specified.
- An attempt to read, write, or map primitive data has failed because the
dimensions specified do not match the actual shape of the object.
- FATAL:
- An unrecoverable error has been detected by HDS. This may indicate an internal
programming error within HDS itself, but may also result from the use of a
corrupt container file. The associated error report will contain further
information about the nature of the error.
- FILCK:
- An attempt to lock a container file has failed. This is most likely to be
because another process currently has the file locked with a conflicting access
mode.
- FILCL:
- An error occurred while closing an HDS file.
- FILCR:
- An error occurred while creating an HDS file.
- FILMP:
- An error occurred while mapping data in an HDS file.
- FILND:
- An error occurred while deleting an HDS file.
- FILNX:
- An error occurred while extending the size of an HDS file.
- FILIN:
- One of the following conditions occurred:
- A file to be opened does not conform to the structure of an HDS container
file.
- The name given for a file to be created matches the name of a file which
is already in use by HDS.
- The name given for a file to be created matches the name of an existing
file which cannot be removed because it is not a regular file (it may be a
directory, for instance).
- FILNF:
- The specified file cannot be found, or the syntax of the file name has been
rejected as invalid by the host operating system.
- FILPR:
- The file is protected from being accessed in the specified mode (or from being
deleted).
- FILRD:
- An error occurred while reading data from an HDS file.
- FILWR:
- An error occurred while writing data to an HDS file.
- GRPIN:
- The supplied character string does not conform to the syntax of a group
specification.
- INCHK:
- Typically, an attempt to access an object has failed because the object has
been deleted or moved through another locator, either in the same program or in
another process. This error may also be produced through the use of a corrupt
container file.
- ISMAP:
- An object is currently mapped.
- LOCIN:
- One of the following conditions occurred:
- A non-character variable has been specified as a locator (or a character
variable of the wrong length).
- The specified locator is not currently valid, i.e. not associated
with an object.
- The specified locator was generated by an HDS routine which did not run
to successful completion.
- MODIN:
- The supplied character string is not a valid access mode.
- NAMIN:
- The supplied character string does not conform to the syntax of a name
specification.
- NOMEM:
- HDS was unable to dynamically allocate sufficient memory to perform the
requested operation.
- OBJIN:
- An input locator points to an object which is not suitable for the type of
operation requested. Specifically, when the locator is associated with one of
the following:
- A structure object where a primitive is required (and vice versa).
- An n-D object where a scalar (or cell) is required.
- A slice or cell of an n-D object where the complete array is required.
- A top-level object where a component object is required (and vice versa).
- OBJNF:
- A request to locate a component of a structure, by name or position, has failed
because the object does not exist.
- PRMAP:
- A GET, PUT or MAP operation has been rejected because primitive data are
currently mapped to the specified locator.
- SUBIN:
- An attempt to locate a slice or cell of an n-D object has failed because the
subscript information references an element which is outside the array bounds
of the object (or a lower bound exceeds an upper bound).
- TRUNC:
- A character string has been corrupted through the truncation of significant
(non-blank) characters. Typically this indicates that a program has not
supplied a character string of sufficient length as an argument to an HDS
routine.
- TYPIN:
- The supplied character string does not conform to the syntax of a
type specification.
- UNSET:
- An attempt to read primitive object data has failed because the values are
currently undefined.
- VERMM:
- The HDS file format version number of a container file exceeds the version
number recognised by the HDS software. Typically, this signifies that the file
has been created or modified by a new version of HDS and cannot be handled by a
program linked with an older version.
- WLDIN:
- The wild-card search context identifier supplied has not been generated by a
previous successful call to an HDS routine and is not equal to the null value
(DAT__NOWLD).
Next: Obsolete Error Codes
Up: ERROR CODES
Previous: ERROR CODES
HDS Hierarchical Data System
Starlink User Note 92
R.F. Warren-Smith & M.D. Lawden
23rd February 1999
E-mail:rfws@star.rl.ac.uk
Copyright (C) 1999 Central Laboratory of the Research Councils