Re: SQL/JSON: functions - Mailing list pgsql-hackers

From Pavel Stehule
Subject Re: SQL/JSON: functions
Date
Msg-id CAFj8pRBpkMC6+iSVA_k_ByAjeA2PEgixAsSiuAWy+uYp67ucbA@mail.gmail.com
Whole thread Raw
In response to Re: SQL/JSON: functions  (Nikita Glukhov <n.gluhov@postgrespro.ru>)
Responses Re: SQL/JSON: functions
List pgsql-hackers
Hi

čt 14. 11. 2019 v 17:46 odesílatel Nikita Glukhov <n.gluhov@postgrespro.ru> napsal:
Attached 40th version of the patches.


I have added some documentation which has been simply copied from [1].

Also, I have split patches more correctly, and extracted patch #2 with common
SQL/JSON clauses, that are used by both constructors and query functions.
Patches #3 and #4 are necessary only for constructors (patch #5).
Patches #5 and #6 are almost independent on patch #1, which is needed only for
query functions.

So, patches #5, #6, #7 are independent now, but the code changes in them are 
still conflicting.  I can rebase #6 and #7 on top of #2, if it is necessary 
for separate review/commit.


[1] https://www.postgresql.org/message-id/732208d3-56c3-25a4-8f08-3be1d54ad51b%40postgrespro.ru
I tested cumulative patch - sent in json_table patch.

I almost satisfied by quality of this patch. There is very good conformance with standard and with Oracle. Unfortunately MySQL in this part of JSON support is not compatible.

I found one issue, when I tested some examples from Oracle.

SELECT JSON_VALUE('{a:100}', '$.a' RETURNING int) AS value;

then the result was null.

But it is wrong, because it should to raise a exception, because this json is broken on Postgres (Postgres requires quoted attribute names)

json_query has same problem

postgres=# SELECT JSON_QUERY('{a:100, b:200, c:300}', '$') AS value;
┌───────┐
│ value │
╞═══════╡
│ ∅     │
└───────┘
(1 row)


It should to check if input is correct json

All others was good.

I'll mark this patch as waiting for author

Regards

Pavel

 
-- 
Nikita Glukhov
Postgres Professional: http://www.postgrespro.com
The Russian Postgres Company

pgsql-hackers by date:

Previous
From: Kyotaro Horiguchi
Date:
Subject: Re: FETCH FIRST clause PERCENT option
Next
From: Paul Guo
Date:
Subject: Re: Batch insert in CTAS/MatView code