Re: Enhanced error message to include hint messages for redundant options error - Mailing list pgsql-hackers

From Bharath Rupireddy
Subject Re: Enhanced error message to include hint messages for redundant options error
Date
Msg-id CALj2ACW+A8XN+Yfcf-7JxCDfNSt+necCNvepEgKxd0ZFhRPTMw@mail.gmail.com
Whole thread Raw
In response to Re: Enhanced error message to include hint messages for redundant options error  (Dilip Kumar <dilipbalaut@gmail.com>)
Responses Re: Enhanced error message to include hint messages for redundant options error
List pgsql-hackers
On Fri, Apr 30, 2021 at 2:49 PM Dilip Kumar <dilipbalaut@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



pgsql-hackers by date:

Previous
From: Bharath Rupireddy
Date:
Subject: Re: Log enhancement for aclcheck permissions failures
Next
From: Dilip Kumar
Date:
Subject: Re: Enhanced error message to include hint messages for redundant options error