mirror of
https://github.com/postgres/postgres.git
synced 2025-08-25 20:23:07 +03:00
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
This commit is contained in:
@@ -34,6 +34,7 @@
|
||||
#include "executor/execdebug.h"
|
||||
#include "executor/nodeIndexonlyscan.h"
|
||||
#include "executor/nodeIndexscan.h"
|
||||
#include "miscadmin.h"
|
||||
#include "storage/bufmgr.h"
|
||||
#include "storage/predicate.h"
|
||||
#include "utils/memutils.h"
|
||||
@@ -117,6 +118,8 @@ IndexOnlyNext(IndexOnlyScanState *node)
|
||||
{
|
||||
HeapTuple tuple = NULL;
|
||||
|
||||
CHECK_FOR_INTERRUPTS();
|
||||
|
||||
/*
|
||||
* We can skip the heap fetch if the TID references a heap page on
|
||||
* which all tuples are known visible to everybody. In any case,
|
||||
|
Reference in New Issue
Block a user