mirror of
https://github.com/postgres/postgres.git
synced 2025-12-21 05:21:08 +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:
@@ -41,6 +41,7 @@
|
||||
#include "access/transam.h"
|
||||
#include "executor/execdebug.h"
|
||||
#include "executor/nodeBitmapHeapscan.h"
|
||||
#include "miscadmin.h"
|
||||
#include "pgstat.h"
|
||||
#include "storage/bufmgr.h"
|
||||
#include "storage/predicate.h"
|
||||
@@ -192,6 +193,8 @@ BitmapHeapNext(BitmapHeapScanState *node)
|
||||
Page dp;
|
||||
ItemId lp;
|
||||
|
||||
CHECK_FOR_INTERRUPTS();
|
||||
|
||||
/*
|
||||
* Get next page of results if needed
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user