Thread: pgsql: Bitmap Table Scans use unified TBMIterator

pgsql: Bitmap Table Scans use unified TBMIterator

From
Melanie Plageman
Date:
Bitmap Table Scans use unified TBMIterator

With the repurposing of TBMIterator as an interface for both parallel
and serial iteration through TIDBitmaps in commit 7f9d4187e7bab10329cc,
bitmap table scans may now use it.

Modify bitmap table scan code to use the TBMIterator. This requires
moving around a bit of code, so a few variables are initialized
elsewhere.

Author: Melanie Plageman
Reviewed-by: Tomas Vondra
Discussion: https://postgr.es/m/c736f6aa-8b35-4e20-9621-62c7c82e2168%40vondra.me

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/1a0da347a7ac98db6964feb5e3063fc6e8fc92a0

Modified Files
--------------
src/backend/access/heap/heapam_handler.c  |   5 +-
src/backend/executor/nodeBitmapHeapscan.c | 170 ++++++++++++------------------
src/include/access/relscan.h              |  12 +--
src/include/access/tableam.h              |   8 +-
src/include/nodes/execnodes.h             |   4 +-
src/include/nodes/tidbitmap.h             |  10 ++
6 files changed, 86 insertions(+), 123 deletions(-)