From c8e5992fa7564fca9bf3aaf9840dd3f0eb24ee2b Mon Sep 17 00:00:00 2001 From: Tender Wang Date: Mon, 21 Oct 2024 20:47:20 +0800 Subject: [PATCH] Remove a correct Assert. --- src/backend/commands/copyto.c | 5 ++--- src/test/regress/expected/copy2.out | 5 +++++ src/test/regress/sql/copy2.sql | 5 +++++ 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/src/backend/commands/copyto.c b/src/backend/commands/copyto.c index 463083e645..24c4bbcccb 100644 --- a/src/backend/commands/copyto.c +++ b/src/backend/commands/copyto.c @@ -492,8 +492,6 @@ BeginCopyTo(ParseState *pstate, (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), errmsg("COPY (SELECT INTO) is not supported"))); - Assert(query->utilityStmt == NULL); - /* * Similarly the grammar doesn't enforce the presence of a RETURNING * clause, but this is required here. @@ -504,7 +502,8 @@ BeginCopyTo(ParseState *pstate, Assert(query->commandType == CMD_INSERT || query->commandType == CMD_UPDATE || query->commandType == CMD_DELETE || - query->commandType == CMD_MERGE); + query->commandType == CMD_MERGE || + query->commandType == CMD_UTILITY); ereport(ERROR, (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), diff --git a/src/test/regress/expected/copy2.out b/src/test/regress/expected/copy2.out index 64ea33aeae..86c2a7eea4 100644 --- a/src/test/regress/expected/copy2.out +++ b/src/test/regress/expected/copy2.out @@ -929,3 +929,8 @@ truncate copy_default; -- DEFAULT cannot be used in COPY TO copy (select 1 as test) TO stdout with (default '\D'); ERROR: COPY DEFAULT cannot be used with COPY TO +-- NOTIFY cannnot be used in COPY TO +CREATE TABLE r_notify_t(i int); +CREATE RULE r_notify AS ON INSERT TO r_notify_t DO INSTEAD NOTIFY r_c; +COPY (INSERT INTO r_notify_t VALUES (1)) TO stdout; +ERROR: COPY query must have a RETURNING clause diff --git a/src/test/regress/sql/copy2.sql b/src/test/regress/sql/copy2.sql index 45273557ce..aa34d7efb7 100644 --- a/src/test/regress/sql/copy2.sql +++ b/src/test/regress/sql/copy2.sql @@ -707,3 +707,8 @@ truncate copy_default; -- DEFAULT cannot be used in COPY TO copy (select 1 as test) TO stdout with (default '\D'); + +-- NOTIFY cannnot be used in COPY TO +CREATE TABLE r_notify_t(i int); +CREATE RULE r_notify AS ON INSERT TO r_notify_t DO INSTEAD NOTIFY r_c; +COPY (INSERT INTO r_notify_t VALUES (1)) TO stdout; -- 2.25.1