Skip to content
Snippets Groups Projects
Commit 0c99d41e authored by Tom Lane's avatar Tom Lane
Browse files

Allow hash joins to be interrupted while searching hash table for match.

Per experimentation with a recent example, in which unreasonable amounts
of time could elapse before the backend would respond to a query-cancel.

This might be something to back-patch, but the patch doesn't apply cleanly
because this code was rewritten for 9.1.  Given the lack of field
complaints I won't bother for now.

Cédric Villemain
parent 596b0c21
No related branches found
No related tags found
No related merge requests found
......@@ -19,6 +19,7 @@
#include "executor/hashjoin.h"
#include "executor/nodeHash.h"
#include "executor/nodeHashjoin.h"
#include "miscadmin.h"
#include "utils/memutils.h"
......@@ -262,6 +263,13 @@ ExecHashJoin(HashJoinState *node)
case HJ_SCAN_BUCKET:
/*
* We check for interrupts here because this corresponds to
* where we'd fetch a row from a child plan node in other
* join types.
*/
CHECK_FOR_INTERRUPTS();
/*
* Scan the selected hash bucket for matches to current outer
*/
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment