On 3/5/23 06:49, jacktby@xxxxxxxxx wrote:
Here are the comments in src/include/utils/snapshot.h. /* * For normal MVCC snapshot this contains the all xact IDs that are in * progress, unless the snapshot was taken during recovery in which case * it's empty. For historic MVCC snapshots, the meaning is inverted, i.e. * it contains *committed* transactions between xmin and xmax. * * note: all ids in xip[] satisfy xmin <= xip[i] < xmax */ TransactionId *xip; I can't understand the historic MVCC snapshots? can you give me a scenario to describe this?
From the same file: /* * A tuple is visible iff it follows the rules of SNAPSHOT_MVCC, but * supports being called in timetravel context (for decoding catalog * contents in the context of logical decoding). */ SNAPSHOT_HISTORIC_MVCC,
------------------------------------------------------------------------ jacktby@xxxxxxxxx
-- Adrian Klaver adrian.klaver@xxxxxxxxxxx