]> granicus.if.org Git - postgresql/commit
Support parallel bitmap heap scans.
authorRobert Haas <rhaas@postgresql.org>
Wed, 8 Mar 2017 17:05:43 +0000 (12:05 -0500)
committerRobert Haas <rhaas@postgresql.org>
Wed, 8 Mar 2017 17:05:43 +0000 (12:05 -0500)
commitf35742ccb7aa53ee3ed8416bbb378b0c3eeb6bb9
tree66c88951dd3b1546159869072e8ff3e3b506568b
parent4eafdcc27608dfb8a3afa3155d6ae07f66179782
Support parallel bitmap heap scans.

The index is scanned by a single process, but then all cooperating
processes can iterate jointly over the resulting set of heap blocks.
In the future, we might also want to support using a parallel bitmap
index scan to set up for a parallel bitmap heap scan, but that's a
job for another day.

Dilip Kumar, with some corrections and cosmetic changes by me.  The
larger patch set of which this is a part has been reviewed and tested
by (at least) Andres Freund, Amit Khandekar, Tushar Ahuja, Rafia
Sabih, Haribabu Kommi, Thomas Munro, and me.

Discussion: http://postgr.es/m/CAFiTN-uc4=0WxRGfCzs-xfkMYcSEWUC-Fon6thkJGjkh9i=13A@mail.gmail.com
24 files changed:
doc/src/sgml/monitoring.sgml
src/backend/access/heap/heapam.c
src/backend/executor/execParallel.c
src/backend/executor/nodeBitmapHeapscan.c
src/backend/executor/nodeBitmapIndexscan.c
src/backend/executor/nodeBitmapOr.c
src/backend/nodes/copyfuncs.c
src/backend/nodes/outfuncs.c
src/backend/nodes/readfuncs.c
src/backend/optimizer/path/allpaths.c
src/backend/optimizer/path/costsize.c
src/backend/optimizer/path/indxpath.c
src/backend/optimizer/plan/createplan.c
src/backend/optimizer/util/pathnode.c
src/backend/postmaster/pgstat.c
src/include/access/heapam.h
src/include/executor/nodeBitmapHeapscan.h
src/include/nodes/execnodes.h
src/include/nodes/plannodes.h
src/include/optimizer/pathnode.h
src/include/optimizer/paths.h
src/include/pgstat.h
src/test/regress/expected/select_parallel.out
src/test/regress/sql/select_parallel.sql