Re: [HACKERS] SQL/JSON in PostgreSQL - Mailing list pgsql-hackers
From | Nikita Glukhov |
---|---|
Subject | Re: [HACKERS] SQL/JSON in PostgreSQL |
Date | |
Msg-id | 821fab15-e5fb-fb75-1cfb-b46f65313a6d@postgrespro.ru Whole thread Raw |
In response to | Re: [HACKERS] SQL/JSON in PostgreSQL (Pavel Stehule <pavel.stehule@gmail.com>) |
Responses |
Re: [HACKERS] SQL/JSON in PostgreSQL
|
List | pgsql-hackers |
On 29.09.2017 12:59, Pavel Stehule wrote:
Yes, this is still the latest version. Now I am working only on unfinished WIPHi2017-09-16 1:31 GMT+02:00 Nikita Glukhov <n.gluhov@postgrespro.ru>:On 15.09.2017 22:36, Oleg Bartunov wrote:On Fri, Sep 15, 2017 at 7:31 PM, Robert Haas <robertmhaas@gmail.com> wrote:On Fri, Sep 15, 2017 at 10:10 AM, Daniel Gustafsson <daniel@yesql.se> wrote:We are supporting v10 branch in our github repositoryCan we expect a rebased version of this patch for this commitfest? Since it’sAgain, given that this needs a "major" rebase and hasn't been updated
a rather large feature it would be good to get it in as early as we can in the
process.
in a month, and given that the CF is already half over, this should
just be bumped to the next CF. We're supposed to be trying to review
things that were ready to go by the start of the CF, not the end.
https://github.com/postgrespro/sqljson/tree/sqljson_v10
Since the first post we made a lot of changes, mostly because of
better understanding the standard and availability of technical report
(http://standards.iso.org/ittf/PubliclyAvailableStandards/c0 67367_ISO_IEC_TR_19075-6_2017. zip).
Most important are:
1.We abandoned FORMAT support, which could confuse our users, since we
have data types json[b].
2. We use XMLTABLE infrastructure, extended for JSON_TABLE support.
3. Reorganize commits, so we could split one big patch by several
smaller patches, which could be reviewed independently.
4. The biggest problem is documentation, we are working on it.
Nikita will submit patches soon.
Attached archive with 9 patches rebased onto latest master.
0001-jsonpath-v02.patch:
- jsonpath type
- jsonpath execution on jsonb type
- jsonpath operators for jsonb type
- GIN support for jsonpath operators
0002-jsonpath-json-v02.patch:
- jsonb-like iterators for json type
- jsonpath execution on json type
- jsonpath operators for json type
0003-jsonpath-extensions-v02.patch:
0004-jsonpath-extensions-tests-for-json-v02.patch:
- some useful standard extensions with tests
0005-sqljson-v02.patch:
- SQL/JSON constructors (JSON_OBJECT[AGG], JSON_ARRAY[AGG])
- SQL/JSON query functions (JSON_VALUE, JSON_QUERY, JSON_EXISTS)
- IS JSON predicate
0006-sqljson-json-v02.patch:
- SQL/JSON support for json type and tests
0007-json_table-v02.patch:
- JSON_TABLE using XMLTABLE infrastructure
0008-json_table-json-v02.patch:
- JSON_TABLE support for json type
0009-wip-extensions-v02.patch:
- FORMAT JSONB
- jsonb to/from bytea casts
- jsonpath operators
- some unfinished jsonpath extensions
Originally, JSON path was implemented only for jsonb type, and I decided to
add jsonb-like iterators for json type for json support implementation with
minimal changes in JSON path code. This solution (see jsonpath_json.c from
patch 0002) looks a little dubious to me, so I separated json support into
independent patches.
The last WIP patch 0009 is unfinished and contains a lot of FIXMEs. But
the ability to use arbitrary Postgres operators in JSON path with explicitly
specified types is rather interesting, and I think it should be shown now
to get a some kind of pre-review.
We are supporting v11 and v10 branches in our github repository:
https://github.com/postgrespro/sqljson/tree/sqljson
https://github.com/postgrespro/sqljson/tree/sqljson_wip
https://github.com/postgrespro/sqljson/tree/sqljson_v10
https://github.com/postgrespro/sqljson/tree/sqljson_v10_wip
Attached patches can be produced simply by combining groups of consecutive
commits from these branches.I have some free time now. Is it last version?RegardsPavel
patch no. 9, but I think it should be reviewed the last.
pgsql-hackers by date: