On 2019-04-03 21:19:45 -0700, Shawn Debnath wrote: > On Thu, Apr 04, 2019 at 02:01:14PM +1300, Thomas Munro wrote: > > On Thu, Apr 4, 2019 at 11:39 AM Thomas Munro <thomas.mu...@gmail.com> wrote: > > > ... Perhaps > > > that is an argument for putting the sync handler number *inside* the > > > FileTag, since we currently intend to do that with smgr IDs in > > > BufferTag (stealing space from ForkNumber). > > > > Here is a version like that. I like it better this way, and the extra > > space can be clawed back by using 16 bit types to hold the fork number > > and sync handler number. > > +typedef struct FileTag > +{ > + int16 handler; /* SyncRequstHandler value, > saving space */ > + int16 forknum; /* ForkNumber, saving space */ > + RelFileNode rnode; > + BlockNumber segno; > +} FileTag;
Seems odd to me to use BlockNumber for segno.