Subject | Re: [firebird-support] When does OIT = OAT? |
---|---|
Author | Huan Ruan |
Post date | 2012-09-30T11:10:03Z |
Hi Dmitry
Thanks for your reply. I understand "OIT+1 = OST = OAT = Next -1" is the
best transaction stat one can get with their databases. The link you
pointed me to and a few other documents I have read all suggest OIT is the
oldest non committed transaction. But in my example, I would think
transaction #1 has been committed, so why was it reported as OIT? Generally
OIT holds up because of rolled back, limbo, and crashed transaction and
this increases the gap between OST and OIT and therefore requires a sweep.
But when every transaction is short and committed, where does the OIT value
come from? In my example again, the isql session started transaction #2
which was the only active transaction at the time so the OAT is #2, but
what does OIT = 1 mean?
My understanding is starting a new transaction will trigger the calculation
of OAT and OST, but what triggers a re-calculation of OIT?
Also, after the database was first created, OIT = 1 and NextTran = 1
doesn't seem to make sense to me as no transactions should have used the
number for the next transaction. Any idea?
Cheers
Huan
Thanks for your reply. I understand "OIT+1 = OST = OAT = Next -1" is the
best transaction stat one can get with their databases. The link you
pointed me to and a few other documents I have read all suggest OIT is the
oldest non committed transaction. But in my example, I would think
transaction #1 has been committed, so why was it reported as OIT? Generally
OIT holds up because of rolled back, limbo, and crashed transaction and
this increases the gap between OST and OIT and therefore requires a sweep.
But when every transaction is short and committed, where does the OIT value
come from? In my example again, the isql session started transaction #2
which was the only active transaction at the time so the OAT is #2, but
what does OIT = 1 mean?
My understanding is starting a new transaction will trigger the calculation
of OAT and OST, but what triggers a re-calculation of OIT?
Also, after the database was first created, OIT = 1 and NextTran = 1
doesn't seem to make sense to me as no transactions should have used the
number for the next transaction. Any idea?
Cheers
Huan
>[Non-text portions of this message have been removed]
>