Re: SQL/JSON: functions
Nikita Glukhov <n.gluhov@postgrespro.ru>
Attachments
- 0010-add-invisible-coercion-form-v13.patch (text/x-patch) patch v13-0010
- 0011-add-function-formats-v13.patch (text/x-patch) patch v13-0011
- 0012-sqljson-v13.patch (text/x-patch) patch v13-0012
- 0013-sqljson-json-v13.patch (text/x-patch) patch v13-0013
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.korotkov@postgrespro.ru > <mailto:a.korotkov@postgrespro.ru>> wrote: > > On Wed, Mar 14, 2018 at 2:10 AM, Andres Freund <andres@anarazel.de > <mailto:andres@anarazel.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
Commits
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
JSON_TABLE: Add support for NESTED paths and columns
- bb766cde63b4 17.0 landed
-
Add basic JSON_TABLE() functionality
- de3600452b61 17.0 landed
-
Add SQL/JSON query functions
- 6185c9737cf4 17.0 landed
-
Add soft error handling to some expression nodes
- aaaf9449ec6b 17.0 landed
-
Adjust populate_record_field() to handle errors softly
- 1edb3b491bee 17.0 landed
-
Refactor code used by jsonpath executor to fetch variables
- faa2b953ba3b 17.0 landed
-
Add more SQL/JSON constructor functions
- 03734a7fed7d 17.0 landed
-
SQL/JSON: support the IS JSON predicate
- 6ee30209a6f1 16.0 landed
-
SQL/JSON: add standard JSON constructor functions
- 7081ac46ace8 16.0 landed
-
Improve readability of SQL/JSON documentation.
- b46bcf7a4b6f 15.0 landed
-
Documentation for SQL/JSON features
- a6baa4baddd5 15.0 landed
-
RETURNING clause for JSON() and JSON_SCALAR()
- 49082c2cc3d8 15.0 landed
-
SQL JSON functions
- 606948b058dc 15.0 landed
-
SQL/JSON query functions
- 1a36bc9dba8e 15.0 landed
-
IS JSON predicate
- 33a377608fc2 15.0 landed
-
SQL/JSON constructors
- f4fb45d15c59 15.0 landed
-
Common SQL/JSON clauses
- f79b803dcc98 15.0 landed
- 865fe4d5df56 15.0 landed
-
Doc: remove obsolete entries in table of BRIN strategy numbers.
- 0ce4cd04da55 14.0 cited
-
Doc: standardize markup a bit more.
- 47046763c3ed 13.0 cited
-
Make pg_regress.c unset PGDATABASE during make installcheck.
- 5ee96b3e2221 13.0 cited
-
Fix handling of GENERATED columns in CREATE TABLE LIKE INCLUDING DEFAULTS.
- b81a9c2fc525 13.0 cited