does tuple store subtransaction id in it?

Started by Xiaoyuleiover 10 years ago2 messages
#1Xiaoyulei
xiaoyulei@huawei.com

In XidInMVCCSnapshot, it will check xid from tuple if is in snapshot->subxip. It means tuple store subtransaction?

But in PushTransaction, I see TransactionState.subTransaction will assign currentSubTransactionId, currentSubTransactionId will reinitialize in StartTransaction. So I think tuple should not store subtransaction id.

I am confuse about this. If subtransaction id will reinitialize every start time. How to judge it is a subtransaction from xid in tuple?

--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

#2Haribabu Kommi
kommi.haribabu@gmail.com
In reply to: Xiaoyulei (#1)
Re: does tuple store subtransaction id in it?

On Tue, Jun 16, 2015 at 1:08 PM, Xiaoyulei <xiaoyulei@huawei.com> wrote:

In XidInMVCCSnapshot, it will check xid from tuple if is in snapshot->subxip. It means tuple store subtransaction?

Tuple stores only the transaction id related to the operation. This
can be either main transaction id or sub transaction id.

But in PushTransaction, I see TransactionState.subTransaction will assign currentSubTransactionId, currentSubTransactionId will reinitialize in StartTransaction. So I think tuple should not store subtransaction id.

I am confuse about this. If subtransaction id will reinitialize every start time. How to judge it is a subtransaction from xid in tuple?

StartTransaction is called only once per transaction.Further on for
sub transactions it calls only startSubTransaction.
Hope this answers your question.

Regards,
Hari Babu
Fujitsu Australia

--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers