Teach TID store to skip bitmap for small numbers of offsets

John Naylor <john.naylor@postgresql.org>

Commit: f35bd9bf359d3d740063997e1cbab9b69df7af99
Author: John Naylor <john.naylor@postgresql.org>
Date: 2024-04-08T11:47:09Z
Releases: 17.0
Teach TID store to skip bitmap for small numbers of offsets

The header portion of BlocktableEntry has enough padding space for
an array of 3 offsets (1 on 32-bit platforms). Use this space instead
of having a sparse bitmap array. This will take up a constant amount
of space no matter what the offsets are.

Reviewed (in an earlier version) by Masahiko Sawada

Discussion: https://postgr.es/m/CANWCAZYw+_KAaUNruhJfE=h6WgtBKeDG32St8vBJBEY82bGVRQ@mail.gmail.com
Discussion: https://postgr.es/m/CAD21AoBci3Hujzijubomo1tdwH3XtQ9F89cTNQ4bsQijOmqnEw@mail.gmail.com

Files

Discussion