Store FullTransactionId in TwoPhaseFileHeader/GlobalTransactionData - Mailing list pgsql-hackers

From vignesh C
Subject Store FullTransactionId in TwoPhaseFileHeader/GlobalTransactionData
Date
Msg-id CALDaNm2fFeQC_SbM_LsSPNZG3HZ0SC34szY+451iW7oysAb8Cw@mail.gmail.com
Whole thread Raw
Responses Re: Store FullTransactionId in TwoPhaseFileHeader/GlobalTransactionData  (Thomas Munro <thomas.munro@gmail.com>)
List pgsql-hackers
Hi,

In the undo system, we use full-transaction-id for transactions.  For
rollback of prepared transactions, we were planning to use
FullTransactionId by combining TransactionId and epoch, but as
suggested by multiple people in that email chain [1][2], the better
idea is to store Full-transactionid in TwoPhaseFileHeader

Backward compatibility need not be handled for this scnario as upgrade
does not support having open prepared transactions.

There is also one more comment which is yet to be concluded. The
comment discusses about changing subxids which are of TransactionId
type to FullTransactionId type being written in two phase transaction
file. We could not conclude this as the data is similarly stored in
TransactionStateData.

Please find the patch having the fix for Storing FullTransactionId in
TwoPhaseFileHeader/GlobalTransactionData.

Let me know your opinion on the patch and above comment.

[1] https://www.postgresql.org/message-id/CA%2BhUKGJ%2BPg2gE9Hdt6fXHn6ezV7xJnS%2Brm-38ksXZGXYcZh3Gg%40mail.gmail.com
[2] https://www.postgresql.org/message-id/CAA4eK1L9BhvnQfa_RJCTpKQf9QZ15pyUW7s32BH78iBC3KbV0g%40mail.gmail.com

Regards,
Vignesh
EnterpriseDB: http://www.enterprisedb.com

Attachment

pgsql-hackers by date:

Previous
From: Kohei KaiGai
Date:
Subject: Re: How to retain lesser paths at add_path()?
Next
From: Fabien COELHO
Date:
Subject: Re: refactoring - share str2*int64 functions