> On Fri, Apr 03, 2026 at 09:42:20AM -0700, Haibo Yan wrote:
Thanks for picking it up, the patch looks good.
> One small thing: the UI looks a bit odd on my side. It does not seem to have picked my attachment, and is instead
showingyour older attachment there. But cfbot appears to have picked up mine, so I think it may just be a UI issue.
It takes some time, as far as I can see currently the correct patch is shown.
> + /*
> + * Identify the inner extraction expression. It may appear as
> + * either a FuncExpr or an OpExpr; accept both forms.
> + */
> + if (IsA(arg, FuncExpr))
> + {
> + FuncExpr *inner = (FuncExpr *) arg;
> +
> + inner_funcid = inner->funcid;
> + inner_args = inner->args;
> + location = inner->location;
> + }
> + else if (IsA(arg, OpExpr))
> + {
> + OpExpr *inner = (OpExpr *) arg;
> +
> + inner_funcid = inner->opfuncid;
> + inner_args = inner->args;
> + location = inner->location;
> + }
> + else
> + PG_RETURN_POINTER(NULL);
It may also appear as a SubscriptingRef expression if we use subscription over
jsonb.
SELECT test_json['field7']::bool FROM test_jsonb WHERE json_type = 'object';
Seems to be worth handling this case as well, since it doesn't lead to an
interface explosion.