diff --git a/src/backend/distributed/commands/database.c b/src/backend/distributed/commands/database.c index 9ea6c17ba..9fe576c4b 100644 --- a/src/backend/distributed/commands/database.c +++ b/src/backend/distributed/commands/database.c @@ -699,12 +699,8 @@ List * PreprocessAlterDatabaseOwnerStmt(Node *node, const char *queryString, ProcessUtilityContext processUtilityContext) { - const DistributeObjectOps *ops = GetDistributeObjectOps(node); - Assert(ops != NULL); - - if (ops->featureFlag && *ops->featureFlag == false) + if (!EnableAlterDatabaseOwner) { - /* not propagating when a configured feature flag is turned off by the user */ return NIL; } @@ -717,6 +713,7 @@ PreprocessAlterDatabaseOwnerStmt(Node *node, const char *queryString, { return NIL; } + EnsurePropagationToCoordinator(); AlterOwnerStmt *stmt = (AlterOwnerStmt *) node; diff --git a/src/backend/distributed/commands/non_main_db_distribute_object_ops.c b/src/backend/distributed/commands/non_main_db_distribute_object_ops.c index 9cbe43162..3c4d87017 100644 --- a/src/backend/distributed/commands/non_main_db_distribute_object_ops.c +++ b/src/backend/distributed/commands/non_main_db_distribute_object_ops.c @@ -76,6 +76,10 @@ static bool GrantStmtCheckSupportedObjectType(Node *node); static bool SecLabelStmtCheckSupportedObjectType(Node *node); static bool AlterDbRenameCheckSupportedObjectType(Node *node); static bool AlterDbOwnerCheckSupportedObjectType(Node *node); + +/* + * cannotBeExecutedInTransaction callbacks for OperationArray. + */ static bool CannotBeExecutedInTransaction_True(Node *node); static bool CannotBeExecutedInTransaction_False(Node *node); static bool AlterDbCannotBeExecutedInTransaction(Node *node); diff --git a/src/include/distributed/commands.h b/src/include/distributed/commands.h index 72d4f8c27..64c8d5441 100644 --- a/src/include/distributed/commands.h +++ b/src/include/distributed/commands.h @@ -236,7 +236,6 @@ extern List * PreprocessAlterDatabaseRefreshCollStmt(Node *node, const char *que processUtilityContext); extern List * PreprocessAlterDatabaseOwnerStmt(Node *node, const char *queryString, ProcessUtilityContext processUtilityContext); - extern List * GetDatabaseMetadataSyncCommands(Oid dbOid);