Hi, Thanks for the comments!
- I think it's fine to skip during fast forward as we are not generating logical - changes. It's done that way in master, in your proposal and in my "if" proposals. - Note that my proposals related to the if conditions are for heap2_decode and - heap_decode (not xact_decode). But note that in xact_decode(), case XLOG_XACT_INVALIDATIONS, we call ReorderBufferXidSetCatalogChanges() even if we are fast-forwarding, it might be better to be consistent. In addition, we don't decode anything during fast forward, but the snapshot might serialize to disk. If we skip calling ReorderBufferXidSetCatalogChanges(), the snapshot may be wrong on disk. -- Regards, ChangAo Chen