Subject | Re: [firebird-support] result set not updated immediately after post |
---|---|
Author | Olivier Mascia |
Post date | 2005-10-25T13:03:07Z |
Le 25-oct.-05 à 13:45, Zach Saw a écrit :
IBPP defaults to Concurrency mode (the classic IB/FB mode) unless you
specifically request ilReadCommitted.
Also, based on the kind of isolation requested, IBPP maps its own
generic modes as follows:
switch (il)
{
case IBPP::ilConsistency : tpb->Insert
(isc_tpb_consistency); break;
case IBPP::ilReadDirty : tpb->Insert
(isc_tpb_read_committed);
tpb->Insert
(isc_tpb_rec_version); break;
case IBPP::ilReadCommitted : tpb->Insert
(isc_tpb_read_committed);
tpb->Insert
(isc_tpb_no_rec_version); break;
default : tpb->Insert
(isc_tpb_concurrency); break;
}
So ReadCommitted makes use of isc_tpb_read_committed and
isc_tpb_no_rec_version, which I believe is perfectly correct.
Does your 'thread2' execute a previously prepared SELECT or do you
really re-prepare/execute a new SELECT after 'thread1' signaled the
commit done ?
Does thread1 really Commit or CommitRetain ?
--
Olivier
> the DB connection is ReadCommitted and Lockwait is true. I'm usingAre you sure you're using ReadCommitted transactions ?
> IBPP for firebird access.
IBPP defaults to Concurrency mode (the classic IB/FB mode) unless you
specifically request ilReadCommitted.
Also, based on the kind of isolation requested, IBPP maps its own
generic modes as follows:
switch (il)
{
case IBPP::ilConsistency : tpb->Insert
(isc_tpb_consistency); break;
case IBPP::ilReadDirty : tpb->Insert
(isc_tpb_read_committed);
tpb->Insert
(isc_tpb_rec_version); break;
case IBPP::ilReadCommitted : tpb->Insert
(isc_tpb_read_committed);
tpb->Insert
(isc_tpb_no_rec_version); break;
default : tpb->Insert
(isc_tpb_concurrency); break;
}
So ReadCommitted makes use of isc_tpb_read_committed and
isc_tpb_no_rec_version, which I believe is perfectly correct.
Does your 'thread2' execute a previously prepared SELECT or do you
really re-prepare/execute a new SELECT after 'thread1' signaled the
commit done ?
Does thread1 really Commit or CommitRetain ?
--
Olivier