Re: [HACKERS] logical decoding of two-phase transactions - Mailing list pgsql-hackers

From Craig Ringer
Subject Re: [HACKERS] logical decoding of two-phase transactions
Date
Msg-id CAMsr+YHDHxQtfeFH6rL4upjT7La9kif-pArR7n_ocjVDSHXjaA@mail.gmail.com
Whole thread Raw
In response to Re: [HACKERS] logical decoding of two-phase transactions  (Nikhil Sontakke <nikhils@2ndquadrant.com>)
Responses Re: [HACKERS] logical decoding of two-phase transactions
List pgsql-hackers
On 4 December 2017 at 23:15, Nikhil Sontakke wrote: > PFA, latest patch for this functionality. > This patch contains the following changes as compared to the earlier patch: > > - Fixed a bunch of typos and comments > > - Modified HeapTupleSatisfiesVacuum to return HEAPTUPLE_RECENTLY_DEAD > if the transaction id is newer than OldestXmin. Doing this only for > CATALOG tables (htup->t_tableOid < (Oid) FirstNormalObjectId). > Because logical decoding supports user-catalog relations, we need to use the same sort of logical that GetOldestXmin uses instead of a simple oid-range check. See RelationIsAccessibleInLogicalDecoding() and the user_catalog_table reloption. Otherwise pseudo-catalogs used by logical decoding output plugins could still suffer issues with needed tuples getting vacuumed, though only if the txn being decoded made changes to those tables than ROLLBACKed. It's a pretty tiny corner case for decoding of 2pc but a bigger one when we're addressing streaming decoding. Otherwise I'm really, really happy with how this is progressing and want to find time to play with it. -- Craig Ringer http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services

pgsql-hackers by date:

Previous
From: Michael Paquier
Date:
Subject: Re: [HACKERS] pow support for pgbench
Next
From: Craig Ringer
Date:
Subject: Re: [HACKERS] Walsender timeouts and large transactions