Subject Re: [Firebird-Architect] Question on classic
Author Dmitry Yemanov
"Jim Starkey" <jas@...> wrote:
>
> Unfortunately, the transaction cache isn't reliable for this purpose

Could you explain why? If the cache says "committed" or "dead", this means
that the concurrent transaction has finished and we have an up-to-date info.
If the cache says "active", we don't rely on this answer and try to get a
lock to check whether it's actually true or not. If the lock failed - the
transaction is still active. If the lock aquired - the transaction has
finished, let's refetch TIP. Where is a failure in this logic?


Dmitry