Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitb7f2dd9

Browse files
author
Amit Kapila
committed
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 reachBTPARALLEL_DONE state once for every distinct combination of array keys.This is required to ensure that the parallel workers don't try to seizeblocks at the same time for different scan keys. We missed to update thisstate when we discovered that the scan keys can't be satisfied.Author: James HunterReviewed-by: Amit KapilaTested-by: Justin PryzbyBackpatch-through: 10, where it was introducedDiscussion:https://postgr.es/m/4248CABC-25E3-4809-B4D0-128E1BAABC3C@amazon.com
1 parent45b9805 commitb7f2dd9

File tree

1 file changed

+4
-0
lines changed

1 file changed

+4
-0
lines changed

‎src/backend/access/nbtree/nbtsearch.c

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -880,7 +880,11 @@ _bt_first(IndexScanDesc scan, ScanDirection dir)
880880
* never be satisfied (eg, x == 1 AND x > 2).
881881
*/
882882
if (!so->qual_ok)
883+
{
884+
/* Notify any other workers that we're done with this scan key. */
885+
_bt_parallel_done(scan);
883886
return false;
887+
}
884888

885889
/*
886890
* For parallel scans, get the starting page from shared state. If the

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp