dbTalk Databases Forums  

strange save-delay (btrieve 8.x)

comp.databases.btrieve comp.databases.btrieve


Discuss strange save-delay (btrieve 8.x) in the comp.databases.btrieve forum.



Reply
 
Thread Tools Display Modes
  #1  
Old   
nmm
 
Posts: n/a

Default strange save-delay (btrieve 8.x) - 05-14-2006 , 02:48 PM






Hallo Btrivieans!

today we observe a very strange behavior at a PSQL 8.x server running on Win2000:

on client A there where updated some data, but this change of data was on client
B not visible:

at time t_0 I update a record in a btrieve-table (I got status code 0 on this
update) from cliant A

at time t_1>t_0 i look in that table from a client B<>A, and I see the record in
its state before t_0!

now I restart the session on client B at time t_2>t_1>t_0 and look again: now
the record has the changes from the update at time t_0!!

the application writes the updatetime in a special field of each record.
Say the updatetime before t_0 was t_b. than i could see this timestamp (t_b)
when i looked from B at time t_1. At time t_2 one can see, that the record was
updatet at time t_0(the correct time!).

So I guess, that the server does someting like write-chaching. This strange
delay occurs sometimes for new records (they look empty at first), but up to now
this where a matter of same secunds (strange enought!). But now, t_1-t_0 was
more than half an hour, and this is too long...

Does anyone know this pheanomenon and know, what one can do, to avoid this?

(I should say, that this occur not on all tables! and that the application uses
native btrieve-calls. I think, that on client A all looks(!) fine beween t_0 and
t_1. Further: the server was running since nov. 2004 without such a problem.).

Any hint will be welcome!

reagrds
M. Malarski


Reply With Quote
  #2  
Old   
Bill Bach
 
Posts: n/a

Default Re: strange save-delay (btrieve 8.x) - 05-14-2006 , 09:28 PM






Actually, you have it backwards! Database writes are always posted
directly to the engine with no delay. The PSQLV8 database allows for
READ caching by the workstation clients, though!

While the use of the Client Cache Engine (CCE) provides a performance
gain, it can result in a delay in seeing current data that has been
written, and some applications are not happy with this, experiencing
Status 80 and Status 5 problems, in addition to seeing old data for a
short time. The CCE should be informed of updates to pages in its
cache every 5 seconds, so there should be (at most) a 5-10 second delay
encounted between any two workstations using the database to
communicate.

To eliminate the CCE, change the "Allow Cache Engine Connections"
setting on the server from YES (default) to NO and restart -- this will
disable all CCE's. If you don't see this setting, then you're way past
due for an free patch to V8.(SP2) 6 or V8.7 (SP3).

To save memory on the workstations, you'll also want to change the
setting "Use Cache Engine" to NO. (Of course, if you want to use the
performance-enhancing CCE for some workstations, but not for others,
leave it enabled at the server, but only enable it on the workstations
you want it on.

I cannot explain a delay of 1/2 hour -- especially since the CCE update
should be seen in 10 seconds at most. It is possible there is a bug in
the engine. You'll want to try updating the clients AND the server &
see if it continues...
Goldstar Software Inc.
Pervasive-based Products, Training & Services
Bill Bach
BillBach (AT) goldstarsoftware (DOT) com
http://www.goldstarsoftware.com
*** Chicago: Pervasive Service & Support Class - 07/2006 ***


nmm wrote:

Quote:
Hallo Btrivieans!

today we observe a very strange behavior at a PSQL 8.x server running
on Win2000:

on client A there where updated some data, but this change of data
was on client B not visible:

at time t_0 I update a record in a btrieve-table (I got status code 0
on this update) from cliant A

at time t_1>t_0 i look in that table from a client B<>A, and I see
the record in its state before t_0!

now I restart the session on client B at time t_2>t_1>t_0 and look
again: now the record has the changes from the update at time t_0!!

the application writes the updatetime in a special field of each
record. Say the updatetime before t_0 was t_b. than i could see this
timestamp (t_b) when i looked from B at time t_1. At time t_2 one can
see, that the record was updatet at time t_0(the correct time!).

So I guess, that the server does someting like write-chaching. This
strange delay occurs sometimes for new records (they look empty at
first), but up to now this where a matter of same secunds (strange
enought!). But now, t_1-t_0 was more than half an hour, and this is
too long...

Does anyone know this pheanomenon and know, what one can do, to avoid
this?

(I should say, that this occur not on all tables! and that the
application uses native btrieve-calls. I think, that on client A all
looks(!) fine beween t_0 and t_1. Further: the server was running
since nov. 2004 without such a problem.).

Any hint will be welcome!

reagrds
M. Malarski


Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.3
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.