Hi hackers,
When I read the heapam_visibility.c, I found that there is some code in HeapTupleSatisfiesXXX that has a similar code for pre-9.0 binary upgrades. HeapTupleSatisfiesSelf, HeapTupleSatisfiesToast and HeapTupleSatisfiesDirty have the same code for pre-9.0 binary upgrades. HeapTupleSatisfiesUpdate has a similar code, except it returns TM_Result other than boolean. HeapTupleSatisfiesMVCC also has a similar code like HeapTupleSatisfiesSelf, expect it use XidInMVCCSnapshot other than TransactionIdIsInProgress. The most different is HeapTupleSatisfiesVacuumHorizon. Could we encapsulate the code for pre-9.0 binary upgrades? This idea comes from [1]. Any thoughts? [1] https://www.postgresql.org/message-id/8a855f33-2581-66bf-85f7-0b99239edbda%40postgrespro.ru -- Regrads, Japin Li. ChengDu WenWu Information Technology Co.,Ltd.