| View previous topic :: View next topic |
| Author |
Message |
Stuart Clennett Guest
|
Posted: Tue Jul 20, 2004 1:13 pm Post subject: Seeing DB changes in multi-user app |
|
|
All,
I have a legacy app (developed using D5 Ent, BDE 5.11 and IB5.6) which
cannot see changes made in other instances of the same app.
I have replicated the problem in a very simple test application using a
single TQuery connected through a TDatabase. On the form there is a DBGrid
and a DBNavigator and a button that calls Query.close; Query.open;
If I run two copies of the app, and delete a record in the first instance,
the second instance does not show the changes after I close and reopen the
TQuery.
I have tried all variants for the Database.Transisolation level and have
also tried every combination of sqlpassthrumode to no avail. I was under
the impression that the correct values where "tiReadCommitted" and
"SharedAutocommit" respectively. I have tried using Requeslive = true and
cached updates with the Query object but it made no difference.
To get the second instance to see changes made by the first instance I have
to close the second instance and start a new instance.
Can anyone guide me in the right direction?
Thanks in advance
Stuart
|
|
| Back to top |
|
 |
Stuart Clennett Guest
|
Posted: Tue Jul 20, 2004 1:56 pm Post subject: Re: Seeing DB changes in multi-user app |
|
|
Additional note: The test app mentioned works fine when running on two
client PCs, but not when two instances are running on the same computer. I
need to be able to see DB changes between two different apps running on same
PC.
Thanks for any guidance.
Stu
|
|
| Back to top |
|
 |
Bill Todd (TeamB) Guest
|
Posted: Tue Jul 20, 2004 1:58 pm Post subject: Re: Seeing DB changes in multi-user app |
|
|
That sounds like the behavior you would get if you were using snapshot
(repeatable read) transaction isolation and the transaction was not
being committed when you closed the TQuery. That should not happen if
you use Shared AutoCommit.
What is the value of the Driver Flags parameter for the InterBase
driver in the BDE Administrator?
--
Bill (TeamB)
(TeamB cannot respond to questions received via email)
|
|
| Back to top |
|
 |
Stuart Clennett Guest
|
Posted: Tue Jul 20, 2004 2:00 pm Post subject: Re: Seeing DB changes in multi-user app |
|
|
Hi,
Forget it ! I have uninstalled and re-installed the BDE and all seems to be
working now.
Don't understand why as everything else was working...
Wierd.
Thanks
Stu
"Stuart Clennett" <stuart (AT) clennett (DOT) free-online.co.uk> wrote
| Quote: | Additional note: The test app mentioned works fine when running on two
client PCs, but not when two instances are running on the same computer.
I
need to be able to see DB changes between two different apps running on
same
PC.
Thanks for any guidance.
Stu
|
|
|
| Back to top |
|
 |
Stuart Clennett Guest
|
Posted: Thu Jul 22, 2004 8:38 am Post subject: Re: Seeing DB changes in multi-user app |
|
|
Bill,
Thanks for your reply. The transaction isolation was tiReadCommitted on the
TDatabase and "Shared Autocommit" in the BDE.
I have no value in the Driver Flags for the InterBase (INTRBASE) driver.
However, I noticed that the version number in the system INIT of the BDE was
4.0, so I ran the 5.11 update and this seems to have corrected the problem.
I can only assume that there was some problem with the CFG file. (The 5.11
update zapped all my aliased too :-(
Thanks
Stuart
"Bill Todd (TeamB)" <no (AT) no (DOT) com> wrote
| Quote: | That sounds like the behavior you would get if you were using snapshot
(repeatable read) transaction isolation and the transaction was not
being committed when you closed the TQuery. That should not happen if
you use Shared AutoCommit.
What is the value of the Driver Flags parameter for the InterBase
driver in the BDE Administrator?
--
Bill (TeamB)
(TeamB cannot respond to questions received via email)
|
|
|
| Back to top |
|
 |
|