btree: Support parallel index scans.
This isn't exposed to the optimizer or the executor yet; we'll add
support for those things in a separate patch. But this puts the
basic mechanism in place: several processes can attach to a parallel
btree index scan, and each one will get a subset of the tuples that
would have been produced by a non-parallel scan. Each index page
becomes the responsibility of a single worker, which then returns
all of the TIDs on that page.
Rahila Syed, Amit Kapila, Robert Haas, reviewed and tested by
Anastasia Lubennikova, Tushar Ahuja, and Haribabu Kommi.
Branch
------
master
Details
-------
http://git.postgresql.org/pg/commitdiff/569174f1be92be93f5366212cc46960d28a5c5cd
Modified Files
--------------
doc/src/sgml/monitoring.sgml | 6 +-
src/backend/access/nbtree/nbtree.c | 259 +++++++++++++++++++++++++++++-
src/backend/access/nbtree/nbtsearch.c | 286 ++++++++++++++++++++++++++++------
src/backend/access/nbtree/nbtutils.c | 4 +
src/backend/postmaster/pgstat.c | 3 +
src/include/access/nbtree.h | 15 +-
src/include/pgstat.h | 1 +
src/tools/pgindent/typedefs.list | 3 +
8 files changed, 527 insertions(+), 50 deletions(-)