mirror of https://github.com/citusdata/citus.git
extract rename DistributeObjectOps
parent
4ca33dde64
commit
7fe71eb124
|
@ -23,21 +23,6 @@ static DistributeObjectOps NoDistributeOps = {
|
|||
.address = NULL,
|
||||
};
|
||||
|
||||
static DistributeObjectOps Any_Rename = {
|
||||
.deparse = NULL,
|
||||
.qualify = NULL,
|
||||
.preprocess = PreprocessRenameStmt,
|
||||
.postprocess = NULL,
|
||||
.address = NULL,
|
||||
};
|
||||
REGISTER_DISTRIBUTED_OPERATION_NESTED(RenameStmt, renameType, OBJECT_TABLE, Any_Rename);
|
||||
REGISTER_DISTRIBUTED_OPERATION_NESTED(RenameStmt, renameType, OBJECT_FOREIGN_TABLE,
|
||||
Any_Rename);
|
||||
REGISTER_DISTRIBUTED_OPERATION_NESTED(RenameStmt, renameType, OBJECT_COLUMN, Any_Rename);
|
||||
REGISTER_DISTRIBUTED_OPERATION_NESTED(RenameStmt, renameType, OBJECT_TABCONSTRAINT,
|
||||
Any_Rename);
|
||||
REGISTER_DISTRIBUTED_OPERATION_NESTED(RenameStmt, renameType, OBJECT_INDEX, Any_Rename);
|
||||
|
||||
/* TODO this is a 2 level nested statement which we do not currently support */
|
||||
static DistributeObjectOps Attribute_Rename = {
|
||||
.deparse = DeparseRenameAttributeStmt,
|
||||
|
|
|
@ -18,6 +18,23 @@
|
|||
#include "nodes/parsenodes.h"
|
||||
|
||||
|
||||
/* DistributeObjectOps */
|
||||
static List * PreprocessRenameStmt(Node *node, const char *renameCommand);
|
||||
static DistributeObjectOps Any_Rename = {
|
||||
.deparse = NULL,
|
||||
.qualify = NULL,
|
||||
.preprocess = PreprocessRenameStmt,
|
||||
.postprocess = NULL,
|
||||
.address = NULL,
|
||||
};
|
||||
REGISTER_DISTRIBUTED_OPERATION_NESTED(RenameStmt, renameType, OBJECT_TABLE, Any_Rename);
|
||||
REGISTER_DISTRIBUTED_OPERATION_NESTED(RenameStmt, renameType, OBJECT_FOREIGN_TABLE,
|
||||
Any_Rename);
|
||||
REGISTER_DISTRIBUTED_OPERATION_NESTED(RenameStmt, renameType, OBJECT_COLUMN, Any_Rename);
|
||||
REGISTER_DISTRIBUTED_OPERATION_NESTED(RenameStmt, renameType, OBJECT_TABCONSTRAINT,
|
||||
Any_Rename);
|
||||
REGISTER_DISTRIBUTED_OPERATION_NESTED(RenameStmt, renameType, OBJECT_INDEX, Any_Rename);
|
||||
|
||||
/*
|
||||
* PreprocessRenameStmt first determines whether a given rename statement involves
|
||||
* a distributed table. If so (and if it is supported, i.e. renames a column),
|
||||
|
@ -25,7 +42,7 @@
|
|||
* portion of DDL execution before returning that DDLJob in a List. If no dis-
|
||||
* tributed table is involved, this function returns NIL.
|
||||
*/
|
||||
List *
|
||||
static List *
|
||||
PreprocessRenameStmt(Node *node, const char *renameCommand)
|
||||
{
|
||||
RenameStmt *renameStmt = castNode(RenameStmt, node);
|
||||
|
|
|
@ -188,7 +188,6 @@ extern void DropPolicyEventExtendNames(DropStmt *stmt, const char *schemaName, u
|
|||
|
||||
|
||||
/* rename.c - forward declarations*/
|
||||
extern List * PreprocessRenameStmt(Node *renameStmt, const char *renameCommand);
|
||||
extern void ErrorIfUnsupportedRenameStmt(RenameStmt *renameStmt);
|
||||
extern List * PreprocessRenameAttributeStmt(Node *stmt, const char *queryString);
|
||||
|
||||
|
|
Loading…
Reference in New Issue