mirror of https://github.com/citusdata/citus.git
Register citus custom scan nodes
parent
83c1143505
commit
16421f089f
|
@ -124,8 +124,20 @@ static CustomExecMethods CoordinatorInsertSelectCustomExecMethods = {
|
|||
|
||||
|
||||
/*
|
||||
* RegisterCitusCustomScanMethods ets PostgreSQL know about
|
||||
* Citus' custom scan nodes.
|
||||
* Let PostgreSQL know about Citus' custom scan nodes.
|
||||
*/
|
||||
void
|
||||
RegisterCitusCustomScanMethods(void)
|
||||
{
|
||||
RegisterCustomScanMethods(&RealTimeCustomScanMethods);
|
||||
RegisterCustomScanMethods(&TaskTrackerCustomScanMethods);
|
||||
RegisterCustomScanMethods(&RouterCustomScanMethods);
|
||||
RegisterCustomScanMethods(&CoordinatorInsertSelectCustomScanMethods);
|
||||
RegisterCustomScanMethods(&DelayedErrorCustomScanMethods);
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* RealTimeCreateScan creates the scan state for real-time executor queries.
|
||||
*/
|
||||
static Node *
|
||||
|
@ -269,6 +281,7 @@ CitusSelectBeginScan(CustomScanState *node, EState *estate, int eflags)
|
|||
/* just an empty function */
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* CitusEndScan is used to clean up tuple store of the given custom scan state.
|
||||
*/
|
||||
|
|
|
@ -189,6 +189,9 @@ _PG_init(void)
|
|||
/* make our additional node types known */
|
||||
RegisterNodes();
|
||||
|
||||
/* make our custom scan nodes known */
|
||||
RegisterCitusCustomScanMethods();
|
||||
|
||||
/* intercept planner */
|
||||
planner_hook = distributed_planner;
|
||||
|
||||
|
|
|
@ -34,7 +34,7 @@ extern CustomScanMethods CoordinatorInsertSelectCustomScanMethods;
|
|||
extern CustomScanMethods DelayedErrorCustomScanMethods;
|
||||
|
||||
|
||||
/* common functions for different executors */
|
||||
extern void RegisterCitusCustomScanMethods(void);
|
||||
extern void CitusExplainScan(CustomScanState *node, List *ancestors, struct
|
||||
ExplainState *es);
|
||||
|
||||
|
|
Loading…
Reference in New Issue