home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Frozen Fish 1: Amiga
/
FrozenFish-Apr94.iso
/
bbs
/
alib
/
d9xx
/
d953
/
isam.lha
/
ISAM
/
ISAMErrors.doc
< prev
next >
Wrap
Text File
|
1993-11-28
|
11KB
|
290 lines
================================
= SOME COMMENTS ON ERROR CODES =
================================
ERROR_BLANK_LINE
- This is returned when a blank line is found where a data/index file
name was expected.
ERROR_CANNOT_DELETE_DATA_FILE
ERROR_CANNOT_DELETE_INDEX_FILE
- These are returned from DeleteISAMFile.
ERROR_CANNOT_SET_ONEXIT
- this is returned from the first function attempted, if for some reason
the exit trap couldn't be set. [OBSOLETE - WILL NOT BE RETURNED]
ERROR_CONFLICTING_UorR
- this is returned from CreateISAMFile and ReIndexISAMFile.
Two or more keys have the same offset and size, but one is designated
as unique, and the other repeatable. This is not possible.
ERROR_DATA_END_OF_FILE
- This shouldn't happen (and probably should be an Internal Error).
ERROR_DATA_FILE_NOT_FOUND
- This is returned from OpenISAMFile.
ERROR_DELETED_RECORD
- This is returned from ReadISAMRecord, ModifyISAMRecord,
DeleteISAMRecord, LockISAMRecord and UnLockISAMRecord.
The RecNo supplied refers to a deleted record.
ERROR_FILE_ALREADY_OPEN
- This is returned from OpenISAMFile.
The user has the file open already, but tried to open it again.
ERROR_FILE_IN_USE
- This is returned from CreateISAMFile, ReIndexISAMFile, and
DeleteISAMFile.
An ISAM file may not be Created, ReIndexed, or Deleted if another
user has the file open.
ERROR_FILE_LOCKED
- Another user has the file locked in a mode incompatible with the
current function.
ERROR_FILE_NOT_OPEN
- This is returned from any function that deals with a specific file,
when that file has not been opened by the user calling that function.
ERROR_FROM_KEY_MISSING
ERROR_FROM_KEY_PRESENT
- These are returned from SetUpISAMIterationRange.
The iteration type specifies that the From key should/shouldn't be
present, and it wasn't/was.
ERROR_INCOMPLETE_KEY_LINE
- This is returned from CreateISAMFile and ReIndexISAMFile.
A key specification line in the Specs File is missing some
necessary information.
ERROR_INCOMPLETE_PATH
- This is returned from CreateISAMFile and ReIndexISAMFile.
The data and index files must have fully specified paths.
That is, they must have a ":" in the path (preceded by either a
[logical] device or volume name).
ERROR_INDEX_FILE_NOT_FOUND
- This is returned from OpenISAMFile.
ERROR_INSUFFICIENT_MEMORY
- This is returned from almost everywhere.
ERROR_INVALID_AorD
- This is returned from CreateISAMFile and ReIndexISAMFile.
Either some intervening specification was left out, or
the Ascending/Descending character was not "A" or "D".
ERROR_INVALID_DATA_FILE
- This is returned from OpenISAMFile.
An index file was listed where the data file was supposed to be.
(The first line of the specs file is where the data file is listed.
The second line is for the index file.)
ERROR_INVALID_DATA_FILE_SIZE
- This is returned from ReadISAMRecord, ModifyISAMRecord,
DeleteISAMRecord, and ReIndexISAMRecord.
Only a partial read was possible, indicating that the data file size
was not an even multiple of the record size (+1).
For Read/Modify/Delete, this may indicate trouble.
For ReIndex, it may just mean that an attempt was made to change the
record size, which ReIndex can't do.
ERROR_INVALID_INDEX_FILE
- This is returned from OpenISAMFile.
A data file (or some non-ISAM-related file) was listed where the
index file was supposed to be.
(The first line of the specs file is where the data file is listed.
The second line is for the index file.)
ERROR_INVALID_ITERATION_TYPE
- This is returned from SetUpISAMIterationRange.
Valid types are: 0 - 9.
ERROR_INVALID_KEY_LENGTH
- This is returned from CreateISAMFile and ReIndexISAMFile.
The key length was not a number, or is invalid for the key type,
or a key length was larger than the maximum possible size (499),
or the key length + key offset yields an amount larger than the
record length.
ERROR_INVALID_KEY_OFFSET
- This is returned from CreateISAMFile and ReIndexISAMFile.
The key offset was not a number, or is beyond the end of the record.
The key offset must be less than the record size.
ERROR_INVALID_KEY_TYPE
- This is returned from CreateISAMFile and ReIndexISAMFile.
Either some intervening specification was left out, or the type is
invalid.
Valid types are: A, T, C, I, F.
- This is also called from SetUpISAMIterationPrefix, if the key is
not type A, T, or UI.
ERROR_INVALID_LOCK_TYPE
- This is returned from LockISAMRecord, LockISAMFile, StoreISAMRecord,
OpenISAMFile, ReadISAMRecord, ReadUniqueISAMRecord, ReadNextISAMRecord.
Valid types are: R, W.
ERROR_INVALID_PREFIX_LENGTH
- This is returned from SetUpISAMIterationPrefix.
Either the prefix length specified is longer than the key length,
or the prefix length specified is zero, and strlen( prefix ) is
longer than the key length.
ERROR_INVALID_RECORD_LENGTH
- This is called from CreateISAMFile and ReIndexISAMFile.
Either the record size was not a number, or was less than 4.
A record must be at least 4 bytes in length.
ERROR_INVALID_UorR
- This is returned from CreateISAMFile and ReIndexISAMFile.
Either some intervening specification was left out, or
the Unique/Repeatable character was not "U" or "R".
ERROR_ISAM_ALREADY_INSTALLED
- This is returned from an attempted second installation of ISAM.
ISAM may only be installed once in memory.
ERROR_ISAM_NOT_INSTALLED
- This is returned from any function.
ISAM is not installed.
ERROR_ISAM_SHUTTING_DOWN
- This is returned from any function.
Someone is in the process of shutting down ISAM.
All functions already waiting for ISAM's attention return this after
ISAM receives the command to shut down.
ERROR_KEY_IS_ASCENDING
ERROR_KEY_IS_DESCENDING
- This is returned from SetUpISAMIterationRange.
Either the From Key is after the To Key and the key is an ascending key,
or the From Key is before the To Key and the key is a descending key.
Either way, the From Key and To Key are in the wrong order.
ERROR_KEY_LINE_TOO_LONG
- This is returned from CreateISAMFile and ReIndexISAMFile.
After all necessary information was obtained from a key line, there were
still characters left over.
ERROR_KEY_NOT_UNIQUE
- This is returned from ReadUniqueISAMRecord.
The key number indicated referred to a Repeatable key.
ERROR_MAX_FILES_OPEN
- This is returned from OpenISAMFile.
The maximum number of different ISAM files that can be open, are open
and a request to open another one was made.
Specify a higher maximum the next time ISAM is installed.
ERROR_NO_FREE_SIGNALS
- This is returned from the first function attempted.
In order to communicate with the server, a message port has to be set
up, with a signal bit allocated from the user's task. If there are
no more free signals available, this error is returned.
This is not likely, as there are 16 user signals per task.
ERROR_NO_KEY_INFO
- This is returned from CreateISAMFile and ReIndexISAMFile.
There were no keys specified in the Specs File.
ERROR_NO_MORE_RECORDS
- This is returned from ReadNextISAMRecord and ReadNextISAMKey.
This is not an error.
The iteration SetUp previously is over - no more records meet the
SetUp criteria.
ERROR_NO_SUCH_KEY
- This is returned from any function with a key number parameter.
There is no such key for the given file.
ERROR_NO_SUCH_RECORD
- This is returned from ReadUniqueISAMRecord.
No record with the key value specified exists in the file.
ERROR_NULL_POINTER
- This is returned whenever a pointer to something is given as
a paramter.
The pointer contained the value NULL, and thus was invalid.
ERROR_PARM_COUNT_MISMATCH
- This is returned from [Dis]AssembleRecord when the number of types
in the type string differs from the number of variables in the
variable string [or the number of formats in the format string].
ARexx only.
ERROR_RECORDS_LOCKED
- This is returned from OpenISAMRecord.
The attempt to open the file failed because the user wanted the
file locked, and another user had records in that file locked.
ERROR_RECORD_EXISTS
- This is returned from StoreISAMRecord and ModifyISAMRecord.
This file has a unique key, and a search of the file showed that
a record already exists in the file with the same key value as the
record that the user is attempting to Store/Modify.
ERROR_RECORD_LOCKED
- Another user has the record locked in a mode incompatible with the
current function.
ERROR_RECORD_TOO_HIGH
- This is returned from ReadISAMRecord, ModifyISAMRecord,
DeleteISAMRecord, LockISAMRecord and UnLockISAMRecord.
The RecNo supplied refers to a position beyond the end of the data file.
ERROR_RENAME_FAILED_IN_REINDEX
- This is returned from ReIndexISAMFile.
ReIndex calls Create to make the index file. Create deletes both
data and index files, if they exist. Therefore, ReIndex first
renames the data file. Afterwards, it renames it back.
(In between, it deletes the newly Created (empty) data file, so that
the rename of the already-existing data file back to the old name can
succeed.)
Here, one of the renames, or the delete failed for some reason.
ERROR_SPECS_FILE_EMPTY
- This is returned from CreateISAMFile and ReIndexISAMFile.
There was nothing specified beyond the data/index file names in
the Specs File.
ERROR_TO_KEY_MISSING
ERROR_TO_KEY_PRESENT
- These are returned from SetUpISAMIterationRange.
The iteration type specifies that the To key should/shouldn't be
present, and it wasn't/was.
--------------------------------------------------------------
the following are INTERNAL errors (note the "I") and are
unlikely to be returned. If they are, report them to us.
Copy the problem specs/data/index files onto a floppy disk,
and jot down a note (file or paper) providing the name and
parameter values of the function that returned the error,
along with a copy of the ISAMStatus report, and ISAMFileReport
for the problem file, both run immediately after the error.
After copying the files/reports/function description onto the
floppy, run ReIndex on the file. The problem may just go away.
Do let us know about it, in any case. If we don't know about
bugs, we can't fix them!
--------------------------------------------------------------
IERROR_DELETED_KEYNODE
IERROR_HEADER_KEYNODE
IERROR_INDEX_END_OF_FILE
IERROR_INVALID_AorD
IERROR_INVALID_INDEX_FILE_SIZE
IERROR_INVALID_ISAM_COMMAND
IERROR_KEYNODE_TOO_HIGH
IERROR_KEY_VALUE_NOT_FOUND
IERROR_NOT_DELETED_KEYNODE
IERROR_NOT_DELETED_RECORD
IERROR_NO_FFILE_FOR_TFILE
IERROR_NO_RECORDS_IN_FILE