From: | Melanie Plageman <melanieplageman(at)gmail(dot)com> |
---|---|
To: | pgsql-committers(at)lists(dot)postgresql(dot)org |
Subject: | pgsql: Add common interface for TBMIterators |
Date: | 2024-12-18 23:22:11 |
Message-ID: | E1tO3Mo-000GJq-UZ@gemulon.postgresql.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-committers |
Add common interface for TBMIterators
Add and use TBMPrivateIterator, which replaces the current TBMIterator
for serial use cases, and repurpose TBMIterator to be a unified
interface for both the serial ("private") and parallel ("shared") TID
Bitmap iterator interfaces. This encapsulation simplifies call sites for
callers supporting both parallel and serial TID Bitmap access.
TBMIterator is not yet used in this commit.
Author: Melanie Plageman
Reviewed-by: Tomas Vondra, Heikki Linnakangas
Discussion: https://postgr.es/m/063e4eb4-32d9-439e-a0b1-75565a9835a8%40iki.fi
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/7f9d4187e7bab10329cc00aff34cfba08248d4be
Modified Files
--------------
src/backend/access/gin/ginget.c | 10 +--
src/backend/access/gin/ginscan.c | 2 +-
src/backend/access/heap/heapam_handler.c | 2 +-
src/backend/executor/nodeBitmapHeapscan.c | 25 +++----
src/backend/nodes/tidbitmap.c | 114 +++++++++++++++++++++++-------
src/include/access/gin_private.h | 2 +-
src/include/access/relscan.h | 4 +-
src/include/nodes/execnodes.h | 2 +-
src/include/nodes/tidbitmap.h | 30 ++++++--
src/tools/pgindent/typedefs.list | 1 +
10 files changed, 140 insertions(+), 52 deletions(-)
From | Date | Subject | |
---|---|---|---|
Next Message | Melanie Plageman | 2024-12-18 23:44:41 | pgsql: Bitmap Table Scans use unified TBMIterator |
Previous Message | Melanie Plageman | 2024-12-18 23:17:28 | pgsql: Fix overflow danger in SampleHeapTupleVisible() |