pgsql: Update parallel BTree scan state when the scan keys can't be sat

From: Amit Kapila <akapila(at)postgresql(dot)org>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Update parallel BTree scan state when the scan keys can't be sat
Date: 2020-09-17 10:52:52
Message-ID: E1kIrX2-0004G5-8j@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Update parallel BTree scan state when the scan keys can't be satisfied.

For parallel btree scan to work for array of scan keys, it should reach
BTPARALLEL_DONE state once for every distinct combination of array keys.
This is required to ensure that the parallel workers don't try to seize
blocks at the same time for different scan keys. We missed to update this
state when we discovered that the scan keys can't be satisfied.

Author: James Hunter
Reviewed-by: Amit Kapila
Tested-by: Justin Pryzby
Backpatch-through: 10, where it was introduced
Discussion: https://postgr.es/m/4248CABC-25E3-4809-B4D0-128E1BAABC3C@amazon.com

Branch
------
REL_12_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/4bc63462d9d8dd12a5564c3d4ca06c99449d2d07

Modified Files
--------------
src/backend/access/nbtree/nbtsearch.c | 4 ++++
1 file changed, 4 insertions(+)

Browse pgsql-committers by date

  From Date Subject
Next Message Tom Lane 2020-09-17 16:52:24 pgsql: Improve common/logging.c's support for multiple verbosity levels
Previous Message Peter Eisentraut 2020-09-17 10:01:18 pgsql: Allow CURRENT_ROLE where CURRENT_USER is accepted