From: | Nikita Glukhov <n(dot)gluhov(at)postgrespro(dot)ru> |
---|---|
To: | Oleg Bartunov <obartunov(at)postgrespro(dot)ru>, Alexander Korotkov <a(dot)korotkov(at)postgrespro(dot)ru> |
Cc: | Andres Freund <andres(at)anarazel(dot)de>, Michael Paquier <michael(at)paquier(dot)xyz>, Simon Riggs <simon(at)2ndquadrant(dot)com>, PostgreSQL mailing lists <pgsql-hackers(at)postgresql(dot)org>, Andrew Dunstan <andrew(dot)dunstan(at)2ndquadrant(dot)com>, Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com> |
Subject: | Re: SQL/JSON: functions |
Date: | 2018-03-15 17:04:07 |
Message-ID: | 6862ba8f-70bf-6dd8-5651-5d9050c8f4de@postgrespro.ru |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Attached 13th version of the patches:
* Subtransactions in PG_TRY/CATCH in ExecEvalJsonExpr() were made unconditional,
regardless of the volatility of expressions.
* PG_TRY/CATCH in ExecEvalExprPassingCaseValue() was removed along with the
entire function.
On 15.03.2018 11:08, Oleg Bartunov wrote:
> On 14 Mar 2018 17:11, "Alexander Korotkov" <a(dot)korotkov(at)postgrespro(dot)ru
> <mailto:a(dot)korotkov(at)postgrespro(dot)ru>> wrote:
>
> On Wed, Mar 14, 2018 at 2:10 AM, Andres Freund <andres(at)anarazel(dot)de
> <mailto:andres(at)anarazel(dot)de>> wrote:
>
> On 2018-03-14 07:54:35 +0900, Michael Paquier wrote:
> > On Tue, Mar 13, 2018 at 04:08:01PM +0300, Oleg Bartunov wrote:
> > > The docs are here
> > >
> https://github.com/obartunov/sqljsondoc/blob/master/README.jsonpath.md
> <https://github.com/obartunov/sqljsondoc/blob/master/README.jsonpath.md>
> > >
> > > It's not easy to write docs for SQL/JSON in xml, so I
> decided to write in more
> > > friendly way. We'll have time to convert it to postgres
> format.
> >
> > If you aim at getting a feature committed first without its
> > documentation, and getting the docs written after the
> feature freeze
> > using a dedicated open item or such, this is much acceptable
> in my
> > opinion and the CF is running short in time.
>
> Given that this patch still uses PG_TRY/CATCH around as wide
> paths of
> code as a whole ExecEvalExpr() invocation,
>
> I agree that we should either use PG_TRY/CATCH over some small and
> safe
> codepaths or surround PG_TRY/CATCH with subtransactions.
> PG_TRY/CATCH over
> ExecEvalExpr() looks really unacceptable.
>
> basically has gotten no
> review, I don't see this going anywhere for v11.
>
>
> I wouldn't be co categorical at this point. Patchset is there for
> about year.
> Some parts of code received more of review while some parts
> receives less.
> We can surround all dangerous PG_TRY/CATCH pairs with subtransactions,
> tolerate performance penalty and leave further optimizations for
> future releases.
>
>
> Agree it's not difficult.
>
> In worst case, we can remove codepaths which use PG_TRY/CATCH and
> leave only ERROR ON ERROR behavior of SQL/JSON.
>
>
> No-no, json user will be really upset on this. Our goal is to be the
> first relational database with strong standard compliance.
--
Nikita Glukhov
Postgres Professional: http://www.postgrespro.com
The Russian Postgres Company
Attachment | Content-Type | Size |
---|---|---|
0010-add-invisible-coercion-form-v13.patch | text/x-patch | 6.7 KB |
0011-add-function-formats-v13.patch | text/x-patch | 10.1 KB |
0012-sqljson-v13.patch | text/x-patch | 294.0 KB |
0013-sqljson-json-v13.patch | text/x-patch | 55.8 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Nikita Glukhov | 2018-03-15 17:05:29 | Re: SQL/JSON: JSON_TABLE |
Previous Message | Tom Lane | 2018-03-15 16:42:54 | Re: JIT compiling with LLVM v11 |