mirror of https://github.com/citusdata/citus.git
Qualify CREATE AGGREGATE stmts in Preprocess (#5834)
parent
c18c63a930
commit
46c6630328
|
@ -22,6 +22,20 @@
|
||||||
#include "utils/lsyscache.h"
|
#include "utils/lsyscache.h"
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* PreprocessDefineAggregateStmt only qualifies the node with schema name.
|
||||||
|
* We will handle the rest in the Postprocess phase.
|
||||||
|
*/
|
||||||
|
List *
|
||||||
|
PreprocessDefineAggregateStmt(Node *node, const char *queryString,
|
||||||
|
ProcessUtilityContext processUtilityContext)
|
||||||
|
{
|
||||||
|
QualifyTreeNode((Node *) node);
|
||||||
|
|
||||||
|
return NIL;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* PostprocessDefineAggregateStmt actually creates the plan we need to execute for
|
* PostprocessDefineAggregateStmt actually creates the plan we need to execute for
|
||||||
* aggregate propagation.
|
* aggregate propagation.
|
||||||
|
@ -37,8 +51,6 @@
|
||||||
List *
|
List *
|
||||||
PostprocessDefineAggregateStmt(Node *node, const char *queryString)
|
PostprocessDefineAggregateStmt(Node *node, const char *queryString)
|
||||||
{
|
{
|
||||||
QualifyTreeNode((Node *) node);
|
|
||||||
|
|
||||||
DefineStmt *stmt = castNode(DefineStmt, node);
|
DefineStmt *stmt = castNode(DefineStmt, node);
|
||||||
|
|
||||||
if (!ShouldPropagate())
|
if (!ShouldPropagate())
|
||||||
|
|
|
@ -44,7 +44,7 @@ static DistributeObjectOps Aggregate_AlterOwner = {
|
||||||
static DistributeObjectOps Aggregate_Define = {
|
static DistributeObjectOps Aggregate_Define = {
|
||||||
.deparse = NULL,
|
.deparse = NULL,
|
||||||
.qualify = QualifyDefineAggregateStmt,
|
.qualify = QualifyDefineAggregateStmt,
|
||||||
.preprocess = NULL,
|
.preprocess = PreprocessDefineAggregateStmt,
|
||||||
.postprocess = PostprocessDefineAggregateStmt,
|
.postprocess = PostprocessDefineAggregateStmt,
|
||||||
.address = DefineAggregateStmtObjectAddress,
|
.address = DefineAggregateStmtObjectAddress,
|
||||||
.markDistributed = true,
|
.markDistributed = true,
|
||||||
|
|
|
@ -123,6 +123,8 @@ typedef enum SearchForeignKeyColumnFlags
|
||||||
|
|
||||||
|
|
||||||
/* aggregate.c - forward declarations */
|
/* aggregate.c - forward declarations */
|
||||||
|
extern List * PreprocessDefineAggregateStmt(Node *node, const char *queryString,
|
||||||
|
ProcessUtilityContext processUtilityContext);
|
||||||
extern List * PostprocessDefineAggregateStmt(Node *node, const char *queryString);
|
extern List * PostprocessDefineAggregateStmt(Node *node, const char *queryString);
|
||||||
|
|
||||||
/* cluster.c - forward declarations */
|
/* cluster.c - forward declarations */
|
||||||
|
|
Loading…
Reference in New Issue