Remove direct uses of ItemPointer.{ip_blkid,ip_posid}

Alvaro Herrera <alvherre@alvh.no-ip.org>

Commit: ce96ce60ca2293f75f36c3661e4657a3c79ffd61
Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
Date: 2017-03-28T22:02:23Z
Releases: 10.0
Remove direct uses of ItemPointer.{ip_blkid,ip_posid}

There are no functional changes here; this simply encapsulates knowledge
of the ItemPointerData struct so that a future patch can change things
without more breakage.

All direct users of ip_blkid and ip_posid are changed to use existing
macros ItemPointerGetBlockNumber and ItemPointerGetOffsetNumber
respectively.  For callers where that's inappropriate (because they
Assert that the itempointer is is valid-looking), add
ItemPointerGetBlockNumberNoCheck and ItemPointerGetOffsetNumberNoCheck,
which lack the assertion but are otherwise identical.

Author: Pavan Deolasee
Discussion: https://postgr.es/m/CABOikdNnFon4cJiL=h1mZH3bgUeU+sWHuU4Yr8AB=j3A2p1GiA@mail.gmail.com

Files

Discussion