mirror of
https://github.com/postgres/postgres.git
synced 2025-06-26 12:21:12 +03:00
Allow executor nodes to change their ExecProcNode function.
In order for executor nodes to be able to change their ExecProcNode function after ExecInitNode() has finished, provide ExecSetExecProcNode(). This allows any wrappers functions that only execProcnode.c knows about to be reinstalled. The motivation for wanting to change ExecProcNode after ExecInitNode() has finished is that it is not known until later whether parallel query is available, so if a parallel variant is to be installed then ExecInitNode() is too soon to decide. Author: Thomas Munro Reviewed-By: Andres Freund Discussion: https://postgr.es/m/CAEepm=09rr65VN+cAV5FgyM_z=D77Xy8Fuc9CDDDYbq3pQUezg@mail.gmail.com
This commit is contained in:
@ -219,6 +219,7 @@ extern void EvalPlanQualEnd(EPQState *epqstate);
|
||||
* functions in execProcnode.c
|
||||
*/
|
||||
extern PlanState *ExecInitNode(Plan *node, EState *estate, int eflags);
|
||||
extern void ExecSetExecProcNode(PlanState *node, ExecProcNodeMtd function);
|
||||
extern Node *MultiExecProcNode(PlanState *node);
|
||||
extern void ExecEndNode(PlanState *node);
|
||||
extern bool ExecShutdownNode(PlanState *node);
|
||||
|
Reference in New Issue
Block a user