I have pervasive2000 a server and a client(application), there is a problem ,
my application is not writing to the dat file although I see my operations on the app. screen. In other words my end (commit) doesnt effect (sometimes) the buffer to write to the disk.
in "pervasive.com" its written :
"In the case where a system crash has occurred and the transaction log is being rolled forward, only completed transactions are committed to the data files. All operations without an associated End Transaction operation are rejected, and are not committed to the data files."
how can I solve this problem ?
I tried win16 setup
MKDBE, Transaction Durability off; and also increasing the log size, and increasing the buffer size. It didnt work.
I am the owner of the automobile service company who uses the application. The vendor of the application couldnt solve this problem. Then I tried to understand the issue by reading from pervasive.com. ( not succesful yet )
- we have pervasive 2000 in our server that is windows 2000 server
There is one client is win2000 pro ; we use the app in server too. (although its not recommended I wanted cost avoidance )
while we use the application (entering something) sometimes the notification is coming to the screen "unable to log transaction File c:\X\Data\Y.dat "
after clicking OK , the notification dissappears and we can see the entered things on our application or print out. BUT by the time we close and open the application we notice that the entered data is not written to the relevant dat file(chaos )
or the other day in the client computer
"logout already active File f:\X\Data\Z.dat "
again the relevant data which was on the screen is not written to the dat file after resetting the app. or resetting the server.
or the other day in server ( which also uses application )
"file not open c:\X\Data\T.dat "
again the data is missing after resetting.
it happens for different dat files in different times.
In order to understand I did these:
1- I used app. only in the client comp and not in the server while server is open.
2- I used app. only in the server
3- I increased the MKDBE transaction Log size from win16 setup
4- I increased the buffer size , cach etc changed transaction durability to off in win16setup
5- I tried pervasive 2000i in the server
6- I set up the pervasive 2000i in a totally different computer which is XP pro, and transferred the data; and used (new setted up) app. only in this comp. ( workstation model )
The only thing I didnt change is the datas.
I think commit trigger is not working. I dont know what to do for it, should I ask to the vendor to check the codes?
or is it something in pervasive?
note : our application is using more than one dat file while working.
its good to talk to you although I couldnt solve it yet.
What is the version of Pervasive being used (7.XX.XXX)? The easiest way to find out is to get the version of W3BTRV7.DLL or W3ODBCEI.DLL or W3ODBCCI.DLL from the Client and the server.
Post the contents of your PVSW.LOG from the server.
Do you see any numeric status codes? Pervasive/Btrieve only returns numeric status codes. If the application is not returning the status codes, ask the vendor of the application what status codes are being returned when the errors you see occur.
Truthfully, I believe this is either a network or application issue. Pervasive/Btrieve doesn't have a history or "losing" records (in fact, I've never seen Pervasive lose records unless there was an application or network issue in nine years).
Certified Pervasive Developer
Certified Pervasive Technician
Custom Btrieve/VB development http://www.mirtheil.com
I do not answer questions by email. Please post on the forum.