From f1abcfcafd7685d727eeb1e732b35760a6cdd388 Mon Sep 17 00:00:00 2001 From: gentle_hu Date: Wed, 14 Jul 2021 10:28:11 +0800 Subject: [PATCH] disable SHUTDOWN in distributed mode --- src/common/backend/parser/gram.y | 2 +- src/gausskernel/optimizer/commands/shutdown.cpp | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/common/backend/parser/gram.y b/src/common/backend/parser/gram.y index a7d62e3e0..14a26ecd0 100755 --- a/src/common/backend/parser/gram.y +++ b/src/common/backend/parser/gram.y @@ -1077,7 +1077,7 @@ stmt : | RuleStmt | SecLabelStmt | SelectStmt - | ShutdownStmt + | ShutdownStmt | TransactionStmt | TruncateStmt | UnlistenStmt diff --git a/src/gausskernel/optimizer/commands/shutdown.cpp b/src/gausskernel/optimizer/commands/shutdown.cpp index 548d1db65..df2603afc 100644 --- a/src/gausskernel/optimizer/commands/shutdown.cpp +++ b/src/gausskernel/optimizer/commands/shutdown.cpp @@ -29,6 +29,10 @@ void DoShutdown(ShutdownStmt* stmt) { +#ifdef ENABLE_MULTIPLE_NODES + ereport(ERROR, (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), errmsg("SHUTDOWN is not supported in distributed mode."))); +#endif + if (!superuser()) { ereport(ERROR, (errcode(ERRCODE_INSUFFICIENT_PRIVILEGE), (errmsg("Only system admin can shutdown database."))));