On Mon, Feb 7, 2022 at 12:26 AM Dilip Kumar <dilipbal...@gmail.com> wrote: > I have splitted the patch into multiple patches which can be > independently committable and easy to review. I have explained the > purpose and scope of each patch in the respective commit messages.
Hmm. The parts of this I've looked at seem reasonably clean, but I don't think I like the design choice. You're inventing RelFileNodeSetFork(), but at present the RelFileNode struct doesn't include a fork number. I feel like we should leave that alone, and only change the definition of a BufferTag. What about adding accessors for all of the BufferTag fields in 0001, and then in 0002 change it to look like something this: typedef struct BufferTag { Oid dbOid; Oid tablespaceOid; uint32 fileNode_low; uint32 fileNode_hi:24; uint32 forkNumber:8; BlockNumber blockNumber; } BufferTag; -- Robert Haas EDB: http://www.enterprisedb.com