In SPGiST replay, do conflict resolution before modifying the page.
Tom Lane <tgl@sss.pgh.pa.us>
In SPGiST replay, do conflict resolution before modifying the page. In yesterday's commit 962e0cc71e839c58fb9125fa85511b8bbb8bdbee, I added the ResolveRecoveryConflictWithSnapshot call in the wrong place. I correctly put it before spgRedoVacuumRedirect itself would modify the index page --- but not before RestoreBkpBlocks, so replay of a record with a full-page image would modify the page before kicking off any conflicting HS transactions. Oops.
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/access/spgist/spgxlog.c | modified | +27 −13 |