Status 25 error using W2003 - 02-18-2004 , 01:32 PM
Im using Busness Vision (an accounting program) that uses
Btrieve/Pervasive SQL 2000 to connect in a client/server environment.
Permisions are all ok and all the tables can be updated for the most
part, however it seems that when the program is left open and the user
does something else for a while, then comes back we get a Status 25
error and the client program shuts down. Starting it back up is a
pain due to log in requirements, although it starts back up fine.
I could be way off base but to me it seems like a time out issue with
the connector, but I have no idea where to change any of these
settings and am unsure of the implications behind making these sorts
I know there must be error logs somewhere on the server but have yet
to sort out how to access them from pervasive.
Support at Business Vision is useless and unavaliable. Any help on
where I should go to start troubleshooting or solve this problem would
be greatly appreciated.
Re: Status 25 error using W2003 - 02-18-2004 , 02:57 PM
On 18 Feb 2004 11:32:29 -0800, email1 (AT) lighthouse-its (DOT) com (Gary) wrote:
When you say that the user "does something else for a while" do you mean on the
specific workstation (with another program) or elsewhere in the office? The
reason that I ask, is that the BusinessVision knowledge base has two articles
dealing with status or error 25, both of which suggest that the problem may be
related to power saving on the client workstation and suggest that powersaving
features be turned off. Specifically, they say "...When power saving suspends a
workstation the client is unable to recover from the suspended state and
reconnect to the server..."
By the way, I was able to find these knowledgebase articles in less than one
minute and they sound like they would be appropriate to your situation!!! Check
the knowledgebase - you really shouldn't underestimate trying to help yourself!!
A further check of the Pervasive documentation on error messages suggest that an
error 25 may also be caused by antivirus software and that the specific database
files should be excluded from antivirus scanning. They go on to say that the
problem relates to an application trying to create or overwrite an existing file
that the operating system has flagged as open or has locked for some reason.
Again, the BusinessVision technote makes perfect sense in this context.
Re: Status 25 error using W2003 - 02-18-2004 , 11:47 PM
There are not any timeouts in the Pervasive requester or server
components. This is a great consternation for those with lesser
networks as even the dropped network sessions have a tendency
to stick around a while as database sessions.
From the manual, status 25:
25: The application cannot create the specified file
The MicroKernel returns this status code in one of the following
* 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.
o This problem may be caused by Antivirus software (such as
This happens when the Operating system returns an unusual status
code to the engine. Normally, the engine expects either a success or
the file already exists. In one situation, the error code was being
returned because the file handle that the engine was using was not
functional; however, the OS call that the engine makes is supposed to
return a file handle.
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.
None of those actually have anything to do with permissions as such.
And to get one the requester has to actually pass the request to the
engine and get an answer.
Kind of sneaky but the log files are not accessed through the database
engine, they are text based log files.
If it is a regular status 25 (can't create a file over an already
existing file) it will not be logged. If we are getting some strange
status code back from the OS it might be logged.
The log file is, um, you didn't say what OS the server is running.
For Windows it is in the windows / winnt directory.
For NetWare it is in the sys:\system directory.
See the pvsw.log file. Newest entries are at the bottom.
On 18 Feb 2004 11:32:29 -0800, email1 (AT) lighthouse-its (DOT) com (Gary) wrote:
Re: Status 25 error using W2003 - 02-19-2004 , 12:18 AM
I should clarify a few things...
I have found how to turn on logging and how to change other settings
using the database manager.
However looking at the logs on the server I get no errors when the
client Business Vision program shuts down. I assume this is because
the client has already lost its connection.
The status 25 error message is showing through the Business Vision
program. I assume the error messages would be passed from pervasive,
but maybe that is incorrect. Is there a way to turn on logging on the
client computer to try to find out more information?
As an aside we are getting a bunch of status error #4, 5, 8 and 9's.
I assume that most of these are handled by BV, but I thought I would
meantion it in case its relevent.
Anyone out there have any experience in tracking this problem down?
Re: Status 25 error using W2003 - 02-19-2004 , 12:00 PM
and 'tracing' which can be turned off and on without stopping the
engine. Tracing can fill up a hard drive quickly on a busy system so
be careful and know what it is that you are turning on an off. If BV
did not supply documentation you can get all the docs for all the
products here - http://www.pervasive.com/library/
Sometimes none of the pvsw.log files report things like disconnects
since the database did not do anything wrong - the client just
disconected from the server (probably by going to sleep). Databases
need a constant connection from client to server to "maintain state"
and any disconnect on the network can affect them. Later versions,
2000i and V8, have a feature called PARC that is an auto-reconnecting
client that you can turn on in case of a bad network. It won't fix
problems caused by going to sleep (at least I haven't tested it to do
that) but it can make the application usable while you figure out what
is wrong with the network. Databases on bad networks are like race cas
on broken and potholed pavement, they don't work well. BTW, P.SQL is
the only DB I know of that has an auto-reconnecting client.
not. Just the fact that it is called a "Status 25" and not an error is
some indication that it may be correct, but no guarantee. Status Codes
are not necessarily errors. For instance a Status 0 means a successful
call and a Status 9 is the application doing a Get Next at the end of
the file and should be trapped, but is not an error, or if it is it's
an application error or error handling error.
The client logs certain errors and information to the pvsw.log file
automatically. Working with Pervasive support you can also get a
network requester trace file by replacing the regular requester DLLs
with debug requesters. Logging is always on but may not capture
Status errors, though Status Codes may indicate an error in the OS or
the application, or even a damaged file, and sometimes a database
error, but not in most cases.
#4 is a problem with the indexes
#5 is a problem with the indexes (possibly file damage)
#8 is a position block problems usually due to bad network or memory
problems on the client
#9 just means end of file and should be trapped by the application.
None of these necessarily have anything to do with a Status 25, though
something that is causing Status 25 could cause some of the other
issues and messages you are seeing.
It sounds to me like there are some problems somewhere that are
affecting the database engine and application, but you haven't
idenitified the problems and are mainly looking at the symptoms.
this sort of thing down if you can gather the info that they need to
analyze the issue. Unfortunately they no longer support Pervasive.SQL
2000 and only Pervasive.SQL 2000i (though not for much longer) and V8.
Fortunately, if you are really on 2000, then you can download SP3 and
SP4 and update to Pervasive.SQL 2000i SP4 which is supported and they
can work with you on it. That is as long as BV will support 2000i SP4.
Re: Status 25 error using W2003 - 02-19-2004 , 12:08 PM
Thanks for the posts guys.
I had read the support pages about the anitvirus issues and norton
does not scan that directory.
The error seems to occur when the BV program is minimized with a
record open. After about 15 minutes going back to the window
(powersaving is not an issue here) will cause it to give the status 25
error and shut down. Again this error is what is shown in BV not the
Through further investigation I have found that one of the clients
does not show up in the monitor app as a user while BV is open and
being used on that computer. Could this be because there is some
legacy Btrieve stuff left behind and its not connecting via pervasive?
Could this be the root of the problem?
How do I go about removing Btrieve? I remember seeing an application
to do this a while back but am unable to find it.
Sorry if I dont reply right away. My newsgroup server doesnt have
this newsgroup so I am force to deal with the 9 hour delay from
Re: Status 25 error using W2003 - 02-19-2004 , 06:56 PM
On 19 Feb 2004 10:08:04 -0800, email1 (AT) lighthouse-its (DOT) com (Gary) wrote:
Perhaps some of your issues are caused by not having a permanent gateway
specified. This can cause problems because the first workstation to log on will
act as the gateway for that session. BV has some good articles on this.
When you install Pervasive 2000i. it automatically archives all of the older
btrieve files in, if I remember right, a directory called PVSWARCH. I don't
think that this would be causing your problems.
Re: Status 25 error using W2003 - 02-20-2004 , 11:51 AM
Thanks to all your great help, I think I am getting to the bottom of
According to the documentation I have, to setup the workgroup engine
properly you just have to make sure it is installed on the file server
and all the clients.
I assumed that the engine would know which computer had the database
files local and would assign it as the perminent gateway. For some
reason this is not the case and the gateway was shifting around to the
I have no assigned the file server as the perminent gateway and we
shall see how long it stays that way.
Hopefully this will solve my problem.
Thanks again everybody.
Re: Status 25 error using W2003 - 02-20-2004 , 12:28 PM
When ever I try to set the file server as the gateway I am unable to get the
clients to connect. The application (BV) says that another user is
accessing the files and can not connect at this time.
This must be why the gateway is moving around to the other computers.
Is there anything special I must do to install the workgroup engine on the
fileserver (its w2003).
Im using another newsgroup engine now so I will be keeping a closer eye on
Re: Status 25 error using W2003 - 02-24-2004 , 03:01 AM
My other two posts are not showing up here so I will post where I am
First: Thnaks to all who helped me narrow this down to a gateway
issue. Its good to know that help is just around the corner.
Next: So for some reason I can not assign the gateway as the W2003
file server with out getting a "BVCON.FIL file in use by another user"
I assumed that installing the Pervasive Workgroup engine (that came
with BV) on the file server would automaticaly assign it as a gateway
(seems to be what is writen in the tech doc) but as soon as one of the
other clients log on the gateway will switch to them. Thus as soon as
that client shuts down all the other clients get the status 25 error.
What am I missing? Is this a W2003 compatability issue? Have I
missed something in setting up the Workgroup engines?
Thanks again for all your help!