On Tue, Dec 13, 2016 at 9:38 AM, Nikita Glukhov <n.glu...@postgrespro.ru> wrote: > It also fixes the following errors/inconsistencies caused by lost quoting of > string json values: > > [master]=# select * from json_to_record('{"js": "a"}') as rec(js json); > ERROR: invalid input syntax for type json > DETAIL: Token "a" is invalid. > CONTEXT: JSON data, line 1: a
The docs mention that this is based on a best effort now. It may be interesting to improve that. > [master]=# select * from json_to_record('{"js": "true"}') as rec(js json); > js > ------ > true > > [patched]=# select * from json_to_record('{"js": "a"}') as rec(js json); > js > ----- > "a" That's indeed valid JSON. > [patched]=# select * from json_to_record('{"js": "true"}') as rec(js json); > js > -------- > "true" And so is that. > The second patch adds assignment of correct ndims to array fields of RECORD > function result types. > Without this patch, attndims in tuple descriptors of RECORD types is always > 0 and the corresponding assertion fails in the next test: > > [patched]=# select json_to_record('{"a": [1, 2, 3]}') as rec(a int[]); > > > Should I submit these patches to commitfest? It seems to me that it would be a good idea to add them. -- Michael -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers