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

From Andrew Dunstan
Subject Re: SQL/JSON: functions
Date
Msg-id edd10ba6-8600-075f-f035-e11f8de7ab30@dunslane.net
Whole thread Raw
In response to Re: SQL/JSON: functions  (Andrew Dunstan <andrew@dunslane.net>)
Responses Re: SQL/JSON: functions  (Andrew Dunstan <andrew@dunslane.net>)
List pgsql-hackers
On 3/26/21 4:22 PM, Andrew Dunstan wrote:
> On 3/8/21 1:55 PM, Ibrar Ahmed wrote:
>>
>> On Sat, Jan 23, 2021 at 3:37 PM Erik Rijkers <er@xs4all.nl
>> <mailto:er@xs4all.nl>> wrote:
>>
>>     On 2021-01-20 03:49, Nikita Glukhov wrote:
>>
>>     > [0001-Add-common-SQL-JSON-clauses-v52.patch.gz]
>>     > [0002-SQL-JSON-constructors-v52.patch.gz]
>>     > [0003-IS-JSON-predicate-v52.patch.gz]
>>     > [0004-SQL-JSON-query-functions-v52.patch.gz]
>>     > [0005-SQL-JSON-functions-for-json-type-v52.patch.gz]
>>     > [0006-GUC-sql_json-v52.patch.gz]
>>
>>     Hi,
>>
>>     I read through the file func.sgml (only that file) and put the
>>     errors/peculiarities in the attached diff.  (Small stuff; typos
>>     really)
>>
>>
>>     Your patch includes a CREATE TABLE my_films + INSERT, to run the
>>     examples against.  I think this is a great idea and we should do
>>     it more
>>     often.
>>
>>     But, the table has a text-column to contain the subsequently inserted
>>     json values. The insert runs fine but it turns out that some later
>>     examples queries only run against a jsonb column.  So I propose to
>>     change:
>>        CREATE TABLE my_films (js text);
>>     to:
>>        CREATE TABLE my_films (js jsonb);
>>
>>     This change is not yet included in the attached file.  An alternative
>>     would be to cast the text-column in the example queries as js::jsonb
>>
>>
>>     I also noticed that some errors were different in the sgml file
>>     than 'in
>>     the event':
>>
>>
>>         SELECT JSON_QUERY(js, '$.favorites[*].kind' ERROR ON ERROR) FROM
>>     my_films_jsonb;
>>         (table 'my_films_jsonb' is the same as your 'my_films', but
>>     with js
>>     as a jsonb column)
>>
>>     manual says: "ERROR: more than one SQL/JSON item"
>>       in reality: "ERROR: JSON path expression in JSON_QUERY should
>>     return
>>     singleton item without wrapper"
>>              and:   "HINT: use WITH WRAPPER clause to wrap SQL/JSON item
>>     sequence into array"
>>
>>
>>     Thanks,
>>
>>     Erik Rijkers
>>
>>     >
>>     > --
>>     > Nikita Glukhov
>>     > Postgres Professional: http://www.postgrespro.com
>>     <http://www.postgrespro.com>
>>     > The Russian Postgres Company
>>
>>
>> The patch (func.sgml.20210123.diff) does not apply successfully.
>>
>> http://cfbot.cputube.org/patch_32_2901.log
>> <http://cfbot.cputube.org/patch_32_2901.log>
>>
>> ----
>> === Applying patches on top of PostgreSQL commit ID 0ce4cd04da558178b0186057b721c50a00b7a945 ===
>> === applying patch ./func.sgml.20210123.diff
>> patching file doc/src/sgml/func.sgml
>> Hunk #1 FAILED at 16968.
>> Hunk #2 FAILED at 17034.
>> ...
>> Hunk #19 FAILED at 18743.
>> 19 out of 19 hunks FAILED -- saving rejects to file doc/src/sgml/func.sgml.rej
>> ----
>>
>> Can we get a rebase? 
>>
>> I am marking the patch "Waiting on Author".
>
>
>
> I've rebased this, and applied some of Erik's changes.
>
>
> I'll set it back to 'Needs Review' if the cfbot is happy.


It's not. There are errors  when building with llvm. I'll investigate.


cheers


andrew


--
Andrew Dunstan
EDB: https://www.enterprisedb.com




pgsql-hackers by date:

Previous
From: Erik Rijkers
Date:
Subject: Re: SQL/JSON: JSON_TABLE
Next
From: Andrew Dunstan
Date:
Subject: Re: SQL/JSON: JSON_TABLE