On Fri, Apr 30, 2021 at 2:49 PM Dilip Kumar <dilipbal...@gmail.com> wrote:
> Looking into this again, why not as shown below?  IMHO, this way the
> code will be logically the same as it was before the patch, basically
> why to process an extra statement ( *volatility_item = defel;) if we
> have already decided to error.

I changed my mind given the concerns raised on removing the goto
statements. We could just do as below:

diff --git a/src/backend/commands/functioncmds.c
b/src/backend/commands/functioncmds.c
index 9548287217..1f1c74c379 100644
--- a/src/backend/commands/functioncmds.c
+++ b/src/backend/commands/functioncmds.c
@@ -575,7 +575,7 @@ compute_common_attribute(ParseState *pstate,
 duplicate_error:
     ereport(ERROR,
             (errcode(ERRCODE_SYNTAX_ERROR),
-             errmsg("conflicting or redundant options"),
+             errmsg("option \"%s\" specified more than once", defel->defname),
              parser_errposition(pstate, defel->location)));
     return false;                /* keep compiler quiet */

I'm not attaching above one line change as a patch, maybe Vignesh can
merge this into the main patch.

With Regards,
Bharath Rupireddy.
EnterpriseDB: http://www.enterprisedb.com


Reply via email to