On 12/19/17 03:37, Nikhil Sontakke wrote: > Note that this patch does not contain the HeapTupleSatisfiesVacuum > changes. I believe we need changes to HeapTupleSatisfiesVacuum given > than logical decoding changes the assumption that catalog tuples > belonging to a transaction which never committed can be reclaimed > immediately. With 2PC logical decoding or streaming logical decoding, > we can always have a split time window in which the ongoing decode > cycle needs those tuples. The solution is that even for aborted > transactions, we do not return HEAPTUPLE_DEAD if the transaction id is > newer than the OldestXmin (same logic we use for deleted tuples of > committed transactions). We can do this only for catalog table rows > (both system and user defined) to limit the scope of impact. In any > case, this needs to be a separate patch along with a separate > discussion thread.
Are you working on that as well? -- Peter Eisentraut http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services