Pervasive Status Codes
Pervasive Status Codes
The file is damaged, and you must recover it. Refer to the Pervasive.SQL Advanced
Operations Guide for more information on recovering files.
In NetWare, at least one MicroKernel data file is flagged as Shareable. All
MicroKernel data files should be flagged as Non-Shareable. The MicroKernel is the
only user that accesses the files (on behalf of many users). As the only user, the
MicroKernel can control the integrity of the data files. If you flag your MicroKernel
data files as Shareable, data corruption can occur.
For pre-v6.0 data files, there is a large pre-image file inside a transaction, and there
is not enough disk space for a write to the pre-image file.
For pre-v6.0 data files, there is one pre-image file for multiple data files. For
example, if you name the data files CUSTOMER.ONE and CUSTOMER.TWO, both files
have pre-image files named CUSTOMER.PRE.
For pre-v6.0 data files that are larger than 768 MB, there is a conflict among locking
mechanisms. The file has not been corrupted. Your application can retry the
operation until the conflict is resolved (when the competing application releases the
lock your application requires).
A pre-v6.0 Btrieve engine attempted to open a v6.x or later MicroKernel file.
With Btrieve for Windows NT Server Edition v6.15.445, 32 bit Windows application
may return Status 2 or "MKDE Terminated with Service Specific Error 0" after
running an application for an extended period of time.
There was a conflict with the assignment of token handles and permissions. You may
receive status 2 or corruption on very busy SMP boxes, when a user is deleted from
the Btrieve Monitor and the user immediately reopens the files. There is an FTF for
Pervasive.SQL v.7.0 Windows NT and Service Pack 3 for Pervasive.SQL 2000i
Windows NT.
In a related situation, the MicroKernel returns this status code when an application
performs a Delete or Update operation immediately following a Get operation. If the
application changes the value of the key number in the Delete or Update operation
(from the value used with the preceding Get operation), the MicroKernel deletes or
updates the record as requested and does not return this status code, at least not at
this point. However, the MicroKernel does return this status code on the very first
Get Next, Get Next Extended, Get Previous, or Get Previous Extended operation
performed after the deletion or update, even if that Get operation uses the same key
value the application passed to the Delete or Update operation.
If you need to change key numbers between consecutive Get Next, Get Next
Extended, Get Previous, or Get Previous Extended operations (or in Delete or Update
operations as described in the preceding paragraph), use a Get Position operation
followed by a Get Direct/Record operation to reestablish positioning for the new
index path.
The specified filename does not conform to file naming conventions or the pathname
is invalid. Make sure the filename or pathname is valid for the environment.
If operating in the client/server environment:
The application attempted to open a file that has .^^^ as its extension. This
extension is reserved for the MicroKernel to use during continuous operation. (Only
server engines can use continuous operation.)
The data buffer for a Begin or End continuous operation is not set up correctly.
You attempted to load a remote file when your Communications Requester settings
of Local and Requester are incorrectly set to On and Off, respectively. To resolve this
condition, go to the Access option in the Client configuration settings and change the
Requester setting to On. For more information about Configuration settings, refer to
the Pervasive.SQL Advanced Operations Guide.
You attempted to open a local file with a Workgroup engine. Go to the directory
where the file you attempted to open resides. Check to see if the ~pvsw~.loc in that
directory is flagged read only. If it is, change it to read-write.
If you are using the dynamic locator file in your Workgroup engine:
Make sure the name of the second-level locator file specified in your first-level
locator file does not have the same name as an existing directory. Also, make sure
they are all on the same drive.
Make sure the second-level locator file specified in your first-level locator file can be
accessed by the engine.
Make sure you have the same directory level of drive mapping across all the
Workgroup engine sharing dynamic locator feature.
If you are accessing files on a DOS client:
A NET START FULL for the Windows for Workgroups workstation was not used when
it was booted into DOS. Use a NET START FULL to get a full redirector in the DOS
client mode. BREQNT.EXE requires a full redirection. At the DOS prompt type "net
ver" <Enter>. Here is the list of required components for a DOS workstation to
connect to a Windows NT server:
LSL.COM LAN Card Driver
IPXODI.COM
IFSHLP.SYS
NET START FULL
These can be loaded high, using emm386. NET START FULL will load in upper
memory. NETX is required ONLY if you are connecting to a NetWare server.
You attempted to open a file with a long filename on NSS volumes. The MicroKernel
queries the volumes using OS calls and then loads the appropriate drivers for the
associated name spaces it find for the volumes. In this case, the MicroKernel was
being loaded before mounting the volumes so it did not find the requirement for long
filename support by the NSS volumes.
Issue the MGRstart or Bstart command after loading the volumes. An example would
be:
LOAD NSS
MOUNT ALL
SYS:ETC\INITSYS.NCF
MGRSTART or BSTART
If you are working in the Microsoft Terminal Server environment:
Approximately 5 users can work in a Windows application on 2 different Terminal
Servers that are connected to a primary Windows NT 4.0 server. If you have
attempted to run on top of this limit, you will receive status codes 11 and 35. For the
recovery solution for this instance, refer to Microsoft Knowledgebase Article
Q190162, "Terminal Server and the 2048 Open File Limitation."
An ODBC connection may receive this code on NetWare 4.x with the Pervasive.SQL
2000 Workgroup Engine. This status code did not appear until Pervasive.SQL 2000
Service Pack 2a. It is caused by Netware 4.x reporting long directory in a different
format than NetWare 3.x, NetWare 5.x, or the Win32 Environment.
Novell has a fix for this problem in a file named Mixmod6.exe. Search for file at
Novell's web site (http://www.novell.com).
This error code may also be returned when the file DBNames.CFG has been removed
(for example, by the Pervasive.SQL cleanup utility) and old Data Source Names
(DSNs) which reference that file are not removed from the ODBC. You may have a
Status 12 returned and see X$FILE.DDF for the file name in your DDFs .
If the file.ddf is examined with a Btrieve utility, the location name for the dictionary
files will be x$file.ddf, x$field.ddf, x$index.ddf, instead of the standard file.ddf,
field.ddf, index.ddf. An unsupported DDF Creation utility called DDL Services
(DDLSVCS.DLL) created the DDFs. DDL Services has a known bug that causes the
system table to be populated with incorrect data. To resolve this error, recreate the
DDFs using a newer tool (DDF Ease or SQL Scope for Pervasive.SQL v7.0 or SQL
Data Manager/Pervasive Control Center with Pervasive.SQL 2000).
You may get Status 12 when a file with a filename or path with embedded spaces is
opened on Windows 9x, Windows NT or Windows 2000. For long NetWare file names,
support is available only in the MicroKernel and not in NLM utilities such as
BUTIL.NLM. Btrieve data files can be accessed using long names but long names
cannot be used for other files. For example, in the NLM command:
BUTIL -CREATE <outputFile> <descriptionFile>
Since MKDE manipulates the <outputFile> Btrieve data file, it can have a long name.
However, the <descriptionFile> can only have a short name (such as BUTIL.NLM)
since it does not accept long names. The solution is to enable "Embedded Spaces".
13: The MicroKernel could not open the extension file for an extended file
The MicroKernel could not open the extension file for an extended file that the
application tried to open. An extended file can consist of a base file and up to 31
extension files. Extension files must remain in the same volume and directory as
their base files. The MicroKernel returns this status code if you delete, move, or
rename the extension files.
The MicroKernel returns this status code in one of the following situations:
The MicroKernel cannot create a new pre-image file because the disk directory is full.
The MicroKernel must be able to create a pre-image file.
The MicroKernel cannot open the pre-image file to restore file integrity. If the pre-
image file is erased or damaged, the MicroKernel cannot restore the file integrity.
Refer to the Pervasive.SQL Advanced Operations Guide for more information about
recovering damaged files.
The workstation MicroKernel cannot assign a handle to the pre-image file because
the MicroKernel was not started by a user with access rights to the pre-image file.
The file structure of a pre-image file created by this MicroKernel is different from the
file structure of a pre-image file created by a v5.x MicroKernel. If you have an
extraneous .PRE file in v5.x format, the MicroKernel returns this status code when
you try to open the data file to which the .PRE file belongs.
The pre-image file is damaged and the integrity of the data file cannot be ensured.
Refer to the Pervasive.SQL Advanced Operations Guide for more information about
recovering damaged files.
The disk is full. Erase any unnecessary files.
The MicroKernel encountered an error while writing the directory structure to disk
prior to creating the expanded file partition. Either the MicroKernel cannot close the
file, or a new page was added to the file and the MicroKernel cannot close and
reopen the file to update the directory structure. Check for a disk hardware failure.
The disk is full and the MicroKernel cannot expand the file to accommodate
additional records. Erase any unnecessary files.
There is not enough space to append a new page to the data file.
The pre-image file is out of disk space. If your files are in pre-v6.0 format and you
are in a transaction, the pre-image file size increases for the duration of the
transaction. If you receive this status code, either reduce the number of operations
in the transaction, or obtain more disk space.
For files located on a NetWare server, the NetWare owner name for the file is no
longer valid, and your application tried to insert or update records in the file, thus
causing the file to expand. In this case, the MicroKernel returns this status code
when it needs to add a page to the file, regardless of how much disk space is
available. To check for an owner name, use the NetWare utility NDIR. To add an
owner name, use either FILER (a NetWare text utility) or the NetWare Administrator
graphical utility.
In some environments, you can restrict the amount of disk space available to each
user. This status code indicates that the application attempted to expand a data file
beyond the amount of disk space allocated to the file owner.
You tried to read or modify a file which was not closed properly after a disk full error.
Make sure that every application using the file at the time of the disk full error closed
the file successfully.
If a client connected to a Pervasive.SQL server encounters this status code, other
clients performing read-only operations from the same disk may also receive a non-
zero status.
If you want to use BREQNT, BREQUEST, or BREQTCP, you must remove BTRBOX95
and make sure the proper requesters are loaded. Refer to Getting Started with
Pervasive.SQL for more information.
If you want to use BTRBOX95:
Change directories to \pvsw\clients\dos\windosbox and run the setup utility. This
loads the appropriate file for clients running Windows 9x or Windows NT. The setup
program creates and places a README.TXT file in the \pvsw\W32DOXBOX directory.
After installation, reboot the client.
For Windows NT users: open a command prompt and run a DOS Btrieve application.
For Windows 9x users:
Run the BTRBOX95.exe. A minimized dialog box appears, indicating that BTRBOX95
support is active. If you close this dialog box, it will unload BTRBOX95. You only
need to run BTRBOX95.exe once even though you have multiple DOS sessions open.
Open a command prompt and run your DOS Btrieve application.
If you are operating in a NetWare environment:
Make sure the Microkernel and (if applicable) the Btrieve Requester are loaded
before generating any requests.
Make sure the appropriate communication modules are loaded at the server.
If you are operating in a Windows NT server environment:
Make sure the MicroKernel is started before generating any requests.
Make sure the Windows NT DLLs are in your path.
Make sure the appropriate communications modules are loaded at the server.
The page size you specified when creating a file is invalid. The page size must be a
multiple of 512 bytes and cannot exceed 4096 bytes.
During a Create operation, the page size is the first file specification the MicroKernel
checks. If you receive this status code at this point, it can indicate an invalid data
buffer parameter.
If an application attempted to create a data file, the disk directory or the disk itself
may be full.
If an application tried to create a file over an existing file, the existing file is open or
the operating system will not allow the operation for another reason (such as when a
file is flagged transactional in NetWare).
In an attempt to create a Btrieve file over existing Btrieve file, this status will be
returned. The keybuffer on the Btrieve create operation API (opcode 14) is set
properly to create a file over an existing file.
This problem may be caused by Antivirus software (such as Innoculan)
One solution is to disable the Antivirus software. Contact the third party vendor for
additional information on configuring the Antivirus software to eliminate scanning
specific data files.
If the MicroKernel is configured to create files in v5.x format, the maximum number
of key segments is 8 for files using 512 byte page sizes; the maximum number of
key segments for all other v5.x files is 24.
For a key-only file, this status code is also returned if the number of keys specified is
not one, or the available linked keys is not zero (only one key is allowed for a key-
only file.)
Pervasive.SQL 2000i nullable columns: Because each indexed nullable column with
true null support requires an index consisting of 2 segments, you cannot have more
than 59 indexed nullable columns in a table (or indexed nullable true null fields in a
Btrieve file). This limit is smaller for smaller page sizes (1/2 the values noted above,
rounded down). Any file created with Pervasive.SQL 2000i, with file create mode set
to 7.x, and TRUENULLCREATE set to the default value of On, has true null support.
Files created using an earlier file format, or with Pervasive.SQL 7, or with
TRUENULLCREATE set to Off, do not have true null support and do not have this
limitation.
For key-only files, the maximum record length is 253 bytes (255 bytes for a pre-v6.0
file).
You have tried to create a file with a record length greater than 4086 bytes. The
Btrieve API Create(14) Call will returned this status code. Due to keeping the fixed
length portion of a record on one page in memory, the fixed length portion of any
record may not exceed 4078 bytes (4086 - 8), to encompass the record and
overhead for the record.
A program may define variable length portions of a record. These variable length
portions are not restricted to remain on any one page in memory.
one can create a fixed length portion of the record, not to exceed 4078 bytes, and
place the additional columns/fields in a variable length portion.
OR
one can select compression when creating the file. This will allow one to have a large
size because the compression selected files reside on variable pages as opposed to
fixed length pages.
You have not specified a key length that is greater than 0 but does not exceed 255
bytes. The length of a key segment must agree with its key type if the key type
implies a length (for example, an integer key must have a length evenly divisible by
two). Each key page in the file must be large enough to hold at least eight keys. If
the page size is too small to accommodate eight occurrences of the specified key
length (plus overhead), you must increase the file page size or decrease the key
length.
An additional byte of storage space is needed for the null indicator for the column.
This error occurs through a SQL CREATE INDEX statement, or through the creation of
a SQL PRIMARY KEY or FOREIGN KEY, if the index, or key, references a null CHAR
column of 255 characters (or VARCHAR of 254). This additional byte causes the
actual length of the index to be one byte longer, or 256 bytes. To resolve the error,
reduce the size of the column or create the column as NOT NULL and try again. For a
foreign key, if you decrease the size of the column, you must decrease both the
referencing column and the referenced column.
You have tried to create a Btrieve file with more than one index. This may occur in
the Btrieve v6.15 Windows95/NT environment. The problem is reproducible
developing 32-bit application using Microsoft Visual Basic and is caused by long
variables aligned on even word boundaries. The solution is to not use the long
variable in the KeySpec type. Use a four (4) byte string instead of a long variable in
the type definition. Then convert the string into a long.
The MicroKernel did not create the file, or a pre-v3.x MicroKernel created it.
While using an earlier version of Btrieve, you opened a file created by a later version
that has a format incompatible with the earlier version.
The first page of the file may be damaged. Use a backup copy of your data file. If
you receive this status code and you suspect that the header page of the source file
is damaged, recover the file as described in the Pervasive.SQL User's Guide.
You have attempted to access a valid Btrieve file. This status code is returned when
old engines access newer file formats. A likely scenario is that data created by a new
server engine is later used by an earlier workstation engine. Status 30 can be
reported if the file format is newer than the MicroKernel engine attempting to open
it. Particularly, accessing a 7.x file with a 6.x engine causes this error.
NOTE: Previously, accessing a 6.x file with a 5.x engine returned Status 2: "the
application encountered an I/O error"
31: The file is already extended
This status code is obsolete in MicroKernel versions 6.0 and later.
An application tried to extend a file that had already been extended; you can only
extend a file once.
You attempted to unload the MicroKernel when you have loaded another terminate
and stay resident (TSR) program after you loaded the MicroKernel. Unload the other
TSR before unloading the MicroKernel.
You attempted to unload the MicroKernel from a 32-bit application that uses the
BSTUB interface with the DOS/4G extender.
An application specified an invalid filename for the extended partition. Check the
validity of the filename.
The MicroKernel tried to write to the transaction control file. Possible causes for
receiving this status code are that the disk is full, the disk is write protected, the
transaction control file (BTRIEVE.TRN) that is created when you load the MicroKernel
has been deleted, or the transaction control file is flagged read-only or is corrupt.
40: The file access request exceeds the maximum number of files allowed
This status code is obsolete in MicroKernel versions 6.0 and later.
The application tried to access more than the maximum number of files allowed
within a transaction. You set the maximum number of different files that you can
access during a logical transaction when you configure the MicroKernel.
The application tried to perform an operation that is not allowed under these
operating conditions. The MicroKernel does not allow some operations under certain
operating conditions. For example, the MicroKernel returns this status code if the
application attempts to perform a Step operation on a key-only file.
If using a server engine, the key number parameter of a continuous operation
MicroKernel call is not valid.
The MicroKernel prohibits certain operations during transactions because they have
too great an effect on the file or on performance. These operations include Set
Owner, Clear Owner, Create Index, and Drop Index.
The MicroKernel returns this status code for the following reasons:
Either the application tried to open a v5.x data file that was previously accessed in
Accelerated mode by a v5.x MicroKernel and never successfully closed, or the
application tried to open a file for which a v6.0 or later MicroKernel encountered an
unrecoverable error during a Set or Clear Owner operation. The file integrity cannot
be ensured. Refer to the Pervasive.SQL Advanced Operations Guide for information
about recovering damaged files.
Your application tried to open a file in MicroKernel v5.x format using a v5.x
MicroKernel; however, that same file was previously accessed by a v6.0 or later
MicroKernel, which failed to close the file successfully and left a pre-image file on the
disk. Version 5.x MicroKernels cannot read pre-image files created in v6.0 or later
format.
The MicroKernel returns this status code for the following reasons:
The record address specified for a Get Direct operation is invalid. Either the address
is outside the file boundaries, or it is not on a record boundary within or on a data
page, or the record at the specified address has been deleted. For a Get Direct
operation, specify the 4-byte address obtained by a Get Position operation.
If the records' file is in v5.x format, this status code can indicate a file access
conflict. For example, task 1 has a file locked in an exclusive transaction. Task 2 is
reading records from the same file and tries to update a record that the transaction
inserted. If task 2 reads the record and then task 1 aborts the transaction, task 2
receives this status code when issuing the Update operation.
For a Find Percentage operation that is seeking a percentage based on a record's
physical location within the file, the specified record address is invalid.
The file may be corrupt, and you must recover it. Refer to the Pervasive.SQL
Advanced Operations Guide for information about recovering damaged files.
The application opened a file in Read-only mode and tried to perform a Write
operation on that file.
The application attempted to perform a Write operation on a file that is flagged read-
only by the operating system.
When the application opened the file, it did not correctly specify the owner name
required for updates.
(Workstations Only) If a workstation engine user or task opens a file that a client
machine has opened using a server MicroKernel, the MicroKernel returns this status
code if the workstation engine user attempts to write to the file.
Pre-v6.0 workstation MicroKernels return this status code when the number of files
opened in Accelerated mode exceeded the number of buffers available in the
MicroKernel cache. When a file is opened in Accelerated mode, the MicroKernel
reserves one of its cache buffers for the file. It always reserves five empty buffers for
index manipulation. Reconfigure Btrieve with both a smaller /P configuration option
(to allocate more buffers) and a larger /M option (to increase the cache allocation).
The first byte of an Alternate Collating Sequence (ACS) definition (the identification
byte) does not contain the hexadecimal value AC (for user-defined ACSs), AD (for
locale-specific ACSs), or AE (for international sorting rules support). Make sure that
the first byte contains the appropriate value.
You set the Create File Version option set to v5.x, and you attempted to create a file
that contains a key with a locale-specific ACS. Pre-v6.0 files do not support locale-
specific ACSs.
You tried to create a file or an index with an invalid extended key type.
You tried to assign an Alternate Collating Sequence (ACS) to a BINARY key or key
segment. You can assign an ACS only to a STRING, LSTRING, or ZSTRING key type.
You defined an index requiring an ACS, but no ACS definition exists either in the file
or in the key definition passed in the data buffer.
You attempted to create a key segment with both the Case Insensitivity and the ACS
flags set, and the MicroKernel is configured to create files in v5.x format. This
combination is invalid for v5.x files.
You set the Create File Version value to v5.x, and you attempted to create a file with
a NUMERICSA or NUMERICSTS key. Pre-v6.x files do not support these key types.
OR
You set the Create File Version value to v6.x, and you attempted to use one of the
new Pervasive.SQL 2000i data types, such as CURRENCY or TIMESTAMP. Pre-v7.x
files do not support these key types. Increase the setting for this component.
To increase the Create File Version setting:
If the application received this status code from a Set Owner operation, the owner
names specified in the key buffer and data buffer do not match.
If this status code occurred during an Open operation or a DROP TABLE statement,
the application attempted to open a file that has an owner name assigned to it. The
application must specify the correct owner name in the data buffer. Ensure that the
owner name is null-terminated in the data buffer and that the data buffer length is
set long enough to include the owner name plus the null terminator.
Btrieve for DOS returns this status code if it receives an error from the Expanded
Memory Manager. This status code usually means that the MicroKernel was unable to
save or restore the memory mapping register context, indicating an incompatibility
with another application that uses expanded memory.
The descriptor (data buffer structure), which is passed for a Get Next Extended, Get
Previous Extended, Step Next Extended, or Step Previous Extended operation, is
incorrect. The descriptor length (the first two bytes of the data buffer) on the
extended operation call must be the exact length of the descriptor. This requirement
does not apply to the data buffer length option, which can still be declared longer
than necessary.
On a Stat Extended operation, the signature field in the data buffer is not set to
0x74537845, the subfunction field is not set to 0x00000001, or the namespace field
is not set to 0x00000000.
On a Get Direct/Chunk or Update Chunk operation, the descriptor structure in the
data buffer is incorrect, or is inconsistent either internally or with respect to the data
buffer length.
ActiveX control's buffers are not cleared and reallocated. Use the Init method to clear
and reallocate the control's buffers before the use of any extended operations in the
code. In addition, if you are using AutoMode, it is necessary to establish logical
position (GetLast, GetFirst, GetEqual, etc.) before making the call to Init.
During a Get Next Extended, Get Previous Extended, Step Next Extended, or Step
Previous Extended operation, a rejected record was reached; no other record can
satisfy the given filtering condition, going in the direction that the operation
specified. This is applicable only if the first segment of the key that the key number
specified is also used as the first term of the filtering field.
The number of records to be retrieved is greater than the number of records present
in the file that satisfy the filter condition. This option is specified in the data buffer of
the extended operation.
The MicroKernel tried to open files bound to too many MicroKernel databases. To
avoid receiving this status code, you must set a higher value for the number of
databases that the MicroKernel can open.
67: The MicroKernel cannot open the SQL data dictionary files
The MicroKernel returns this status code for the following reasons:
If the DBNAMES.CFG file is defined on a server, verify that the file location does not
contain a drive letter.
If the DBNAMES.CFG file is defined for a workstation engine, make sure that the
drive letters are the same (and map to the same locations) as specified in
DBNAMES.CFG.
Refer to the Pervasive.SQL Advanced Operations Guide for more information about
RI.
You tried to open a data file that is bound to a MicroKernel database, and the
database to which the file is bound was not found in the DBNAMES.CFG file.
You tried to open a data file with RI (Referential Integrity) definitions that are bound
to a MicroKernel database, and the table to which the file is bound was not found in
the database FILE.DDF file, or the table location and filename do not match the file
location and filename as configured in the DBNAMES.CFG or FILE.DDF file.
You attempted to modify a bound file, and the RI definition for that file disagrees
with the definition in the RELATE.DDF file.
You attempted an Insert, Delete, or Update operation that would change a foreign
key, if the file related to this file is out of sync (an attempt to open or modify the
related file would have returned this same status code).
You attempted to create a file with the Replace option, and a bound MicroKernel data
file with the same name and location already exists. However, the MicroKernel
detected that the existing bound file was out of sync (that is, an attempt to open the
existing file would have returned this same status code).
Check the RI constraints on your database. For information about how to do this,
refer to the Pervasive.SQL User's Guide.
74: The MicroKernel aborted the transaction
This status code is obsolete in MicroKernel versions 6.0 and later.
This is an informative status code. You must retry the operation yourself; the
MicroKernel does not automatically retry the operation. A client/server MicroKernel
returns this status code in one of the following situations:
The application specified a wait lock bias for an operation, but another user has
locked the requested resource.
The application is currently processing a wait transaction and tried to access a file
that another user has locked.
When you are using the Btrieve Requester to access the MicroKernel, the Requester
waits and retries if a requested resource is locked. When a server-based application
is accessing the MicroKernel and the requested resource is locked, a wait is also
required. In this case, the MicroKernel is expected to perform the wait. Because this
would occupy the MicroKernel and lock out other users who might be trying to
release the requested resource, the MicroKernel does not perform the wait. Instead,
it returns this status code, and the server-based application must retry later.
There is a malfunction that the MicroKernel cannot specifically detect or from which
the MicroKernel cannot recover. Retry the operation. If the error persists, there may
be system corruption; try to clear the system by rebooting, and then try the
operation again.
In key-only files, you receive this status code if the record is moved in the file b-tree
after being read and before being updated or deleted. A record can move as a result
of other records being inserted, updated, or deleted.
The application tried to unlock a record that is locked with a multiple record lock, but
the record position stored in the data buffer does not correspond to any record
locked in the associated file.
The application tried to unlock a single-record lock with a multiple-record lock or
vice-versa.
83: The MicroKernel attempted to update or delete a record that was read
outside the transaction
This status code is obsolete in MicroKernel versions 7.0 and later.
The application tried to update or delete a record within a transaction, but it did not
read the record within the transaction. The application must read the record within
the transaction before attempting to modify the data.
Retry the operation until it is successful. This can be the simplest and quickest
solution for a network with light to moderate use.
Use the wait option (+100/+300) instead of the no-wait option (in versions that
support the wait option).
85: The file is locked
The MicroKernel returns this status code in one of the following situations:
The workstation MicroKernel has a file open, and client machine that has the
Requester loaded tries to open the same file via the server MicroKernel. The server
MicroKernel cannot open the file because it cannot obtain exclusive access. The client
machine that has the Requester loaded receives this status code.
In a workstation engine environment, the MicroKernel can return this status code on
an Open, Insert, Update, or Delete operation for a file under heavy usage by multiple
users or tasks. The MicroKernel must momentarily have exclusive access to the file
during these operations, and it retries the operation several times before returning
this status code. In this case, the application can reissue the operation. In addition,
you can reconfigure the workstation MicroKernel with a lower Operation Bundle Limit
and Initiation Time Limit to reduce the amount of time the MicroKernel keeps a lock
on the file. Refer to the Pervasive.SQL Advanced Operations Guide for more
information on how to do this.
While one user has a file locked in an exclusive transaction, another user attempts to
lock all or part of that file.
When opened by a MicroKernel, a file is in transition into Continuous Operation
mode. Retrying eventually works.
When opened by a MicroKernel, two data files have the same filename but different
extensions (for example, INVOICE.HDR and INVOICE.DET). One file is open and in
Continuous Operation mode, causing the MicroKernel to generate a delta file (for
example, INVOICE.^^^). The MicroKernel returns this status code when you
attempt to open the second file. For this reason, we recommend naming your files
with completely different names, not just reusing the same name with different
extensions.
When opened by a Windows NT server MicroKernel using Microsoft File and Print
Services for NetWare on behalf of a Win16 Windows client, the file was also opened
simultaneously by a Win32 Windows NT or Windows 9x machine. This causes the
server MicroKernel to open the same physical file using two different paths.
Without any pattern of occurrence, you may receive a status 85 when the file is
closed because Anti-Virus software opens and locks the file to scan causing the next
database operation to fail. To resolve, set the Anti-Virus software to not scan
Pervasive SQL data files. Consult your Anti-Virus software manual for instructions on
how to exclude files.
The number of different files that the MicroKernel can open at the same time has
reached its maximum limit. To avoid receiving this status code, increase the value
for the Maximum Open Files configuration option.
You have either attempted to open more handles than the MicroKernel is configured
to support, or the MicroKernel attempted to open more files than the operating
system allows.
If the file is in v5.x format, the MicroKernel might request a second handle, for the
.PRE file. Also, if the file (in any format) is placed in Continuous Operation mode, the
MicroKernel requests another handle for the delta file. If the file is extended, the
MicroKernel requests an operating system handle for each of the extension files.
In the Btrieve v6.15 DOS or Microsoft Windows NT 4.0 environments, you may
received this status code when opening the 16th file in a DOS application running
under Windows NT. There may two solutions:
Btrieve File handle configuration may be set incorrectly in BTI.CFG. Check BTI.CFG
for file handle setting (/h: and /f:) and increase those values.
Check the file= setting in CONFIG.NT. This file is in the WINNT\SYSTEM32 directory
and raise the values.
NOTE: default value is 20.
If an application opens a file in Exclusive mode, all other applications receive this
status code when they try to open the same file in any mode.
If an application opens a file in any mode other than Exclusive, all other applications
receive this status code when they try to open the same file in Exclusive mode.
While using the MicroKernel Continuous Operation mode:
You attempted to remove a file from continuous operation, but the file is not in
Continuous Operation mode.
You attempted to remove a file from continuous operation, but a different client
placed the file into continuous operation.
You attempted to include two files in continuous operation that have the same name
but different extensions.
You attempted to include a file in continuous operation, but the file is already in
continuous operation.
BSERVER was loaded before you specified the short name to which the device was
redirected. You must specify all short names that you want to share with the NET
SHARE command before you start BSERVER.
The DOS Requester redirection table or server routing table is full. This occurs if you
attach to additional servers or map additional drives after loading the Requester.
Reload the Requester, specifying a larger value for either the Number of File Servers
(/S) option or the Number of Mapped Drives (/R) option. This status code also occurs
if you detach from a server and attach to a different server. Once a client has
attached to a server, the Requester does not remove its name from the server
routing table.
For a list of all available BRequest commands, type /? at the command line.
The MicroKernel returns this status code in one of the following situations:
The Requester cannot establish a session with the server. Either the client/server
MicroKernel is not loaded or the server is not active.
The SPX drivers are not installed or are outdated.
The MicroKernel has reached the maximum limit for the number of sessions it can
open at one time. To avoid receiving this status code, increase the value for the
Number of Sessions configuration option.
To increase the Number of Sessions:
The user count limit has been exceeded. Either close a session or upgrade your user
count. For more information about purchasing and installing additive user counts,
refer to the Pervasive.SQL User's Guide.
Ensure that the NDS network number is the same as the Internal Network Number
viewed by BINDER.EXE output.
You ran BUTIL.NLM to roll forward a file using a log filename other than the default,
and your BLOG.CFG file did not contain a correct entry such as
"\dir\file.ext=vol:\dir\log.ext".
The application exceeded the maximum number of active transactions. Use the
configuration utility to specify a higher value for the Number of Transactions
configuration option.
The application tried to open or create a file in a directory without the proper
privileges. The MicroKernel does not override the network privileges assigned to
users.
The designated server is in the server routing table, but your particular client is not
logged into that server.
The system data source name (DSN) on the server has an error in the pathname to
the data files.
A NetWare application tried to access a file using NetWare Runtime support with the
given username. Specifically, one of the following situations exists regarding the
supplied username:
The user is not a valid user on the NetWare Runtime server.
The user does not have the appropriate rights to access the file.
The username is ADMIN or SUPERVISOR. For security reasons, the MicroKernel does
not enable you to use ADMIN or SUPERVISOR as a username when enabling
NetWare Runtime support.
User is logged in to NetWare server with grace login (i.e., password has expired and
a set number of grace logins are left). Change the user's password to a valid
password (no grace login) and reconnect to the server with the valid password.
When using the Win32 Requester from a Windows NT/9x client machine to a
NetWare server, you must use the same username for logging in to both the client
machine and the NetWare server. You cannot be logged in to NetWare as
SUPERVISOR or ADMINISTRATOR.
When using the Win32 Requester from a Windows NT/9x client machine using
NetWare emulation to a Windows NT server, the server cannot use Microsoft File and
Print Services for NetWare. This causes the requester to attempt authentication as
though the server were a NetWare Runtime server.
It is recommended that you keep the default Requester setting of Yes on FPNW
servers running Pervasive.SQL. You may receive a Status Code 94 if you change this
setting to No when you are running the Btrieve Interface locally on the FPNW server
and are using a local FPNW drive mapping or local FPNW UNC path.
You may also receive this status if you have Client for NetWare Networks installed on
a Windows only network where no NetWare servers present. Remove the Client for
NetWare Networks from the Windows 95 workstation.
The server MicroKernel returns this status code for one of the following reasons:
The previously established session is no longer active due to an error at the client
machine, at the server, or on the network. Verify that the client machine is still
attached to the server, and then unload and reload the Btrieve Requester.
If you are using the SPX protocol:
The server MicroKernel has reached the maximum number of SPX sessions. Use the
Monitor utility to check this statistic. To avoid receiving this status code, increase the
value for the Number of Sessions configuration option.
To increase the Number of Sessions:
After installing Windows NT Service Pack 3 or 4, SPX requesters may fail and return
this status code (95), Status 97, or Status 91. Refer to the Microsoft Knowledgebase
article Q170517 for more information regarding this cause.
Choose Start | Run.
Type Regedit and click OK. The Registry Editor opens.
Make the following CHANGES to the server's registry using Regedit:
HKEY_Local_Machine | System | CurrentControlSet | Services | NwLnkIpx |
<Network Card> | MaxPktSize = 240 Hex.
HKEY_Local_Machine | System | CurrentControlSet |
Services | NwLnkIpx | <Network Card> | NetworkNumber = <Non-Zero Value>
You tried to attach to the MicroKernel on a server, but the SPX connection table or
the MicroKernel client table is full. To avoid receiving this error, increase the value
for the Number of Sessions option.
To increase the Number of Sessions:
For an Update, Insert, or Create operation, the application receives this status code if
the data buffer length it specifies for the record exceeds the message buffer length.
For a Get, Step, or Stat operation, the application receives this status code if the
message buffer is shorter than the length of the data the MicroKernel would return,
regardless of the data buffer length specified in the application.
For a Get Chunk or Update Chunk operation, the total size of the retrieved or
updated chunk exceeds the message buffer length.
To increase the Communication Buffer Size:
99: The Btrieve Requester is unable to access the NetWare Runtime server
This status codes is returned in the following situations:
You enabled NetWare Runtime server support and the Requester either detected no
existing connection or could not find a valid login username. SUPERVISOR and
ADMIN are not valid usernames, even if supplied with the correct password. If the
Requester cannot find a login username other than SUPERVISOR or ADMIN, there is
no valid name to pass.
You tried to access a server with the NetWare Runtime server support option
disabled and you do not have an existing connection to that server.
When accessing Windows NT 4.0 Server from a client machine, you may receive this
status code if the user moved from a NetWare server to a Windows NT Server. To
resolve, remove the "SatEntry" (referencing the NetWare Server) in BTI.ini (for 16-
bit applications) and/or the Registry (for 32-bit applications) under Communications
Requester.
NOTE: The "SatEntry" is a line that resembles "SatEntry1=xxxxxxx-01,2,3"
Go to Performance tuning in the server configuration and decrease the value for the
Cache Allocation configuration option.
Add memory to the server.
For more information, see Status Code "1002: A memory allocation error occurred"
on page 1-109, a similar status code that the Windows-based MicroKernel returns in
the same situation.
A Get Direct/Chunk operation specified an offset beyond the end of the record, either
explicitly or using the next-in-record bias to the subfunction value. Unless the
MicroKernel returns this status code while processing the first chunk, the operation
was partially successful. Check the data buffer length parameter immediately after
the call to see how much data was retrieved (and therefore how many chunks).
An Update Chunk operation specified an offset that is more than one byte beyond
the end of the record. This status code indicates that the MicroKernel has made no
changes to the record.
An Update Chunk operation with an Append subfunction causes a record length to
exceed its operating system file size limit. The MicroKernel has made no changes to
the record.
105: The file cannot be created with Variable-tail Allocation Tables (VATs)
An application tried to create a file with Variable-tail Allocation Tables (VATs) but
without variable-length records (a precondition for files to use VATs). This status
code applies to key-only files as well as to regular data files.
110: The MicroKernel cannot access the archival logging configuration file
The archival logging configuration file (BLOG.CFG) contains entries for the data files
on the drive for which you want to perform archival logging. The MicroKernel returns
this status code for the following reasons:
The MicroKernel cannot find the BLOG.CFG file. Ensure that the file is in the \BLOG
directory in a real root directory of the physical drive that contains data files you
want to log. (That is, do not use a mapped root directory.) If your files are on
multiple volumes, you must create a \BLOG directory on each volume.
The MicroKernel cannot open the BLOG.CFG file. Either the file is locked or it does
not exist.
The MicroKernel cannot read the BLOG.CFG file. Either the file does not use the
correct format or it is corrupt. Refer to the Pervasive.SQL Advanced Operations
Guide for information about the format of the BLOG.CFG file.
111: The specified filename was not found in the archival logging
configuration file
The MicroKernel cannot find the specified file in the BLOG.CFG file. The file must be
specified in the BLOG.CFG file on the same physical drive. By default, the
MicroKernel names the archival log file the same as the logged file, but with a .LOG
extension. However, you can specify a different filename for the archival log file in
the BLOG.CFG file. Ensure that the BLOG.CFG file indicates the correct filename for
the archival log and ensure that the archival log file exists.
113: The MicroKernel cannot find the archival log for the specified file
The MicroKernel cannot find the archival log file associated with the specified file. By
default, the MicroKernel names the archival log file the same as the logged file, but
with a .LOG extension. However, you can specify a different filename for the archival
log file in the BLOG.CFG file. Ensure that the BLOG.CFG file indicates the correct
filename for the archival log and ensure that the archival log file exists.
115: The MicroKernel cannot access the archival logging dump file
The MicroKernel cannot access the archival logging dump file for one of the following
reasons:
The filename indicated for dumping entries in an archival log is not a valid filename.
Be sure this filename does not contain a volume specification. The dump file is
created on the same volume as the log file.
The caller does not have access rights to the dump file.
The MicroKernel cannot open the file because another user has opened the file using
an exclusive operating system lock.
When the two computers are separated by a router so they can both see the server,
but cannot see one another. Try the following:
Use the Gateway Locator utility to identify the owner of the gateway.
Use either the InstallScout or SmartScout utility to connect to that computer.
You may have attempted to open a file with two different workgroup engines that are
mapped to the files using different share names. The MicroKernel attempts to correct
this, but cannot do so in all cases. Make sure each computer is mapping to the same
share name.
This status code can indicate a temporary condition in which no system locks are
currently available. The following are example cases:
133: More than 5 concurrent users attempted to access the same data file
In the Pervasive.SQL 2000i SDK for a workstation environment, you attempted to
access a data file with more than five MicroKernels at the same time. The
Pervasive.SQL 2000i SDK for a workstation environment limits the number of
concurrent users of a file to five engines.
136: The MicroKernel cannot find the specified Alternate Collating Sequence
in the file
The MicroKernel returns this status code in the following situations:
You tried to create an index that uses an Alternate Collating Sequence (ACS), but the
MicroKernel cannot locate an ACS with the specified name in the file.
You called a Step Next Extended, Get Next Extended, Step Previous Extended, or Get
Previous Extended operation and specified an ACS name, but the MicroKernel cannot
locate an ACS with the specified name in the file.
139: The MicroKernel has detected an unacceptable value in the key number
Certain operations either use, or reserve the use of, the key number parameter as a
subfunction number, rather than as a means to specify a file index to be used with
the operation. (Note: This is also done in the GetEqual operation). This status code is
returned if an application does not specify a valid subfunction number (via the key
number parameter) to one of these operations:
The NetWare MicroKernel displays the message on the server system console and
writes the message to the Pervasive Event Log (PVSW.LOG), which resides in
SYS:\SYSTEM.
The Windows 95 and Windows NT workstation MicroKernel displays the message in
the console message window and writes the message to the Pervasive Event Log
(PVSW.LOG), which is located in the WINDOWS\SYSTEM or WINNT\SYSTEM32
directory.
The Windows NT server MicroKernel does not display a message, but writes the
message to the Pervasive Event Log (PVSW.LOG) in the WINNT\SYSTEM32 directory.
161: The maximum number of user count licenses has been reached
You attempted to open another session when you were at the limit of your user
count license. Either close a session or upgrade your user count. For more
information about purchasing and installing additive user counts, refer to Getting
Started with Pervasive.SQL. You can use the Monitor utility to determine which users
currently have connections to Pervasive.SQL. For information about the Monitor
utility, refer to the Pervasive.SQL Advanced Operations Guide.
162: The client table is full. Try increasing the number of Active Clients in the
MicroKernel Database Engine System Resource setting
This status code is obsolete in Pervasive.SQL 2000i. This setting is managed
dynamically by the engine.
You may receive this status code due to one of the following:
You have run out of memory.
Your number of Active Clients has exceeded 64K.
Your setting for Active Clients in the Configuration utility is set too low, causing
Pervasive.SQL to exhaust its client table space.
To increase your Active Clients setting:
The MicroKernel router could not internally allocate memory. Check the Pervasive
Event Log (PVSW.LOG) for more information.
A call to the MicroKernel failed. This is most likely the result of an incorrect
configuration. For example, if the MicroKernel is unavailable because of configuration
settings and the file to be opened is local, then the MicroKernel router returns this
status code.
The MicroKernel resource DLL is either missing or incompatible with the current
version of the router. If this happens, the MicroKernel reverts to its default settings
and continues to run. Check the Pervasive Event Log (PVSW.LOG) for more
information.
The networking services component is not compatible with this version of the
MicroKernel router. The most likely cause is that the Networking services DLL has
been replaced by an older version. Check the Pervasive Event Log (PVSW.LOG) for
more information.
The MicroKernel is not responding to requests from the MicroKernel router. Verify
that the MicroKernel is running.
The session information contained in a position block is invalid. This status code
occurs for one of the following reasons:
• The application is trying to use a position block for a file that resides on an engine
and for which the connection has been previously terminated via a B_STOP (25) or
B_RESET (28) operation.
• The application is trying to use a position block for a file that resides on a remote
server and that encountered an abnormal network error on a previous operation.
This status code results from an invalid configuration. For example, if the Local,
Remote, and Thunk options have all been set to Off, the router has no valid path to
take. If this happens, set one of these options to On, depending on your setup.
The MicroKernel router could not find the NetWare API DLLs.
3011: Thunk not possible - the Win32 MicroKernel router could not be found
or is incompatible
This status code is only relevant to the Win16 MicroKernel router. You receive this
status code when the Use Thunk option is set to On and the thunk path is not
accessible. Possible causes include:
• The Win32 MicroKernel Router DLL does not exist or is not compatible.
Access to the local engine is not possible because it is not loaded or could not be
launched. You can receive this status code if you try to access a local file on a client
and you do not have a MicroKernel workstation engine installed or if you try to
access a local file on a server and the MicroKernel server engine is not running.
If you have only a server engine installed and your Pervasive Event Log (PVSW.LOG)
contains Status Code 3012 warning entries, perform the following steps:
To Turn Off Local Engine support (for clients and workstations only):
4 In the right hand frame, double-click on Local, change the Current value to Off,
and click OK.
9 Make sure the Use Remote MicroKernel Engine value is set to on and that the
remote engine is set to accept remote requests.
10 Exit the configuration utility and restart the engines for the new settings to take
effect.
Access to the remote engine is not possible because the MicroKernel router could not
initialize the networking component. Possible causes include:
The MicroKernel router could not complete the operation because it did not find an
engine (local or remote) that could process the operation. Possible causes include:
The MicroKernel router encountered an internal error. Check the Pervasive Event Log
(PVSW.LOG) for more information.
The requester has more data to send the MicroKernel than the MicroKernel buffers
can handle. This status code is only relevant to an engine running locally and does
not apply to client/server environments. Some possible solutions include:
• Specify higher values for the Communications Buffer Size and the MicroKernel
Communication Buffer Size parameters in the Configuration buffer size option.
The MicroKernel router is shut down and is not accepting any more requests.
A semaphore error occurred while trying to establish contact with the local engine.
Check the Pervasive Event Log (PVSW.LOG) for more information.
You receive this status code when an error occurs while loading the MicroKernel or
when access to the server and client machine shared memory objects are
unavailable. Check the Pervasive Event Log (PVSW.LOG) for more information.
The MicroKernel router rejected the response from the engine because it was badly
formatted.Check the Pervasive Event Log (PVSW.LOG) for more information.
3022: The MicroKernel router could not send the request to the remote
engine because the specified data buffer length resulted in a data packet
object that is too large
A request to the MicroKernel router specified a data buffer length that resulted in a
data packet size greater than 64 KB, which is the maximum. This can occur even if
the data buffer length for the request is smaller than 64 KB because the MicroKernel
router adds some packet overhead as it forms the data packet. Check the Pervasive
Event Log (PVSW.LOG) for more information.
An internal table used by the MicroKernel router to manage tasks is full. This error
should only occur in Win16 environments and indicates that a large number of
applications are using the Win16 MicroKernel router at the same time.
The MicroKernel router could not load the IDS client requester. The IDS client
requester is W3ICRxxx.DLL, where xxx is a revision number (100, 101, etc.). The
IDS client requester needs to be located in a directory listed in your
PERVASIVE_PATH or PATH environment variable.
The MicroKernel router found an incompatible IDS client requester. The IDS client
requester was found, but is a version that cannot be used by the MicroKernel router,
or the file is corrupt.
The MicroKernel router could not connect to the IDS target server.
Be sure that IDS is running on the target server. If you are connecting to the IDS
target by a host name, ensure that the name is spelled correctly and can be resolved
to a TCP/IP address. If you are connecting by a TCP/IP dotted notation address, be
sure that the address is correct and accessible from the client.You can use
SmartScout as a diagnostic tool.
The MicroKernel router could not login to the IDS target server.
Be sure that the user name, password, and database set name used are correct.
Some applications may prompt for this information; others may require MicroKernel
Router configuration parameters to be set. See Getting Started with Pervasive.SQL
for more information regarding MicroKernel Router configuration parameters.
This code will be returned if the path indicates an IDS request and either:
This code is returned if the path is remote, the configuration setting for Local has
been set to Off, and either:
The search for a target server name was unable to resolve an address after
searching NDS, bindery, named pipes, and DNS. Some possible causes include:
• No common communication protocol is available between the server and the client.
Check the Supported protocols setting within the Communication protocols option for
both the client and server. Make sure there is a common protocol (either SPX or
TCP/IP) between the server and the requester.
• Server only: Named pipes are used in these two operating systems to resolve
server names. The networking at the operating system level was unable to find the
target named pipe.
• For NetWare:
• The Server Addressing Protocol (SAP) filtered out the server name. SAP is used in
NetWare 3.x and can be used in version 4.x. This type of filtering is common in WAN
environments.
• NWCALLS.DLL and/or NWIPXSPX.DLL is missing when using the Win16 client. This
is especially likely if the Win32 clients are functioning but the Win16 clients do not.
These are NetWare system files that can be obtained from Novell web site
(http://www.novell.com).
• For Novell NetWare 4.11 and Microsoft Windows 98 installs of Pervasive.SQL 2000
Client:
For Windows NT only: Permission to access the target named pipe is denied. If you
receive this status code:
• Verify that you have access to the inter process communication mechanism.
• Ensure that your passwords are identical if you have the same user name on two
systems.
No transport protocol that is common to both the target server engine and clients is
available. For example, this status code could be caused by a client using SPX when
the server engine only has TCP/IP available. Check the Supported protocols setting
within the Communication protocols option for both the client and server. For more
information on Communication protocols, refer to the Pervasive.SQL Advanced
Operations Guide.
The Pervasive Network Services Layer was able to establish a transport connection at
the client side, but the connection attempt at the target side failed. Some possible
causes are:
• You have more than one mapped drive to the same server.
• You are trying to access an engine on a Windows NT server and the Accept Remote
Requests setting of the Btrieve Communications Manager on that server is set to Off.
See the Pervasive.SQL Advanced Operations Guide for more information.
Check the Pervasive Event Log (PVSW.LOG) for more information if you receive this
status code.
The Pervasive Network Services Layer has insufficient memory to continue. Verify
that you are not in a low memory condition.
The application attempted to use a network connection that was no longer active.
This happens when the session with the Pervasive Network Services Layer is still
valid, but was dropped by the network. Stop and restart the application.
You may receive this error when attempting to connect to a Workgroup engine on
Windows 95 if the machine has not been upgraded to Winsock 2. If you are not
running Winsock 2 on your Windows 95 computer with Workgroup engine installed,
you should download the WinSock 2 update from Microsoft:
The Pervasive Network Services Layer attempted to receive data from the target
server and encountered a network specific error. Check the Pervasive Event Log
(PVSW.LOG) for more information.
You may receive this error when attempting to connect to a Workgroup engine on
Windows 95 if the machine has not been upgraded to Winsock 2. If you are not
running Winsock 2 on your Windows 95 computer with Workgroup engine installed,
you should download the WinSock 2 update from Microsoft.
3114: The routing table of the Pervasive Network Services Layer is full
The Pervasive Network Services Layer Server Routing Table is full. This table
normally grows dynamically as needed. Verify that you are not in a low memory
condition.
The Pervasive Network Services Layer encountered a WinSock (Win32, Win16) error
while creating the local transport endpoint on the client side. Check the Pervasive
Event Log (PVSW.LOG) for more information.
NSL was unable to return the access context on the specified session for the supplied
object. There are several reasons why NSL could not obtain the context and it varies
depending on the transport type.
• NamePipe - It is possible that NSL was able to locate the server via DNS but when
it tried to make a NamePipe call to request authentication of the client and the Name
Pipe communications failed. Ensure that NamePipes is configured correctly for the
network for both the client and server. See the Pervasive.SQL Advanced Operations
Guide for more information on NamePipes configuration.
• Novell NetWare Client - NSL asks the NetWare Client if this workstation has access
to the database on the NetWare server. Ensure the user is configured to access the
database file on the server. See the Pervasive.SQL Advanced Operations Guide for
more information on NetWare user configuration.
• NetWare - You can configure this to use RunTime Server Support. NSL will create a
context using one of the following:
• the userID and password already used on this workstation to connect to any server
If you want to use this mechanism, RTSS must be enabled. See the Pervasive.SQL
Advanced Operations Guide for more information on enabling RTSS and userID and
password configuration.
For each user of the Network Services Layer, a task entry is created. If the maximum
number of tasks has already been reached (512 and not configurable), this error is
returned. Close any applications using Pervasive.SQL that are no longer needed.
3125: The Pervasive Network Services Layer was unable to resolve the
Novell Directory Services name into a NetWare server name
The Pervasive Network Services Layer was unable to resolve the Novell Directory
Services name into a NetWare server name. This occurs on Windows 95/98/ME
workstations with the Microsoft Service for Novell Directory Services in cases where
the system is unable to load the Windows 95 Requester support modules. Ensure
that the Requester Win95 support modules are installed and available, and that
NWCALLS.DLL is available on the Windows 95 workstation.
3126: The Pervasive Network Services Layer was unable to resolve the
given filename into a valid path
Check that the given filename is a valid file format and path.
The IDS client requester attempted to send data to the IDS target server and
encountered a TCP/IP specific error. Stop and restart the application. If the problem
persists, consult your network administrator.
3128: Failure during receive from the IDS target server
The IDS client requester attempted to receive data from the IDS target server and
encountered a TCP/IP specific error. Stop and restart the application. If the problem
persists, consult your network administrator.
This status code means that AutoReconnect was unsuccessful. The following
messages will appear in PVSW.LOG:
• "3131: Reconnect failed. Client and Server Message IDs out of synchronization."
The client and server did not agree on the current context. Because the integrity of
the last request cannot be verified, the connection was terminated.
• "3131: Reconnection attempt timed out." This means that the client was unable to
obtain a new connection to the server within the AutoReconnect timeout period.