From: | Amit Langote <amitlangote09(at)gmail(dot)com> |
---|---|
To: | Erik Rijkers <er(at)xs4all(dot)nl> |
Cc: | Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>, jian he <jian(dot)universality(at)gmail(dot)com>, Andrew Dunstan <andrew(at)dunslane(dot)net>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: remaining sql/json patches |
Date: | 2023-09-19 12:51:39 |
Message-ID: | CA+HiwqGi+mpw5rb1p9_-LmYJq51BQt5Ox+ct4Lun=241MVaevg@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Tue, Sep 19, 2023 at 9:31 PM Erik Rijkers <er(at)xs4all(dot)nl> wrote:
> Op 9/19/23 om 13:56 schreef Amit Langote:
> > On Tue, Sep 19, 2023 at 7:18 PM Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org> wrote:
> >> 0001: I wonder why you used Node for the ErrorSaveContext pointer
> >> instead of the specific struct you want. I propose the attached, for
> >> some extra type-safety. Or did you have a reason to do it that way?
> >
> > No reason other than that most other headers use Node. I agree that
> > making an exception for this patch might be better, so I've
> > incorporated your patch into 0001.
> >
> > I've also updated the query functions patch (0003) to address the
> > crashing bug reported by Erik. Essentially, I made the coercion step
> > of JSON_QUERY to always use json_populate_type() when WITH WRAPPER is
> > used. You might get funny errors with ERROR OR ERROR for many types
> > when used in RETURNING, but at least there should no longer be any
> > crashes.
> >
>
> Indeed, with v16 those crashes are gone.
>
> Some lesser evil: gcc 13.2.0 gave some warnings, slightly different in
> assert vs non-assert build.
>
> --- assert build:
>
> -- [2023.09.19 14:06:35 json_table2/0] make core: make --quiet -j 4
> In file included from ../../../src/include/postgres.h:45,
> from parse_expr.c:16:
> In function ‘transformJsonFuncExpr’,
> inlined from ‘transformExprRecurse’ at parse_expr.c:374:13:
> parse_expr.c:4355:22: warning: ‘jsexpr’ may be used uninitialized
> [-Wmaybe-uninitialized]
> 4355 | Assert(jsexpr->formatted_expr);
> ../../../src/include/c.h:864:23: note: in definition of macro ‘Assert’
> 864 | if (!(condition)) \
> | ^~~~~~~~~
> parse_expr.c: In function ‘transformExprRecurse’:
> parse_expr.c:4212:21: note: ‘jsexpr’ was declared here
> 4212 | JsonExpr *jsexpr;
> | ^~~~~~
>
>
> --- non-assert build:
>
> -- [2023.09.19 14:11:03 json_table2/1] make core: make --quiet -j 4
> In function ‘transformJsonFuncExpr’,
> inlined from ‘transformExprRecurse’ at parse_expr.c:374:13:
> parse_expr.c:4356:28: warning: ‘jsexpr’ may be used uninitialized
> [-Wmaybe-uninitialized]
> 4356 | if (exprType(jsexpr->formatted_expr) != JSONBOID)
> | ~~~~~~^~~~~~~~~~~~~~~~
> parse_expr.c: In function ‘transformExprRecurse’:
> parse_expr.c:4212:21: note: ‘jsexpr’ was declared here
> 4212 | JsonExpr *jsexpr;
> | ^~~~~~
Thanks, fixed.
--
Thanks, Amit Langote
EDB: http://www.enterprisedb.com
Attachment | Content-Type | Size |
---|---|---|
v17-0001-Support-for-soft-error-handling-during-CoerceVia.patch | application/octet-stream | 14.5 KB |
v17-0002-Add-soft-error-handling-to-populate_record_field.patch | application/octet-stream | 41.3 KB |
v17-0004-JSON_TABLE.patch | application/octet-stream | 170.8 KB |
v17-0003-SQL-JSON-query-functions.patch | application/octet-stream | 203.3 KB |
v17-0005-Claim-SQL-standard-compliance-for-SQL-JSON-featu.patch | application/octet-stream | 2.3 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Peter Eisentraut | 2023-09-19 13:11:51 | Re: tablecmds.c/MergeAttributes() cleanup |
Previous Message | Anthony Roberts | 2023-09-19 12:35:17 | Re: [PATCH] Add native windows on arm64 support |