Example process utility

tmp-process-utility
Jeff Davis 2022-04-14 15:21:34 -07:00
parent 6254f30305
commit 637c334865
1 changed files with 16 additions and 0 deletions

View File

@ -40,6 +40,7 @@
#include "catalog/dependency.h"
#include "commands/dbcommands.h"
#include "commands/defrem.h"
#include "commands/extension.h"
#include "commands/tablecmds.h"
#include "distributed/adaptive_executor.h"
#include "distributed/colocation_utils.h"
@ -193,6 +194,21 @@ multi_ProcessUtility(PlannedStmt *pstmt,
ErrorIfUnstableCreateOrAlterExtensionStmt(parsetree);
}
if (IsA(parsetree, CreateExtensionStmt))
{
CreateExtensionStmt *createExtensionStmt = castNode(CreateExtensionStmt, parsetree);
if (strcmp(createExtensionStmt->extname, "citus") == 0)
{
CreateExtensionStmt *createCitusStmt = makeNode(CreateExtensionStmt);
createCitusStmt->extname = "foo";
createCitusStmt->if_not_exists = true;
createCitusStmt->options = NIL;
CreateExtension(NULL, createCitusStmt);
CommandCounterIncrement();
}
}
if (!CitusHasBeenLoaded())
{
/*