Hi,

On Wed, Nov 19, 2025 at 11:55 AM jian he <[email protected]> wrote:
> On Fri, Nov 7, 2025 at 2:26 PM Kirill Reshke <[email protected]> wrote:
> >
> > Hi!
> > I tried your fix and this indeed fixes an issue. Two minor comments:
> >
> > First,
> > in the `src/backend/parser/parse_expr.c` fil there are multiple
> > examples of working with `coerce_to_target_type`, they all share
> > different coding practice:
> >
> > ```
> > coerced_expr = coerce_to_target_type(.., expr, ..)
> >
> > if (coerced_expr == NULL)
> >      ereport();
> >
> >
> > expr = coerced_expr;
> > ```
> >
> > Instead of
> > ```
> > expr = coerce_to_target_type(.., expr, ..)
> >
> > if (expr == NULL)
> >      ereport();
> > ```
> >
> > Let's be consistent?
> >
>
> IMHO,
> > coerced_expr = coerce_to_target_type(.., expr, ..)
> is better than
> > expr = coerce_to_target_type(.., expr, ..)
>
> I changed accordingly.

I agree, though I prefer a different name for that coerced_* variable.
Also, let’s define the _type and _loc variables inside the error
block.  Updated patch attached.

Please feel free to post a patch for the 2nd issue.

-- 
Thanks, Amit Langote

Attachment: v2-0001-Fix-error-reporting-for-SQL-JSON-path-type-mismat.patch
Description: Binary data

Reply via email to