From d47cfef7116fb36349949f5c757aa2112c249804 Mon Sep 17 00:00:00 2001 From: Andres Freund Date: Tue, 25 Jul 2017 17:37:17 -0700 Subject: Move interrupt checking from ExecProcNode() to executor nodes. In a followup commit ExecProcNode(), and especially the large switch it contains, will largely be replaced by a function pointer directly to the correct node. The node functions will then get invoked by a thin inline function wrapper. To avoid having to include miscadmin.h in headers - CHECK_FOR_INTERRUPTS() - move the interrupt checks into the individual executor routines. While looking through all executor nodes, I noticed a number of arguably missing interrupt checks, add these too. Author: Andres Freund, Tom Lane Reviewed-By: Tom Lane Discussion: https://postgr.es/m/22833.1490390175@sss.pgh.pa.us --- src/backend/executor/nodeProjectSet.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src/backend/executor/nodeProjectSet.c') diff --git a/src/backend/executor/nodeProjectSet.c b/src/backend/executor/nodeProjectSet.c index 01048cc8268..3b69c7adeea 100644 --- a/src/backend/executor/nodeProjectSet.c +++ b/src/backend/executor/nodeProjectSet.c @@ -24,6 +24,7 @@ #include "executor/executor.h" #include "executor/nodeProjectSet.h" +#include "miscadmin.h" #include "nodes/nodeFuncs.h" #include "utils/memutils.h" @@ -46,6 +47,8 @@ ExecProjectSet(ProjectSetState *node) PlanState *outerPlan; ExprContext *econtext; + CHECK_FOR_INTERRUPTS(); + econtext = node->ps.ps_ExprContext; /* -- cgit v1.2.3