|
| |
Knowledgebase
>>ITEM : R00090
>>DATE: 07/15/96
>>TYPE: Information
>>TITLE: Btrieve Error Codes - Long Descriptions
>>PRODUCT(S):
RaSQL/B (all versions) for Clipper
RaSQL/B (all versions) for FoxPro DOS
RaSQL/B (all versions) for FoxPro Windows
RaSQL/X (all versions) for Clipper
RaSQL/X (all versions) for FoxPro DOS
RaSQL/X (all versions) for FoxPro Windows
>>PLATFORMS(S):
Btrieve
NetWare SQL
Scalable SQL (SSQL)
>>SUMMARY:
Extended list of Btrieve error codes and their meanings.
Extracted from Btrieve Programmers Manual. May not be complete.
>>MORE INFORMATION:
01 INVALID OPERATION The Btrieve operation number for a call is
invalid.
02 I/O ERROR An error occurred during disk read/write. This
status may indicate that the file has been damaged and must
be recreated, or that the filename specified on the open
call was not created by Btrieve. This status may also occur
if the application writes on the position block allocated
for the file.
03 FILE NOT OPEN An application must perform a successful Open
operation before Btrieve can process any other operations.
This status may also occur if the application writes on the
position block allocated for the file or passes an invalid
position block.
04 KEY VALUE NOT FOUND Btrieve could not find the requested
key value in the specified access path.
05 DUPLICATE KEY VALUE An attempt was made to add a record
with a key field containing a duplicate key value to an
index that does not allow duplicate values.
06 INVALID KEY NUMBER The value stored in the key number
parameter is not valid for the file being accessed. The key
number must correspond to one of the keys defined when the
file was created, or to a supplemental index.
07 DIFFERENT KEY NUMBER The key number parameter changed
before a Get Next, Get Previous, Update, or Delete
operation. The operation requested requires the same key
number parameter as the previous operation because the
Record Manager uses positioning information relative to the
previous key number. If you need to change key numbers
between consecutive Get Next or Get Previous operations,
first use the Get Direct operation to re-establish
positioning by the new access path.
08 INVALID POSITIONING An attempt was made to update, delete,
or get the position of a record without first performing a
Get or Step operation to establish current position. This
status may also occur if the application writes on the
position block allocated for the file.
09 END OF FILE An attempt was made to read past the end of
file. When following an access path in ascending order
(using Get Next operations), Btrieve returns the last record
in the access path for the previous request. When following
an access path in descending order (using Get Previous
operations), Btrieve returns the first record in the access
path for the previous request.
10 MODIFIABLE KEY VALUE ERROR An attempt was made to modify a
key field which is defined as nonmodifiable.
11 INVALID FILE NAME The file name specified does not conform
to file naming conventions.
12 FILE NOT FOUND The file name requested does not exist.
Check the key buffer parameter to ensure that the file name
is terminated with a blank or binary zero and that it is
being passed correctly to Btrieve. In a multi-user system,
this status code may also be returned when the Record
Manager cannot assign a handle to the file because the
Record Manager was not started by a user with access to the
file.
13 EXTENDED FILE ERROR Btrieve cannot find the extension file
for a partitioned file which you have attempted to open.
Extension files must be loaded on the disk drive
specified when the extension was created with EXTEND. Both
the primary file and its extension must be loaded to access
a partitioned file.
14 PREIMAGE OPEN ERROR The preimage file could not be
created/opened. There are three possible causes for this
error. The Record Manager cannot create a new preimage
file to protect future operations because your disk
directory is full. Btrieve must be able to create a
preimage file in order to operate. The Record Manager may be
trying to open the preimage file to restore file integrity.
If the preimage file has been erased or damaged, the Record
Manager cannot restore the file's integrity. In this case,
either use RECOVER to retrieve the damaged file's data
records in a sequential file, or replace the file with its
most recent backup. The Record Manager cannot assign a
handle to the preimage file because the Record Manager was
not started by a user with access rights to the preimage
file.
15 PREIMAGE I/O ERROR This status indicates an I/O error
during the preimaging function. Either the disk is full
or the preimage file has been damaged.
- If the disk is full, erase any unnecessary files or use
EXTEND to gain additional disk space.
- If the preimage file has been damaged, the integrity of
the Btrieve file cannot be ensured. Either use RECOVER to
retrieve the damaged file's data records in a sequential
file, or replace the Btrieve file with its most recent
backup.
16 EXPANSION ERROR The directory structure could not be flushed
for the expanded file partition. Either the Record
Manager cannot close the file or a new page was added to
the file and the Record Manager cannot close and reopen the
file to update the directory structure. Check for a damaged
disk. This status may also occur if the application writes
on the position block allocated for the file.
17 CLOSE ERROR The directory structure could not be flushed
for the Btrieve file. Either the Record Manager cannot close
the file or a new page was added to the file and the Record
Manager cannot close and reopen the file to update the
directory structure. Cheek for a damaged disk. This status
may also occur if the application writes on the position
block allocated for the file.
18 DISK FULL The disk is full and will not allow the file to
be expanded to accommodate the insertion. Either erase any
unnecessary files or use EXTEND to gain additional disk
space.
19 UNRECOVERABLE ERROR An unrecoverable error has occurred.
File integrity cannot be guaranteed. Either use RECOVER to
retrieve the damaged file's data records in a sequential
file, or replace the Btrieve file with its most recent
backup.
20 RECORD MANAGER INACTIVE A request has been made before the
Record Manager has been started. Restart the Record
Manager.
21 KEY BUFFER TOO SHORT The key buffer parameter is not long
enough to accommodate the key field for the access path
requested. Verify that the length of the key buffer equals
the defined length of the key specified by the key number
parameter.
22 DATA BUFFER LENGTH The data buffer parameter is not long
enough to accommodate the length of the data record defined
when the file was created. Verify that the length of the
data buffer is at least as long as file's defined record
length. For Get or Step operations, if the data buffer is
too short to contain the fixed length portion of
the record, Btrieve will not return any data to the data
buffer. If the record is a variable length record, and the
data buffer is too short to contain the entire variable
length portion of the record, Btrieve will return as much
data as it can and a status 22, indicating that it could not
return the entire record.
- For the Insert operation, Btrieve will not insert the record
if the data buffer is shorter than the defined fixed length
portion of the record.
- For the Update operation, if the data buffer is too short to
contain the fixed length portion of the record, Btrieve will
not update the record.
- For the Create, Stat, and Create Supplemental Index
operations, a status 22 indicates that the data buffer is
not long enough to contain all the file and key
specifications, and the alternate collating sequence
definition, if needed.
23 POSITION BLOCK LENGTH The position block parameter is not
128 bytes long.
24 PAGE SIZE ERROR The page size must be a multiple of 512
bytes but must be no larger than 4096 bytes. During a
CREATE operation, the page size is the first file
specification Btrieve checks, and a status of 24 may
indicate an invalid data buffer.
25 CREATE I/O ERROR The filename specified could not be
created. Possible causes are a full disk directory, a full
disk, the disk is write-protected, or the file is open. In
a multi-user system, this status code may also be returned
when the Record Manager cannot assign a handle to the
file because the Record Manager was not started by a user
with access to the file.
26 NUMBER OF KEYS For standard Btrieve files with a page size
of 512 bytes, the number of key segments for all key fields
specified must be between 1 and 8. For larger page sizes,
the number of key segments for all key fields must be
between 1 and 24. You must define at least one key without
the null attribute.
27 INVALID KEY POSITION Either the key position is greater than
the record length or the key position plus the key length
exceeds the record length. The key field position specified
must not exceed the record length defined for the file. For
key-only files, the key must begin in the first byte of the
record (position 1).
28 INVALID RECORD LENGTH The record length specified (plus
overhead for duplicates) is greater than the page size minus
6, or is less than 4 bytes long.
29 INVALID KEY LENGTH The key length specified must be greater
than 0 and cannot exceed 255. The length of a binary key
must be even. Btrieve requires that each key page in the
file be large enough to hold at least eight keys. If the
file's page size is too small to accommodate eight
occurrences of the specified key length (plus overhead),
either increase the file's page size or decrease the key
length.
30 NOT A BTRIEVE FILE The file name specified is not a valid
Btrieve data file. Either the file was not created by
Btrieve or it was created by an earlier version of Btrieve.
Use the program CONVERT4.EYE on the Btrieve Diskette to
convert extended files created by Btrieve v3.x to the
current format. Another possibility is that the first page
of the file, which contains the FCR, is damaged.
31 FILE ALREADY EXTENDED The file name specified is already
extended. A file can be extended only once.
32 EXTEND I/O ERROR The file cannot be extended. Possible
causes are that the disk directory is full, the disk is
full, or the disk is write-protected.
34 INVALID EXTENSION NAME The filename specified for the
extended partition is not valid.
35 DIRECTORY ERROR An error occurred while switching between
the current directory and the directory which contains the
Btrieve file. Either the current directory or the Btrieve
file directory is invalid.
36 TRANSACTION ERROR A Begin Transaction operation cannot be
performed because the /T option was not specified when the
Record Manager was loaded.
37 TRANSACTION IS ACTIVE A Begin Transaction was issued while
another transaction was active. Transactions cannot be
nested.
38 TRANSACTION CONTROL FILE I(O ERROR An error occurred when
the Record Manager tried to write to the transaction control
file. Possible causes are that the disk is full, the disk
is write-protected, or the transaction control file (which
is created when the Record Manager is loaded) has been
deleted.
39 END/ABORT TRANSACTION ERROR An End or Abort Transaction
operation was issued without a corresponding Begin
Transaction operation.
40 TRANSACTION MAX FILES An attempt was made to read or update
more than the maximum number of files allowed within a
transaction. The maximum number of different files that may
be updated during a logical transaction is 12.
41 OPERATION NOT ALLOWED Some operations are not allowed under
certain operating conditions. For example, Btrieve will
return this status if you attempt to perform a Step, Update,
or Delete operation on a key-only file, or a Get operation
on a data-only file. Also, certain operations are
prohibited during transactions because they have too great
an effect on the preimage file or on Btrieve's performance.
These operations include Close, Set or Clear Owner, Extend,
Create Supplemental Index, and Drop Supplemental Index. In
addition, during a transaction you can only open files in
Read-only mode.
42 INCOMPLETE ACCELERATED ACCESS An attempt was made to open a
file that was previously accessed in accelerated mode and
never successfully closed. The file's integrity cannot be
ensured. Either use RECOVER to build a new file or write
your own recovery program that opens the file in recover
mode and uses Step Direct to retrieve the data records.
43 INVALID RECORD ADDRESS The record address specified on a Get
Direct is invalid. Either the address is outside of the
file's bounds, it is not on a record boundary within a data
page, or it is not on a data page. The 4-byte address you
specify on Get Direct should be one that was obtained by a
Get Position operation.
44 NULL KEY PATH An attempt has been made to use Get Direct to
establish an access path for a key whose value is null in
the corresponding record. Btrieve cannot establish
positioning based on a null key value.
45 INCONSISTENT KEY FLAGS The key flags specification on a
Create operation is inconsistent. If a key has multiple
segments, the duplicate, modifiable, and null attributes
should be the same for each segment in the key.
46 ACCESS TO FILE DENIED Your application opened a file in
read-only mode and attempted to perform an Update, Delete,
or Insert on that file. Inconsistent files that are opened
in recover mode can be read but not updated. You should
build a new file using either the RECOVER utility or the
Step Direct operation. Another possible cause is that the
owner name required for updates was not specified correctly
when your application opened the file.
47 MAXIMUM OPEN FILES Another possible cause is that the owner
name required for updates, was not specified correctly when
your application opened the file. When a file is opened in
accelerated mode, the Record Manager reserves one of its
cache buffers for the file. The number of files opened in
accelerated mode cannot exceed the number of buffers
available in Btrieve's cache. Btrieve always reserves
five empty buffers for index manipulation. Restart the
Record Manager with a larger /M option or a smaller /P
option to allocate more buffers.
48 INVALID ALTERNATE SEQUENCE DEFINITION Btrieve returns this
status if the first byte of an alternate collating sequence
definition, the identification byte, does not contain the
hexadecimal value AC.
49 KEY TYPE ERROR You attempted to create a file or a
supplemental index with an invalid extended key type, or you
attempted to assign an alternate collating sequence to a
binary key or key segment. You can only assign an
alternate collating sequence to a string, lstring, or
zstring type key. Btrieve will also return this status if
you defined a supplemental index requiring an alternate
collating sequence, and no alternate collating sequence
definition exists either in the file or in the key
definition passed in the data buffer.
50 OWNER ALREADY SET An attempt has been made to perform a Set
Owner operation on a file that already has an owner. Use
the Clear Owner operation to remove the previous owner
before setting a new one.
51 INVALID OWNER There are two possible causes for this status
code.
- If your application receives this status code after a Set
Owner operation, the owner names specified in the key buffer
and data buffer do not match.
- If your application receives this status code after an Open
operation, the file you are opening has had an owner name
assigned to it. Your application must specify the correct
owner name in the data buffer.
52 ERROR WRITING CACHE While trying to make a cache buffer
available, Btrieve attempted to write data to a disk from a
file that was previously opened in accelerated mode. The
operating system returned an I/O error during the write.
53 INVALID INTERFACE An attempt has been made to access a file
containing variable length records with a language interface
from Btrieve v3.15 or earlier. To access files with
variable length records, you must use a v4.xx interface.
54 VARIABLE PAGE ERROR During a Step Direct operation Btrieve
could not read all or part of the variable length portion of
a record. In this case, Btrieve returns as much data as
possible to your application. This error usually indicates
file damage to one or more pages in the file.
55 AUTOINCREMENT ERROR An application attempted to specify
either the segmented or duplicates attribute for an
autoincrement type key. An autoincrement key cannot be part
of another key, and cannot allow duplicates.
56 INCOMPLETE INDEX A supplemental index is damaged. This can
occur if a Create Supplemental Index operation or a Drop
Supplemental Index operation is interrupted and does not run
to completion. Perform a Drop Supplemental Index operation
to completely remove the index from the file.
57 EXPANDED MEMORY ERROR Btrieve will return this status if it
receives an error from the Expanded Memory Manager. This
error usually means that Btrieve was unable to save or
restore the memory mapping register context, indicating an
incompatibility with another application that uses expanded
memory.
58 COMPRESSION BUFFER TOO SHORT The application attempted to
read or write a record that is longer than the value you
specified for the compression buffer. Restart the Record
Manager, specifying a higher value for the /U: start-up
option.
59 FILE ALREADY EXISTS Btrieve will return this status for a
Create operation if you specified -1 in the key number
parameter and the name of an existing file in the key buffer
parameter.
80 CONFLICT The Update/Delete operation cannot be performed
because the record has been changed by another station since
this station read it. Reread the record to perform the
operation.
81 LOCK ERROR This error can result from any one of three
conditions:
- The Btrieve lock table is full. Reload the Record Manager,
specifying a larger value for the /L option.
- The lock function call to the operating system failed.
- You attempted to unlock one record that was locked with a
multiple record lock, and the record position stored in the
data buffer did not correspond with any record that was
locked in that file.
82 LOST POSITION When performing a Get Next or Get Previous on
a key with duplicates, the application attempted to
retrieve a record that has been deleted or whose key
value has been modified by another station. Re-establish
positioning using a Get Equal or a Get Direct
operation.
83 READ OUTSIDE TRANSACTION The application attempted to delete
or update a record within a transaction but the record was
not retrieved within the transaction. If you are going to
update or delete a record within a transaction, you must
retrieve the record within the transaction to ensure
you have first obtained exclusive access to the data.
84 RECORD IN USE The application attempted to lock a record
that is currently locked by another handle, or your
application attempted to access a file within a transaction
while another station held active record locks in that file.
85 FILE IN USE The application attempted to open a file, lock a
record, or access a record while another handle holds the
transaction lock on the file or has the file open in
accelerated mode. This error code also can be returned if
two stations are performing record level locks because
Btrieve temporarily locks the file to verify that the
buffers are good.
86 FILE TABLE FULL Btrieve's file table is full. Specify a
larger number for the /F start-up option.
87 HANDLE TABLE FULL The operating system cannot assign a
handle for a file. Increase the files parameter in the
CONFIG.SYS file. Under Xenix, the Btrieve handle table may
be full. Increase the value for the -h option.
88 INCOMPATIBLE OPEN MODE The application attempted to open a
file with an incompatible mode. In the Xenix operating
system, if the first handle to access a file opens it in
accelerated mode, all others must open it in accelerated
mode.
93 INCOMPATIBLE LOCK TYPE Your application attempted to mix
single record locks (+100/+200) and multiple record locks
(+300/+400) in the same file at the same time. All locks of
one type must be released before a lock of the other type
can be executed.
94 PERMISSION ERROR Btrieve cannot perform the requested
operation on a file due to an operating system restriction.
These restrictions can include file attributes assigned to
the files through the operating system, operating system
security cheeks, or other operating system restrictions.
For example, in network systems, Btrieve will return a
permission error if a user attempts to open or create a file
in a directory where be or she does not have those rights.
Btrieve will not override the privileges assigned to users
by the operating system.
97 DATA BUFFER TOO SMALL Your application tried to read or
write a record which was longer than the NetWare Btrieve
Record Manager or BREQUEST could handle. Reconfigure the
NetWare Btrieve Record Manager and specify a higher value
for the "Maximum Record Length" option. Reload BREQUEST and
specify a higher value for the /D option. For an Update,
Insert, or Create operation, the application receives this
error if the data buffer length it specifies for the record
exceeds the length specified for NetWare Btrieve Record
Manager or BSERVER. For a Get, Step, or Stat operation, the
application receives this error if the value specified for
the data buffer length is shorter than the length of the
data Btrieve would return, regardless of the data buffer
length specified in the program.
BTRIEVE FOR OS/2 STATUS CODES Btrieve for OS/2 can return the
following status codes.
Error 100: No cache buffers are available. Can be returned by Btrieve 6.0 and later.
Indicates that Btrieve has used all the cache buffers it allocated at load time. Use the Btrieve
Setup utility to increase the value for the Cache Allocation configuration option. If running
server-based Btrieve (v 6.0 or later), you also can change the Number of Remote Sessions
configuration option to decreate the number of concurrent Btrieve users.
1001 LOCKS PARAMETER OUT OF RANGE The number specified for the
/L parameter must be between I and 255 inclusive.
1002 MEMORY PARAMETER TOO LARGE Either the number specified for
the /M parameter is greater than 64, or the operating system
does not have enough free memory available to allocate the
amount specified.
1003 MEMORY PARAMETER TOO SMALL The Memory Size parameter is too
small for the page size specified.
1004 INCORRECT PAGE SIZE PARAMETER The number specified for the
/P parameter must be an even multiple of 512 between 512 and
4,096 inclusive.
1005 INVADED PREIMAGE DRIVE PARAMETER The drive specified for
the preimage drive is not a valid drive letter.
1006 PREIMAGE BUFFER PARAMETER OUT OF RANGE The number specified
for the /B parameter must be between 1 and 64 inclusive.
1007 FILES PARAMETER OUT OF RANGE The number specified for the
/F parameter must be between 1 and 255 inclusive.
1008 UNKNOWN PARAMETER The parameter list contains an invalid or
unidentifiable parameter.
1009 INVALID TRANSACTION FILE PARAMETER The file name specified
for the /T parameter i
1010 UNABLE TO ACCESS BTRIEVE FOR TRANSACTION RECOVERY
Btrieve cannot access one of the files involved in an
incomplete transaction. Three possible causes for this
error are:
- Btrieve cannot open one of the files. Verify that all files
involved in the transaction are online and accessible to
Btrieve.
- An I/O error occurred when Btrieve attempted to read from or
write to one of the files. In order to recover an
incomplete transaction, Btrieve must be able to read and
write the header record in each of the files involved in the
transaction. The file may have been damaged. Check for
media failure and replace all Btrieve files in the
transaction with their most recent backup.
- The disk on which the files are stored is damaged. Check
for media failure and replace all of the Btrieve files that
were accessed in the transaction with their most recent
backup.
1011 COMPRESSION BUFFER PARAMETER OUT OF RANGE The value
specified for the Compression Buffer Size option is invalid.
Valid values are between 1 and 64 inclusive.
>>RESOLUTION/FIX:
>>EXAMPLE(S):
>>SEE ALSO:
>>COPYRIGHT 1996 Communication Horizons
All rights reserved worldwide.
No distribution without specific consent of publisher.

| | |
|