Re: [BUGS] BUG #10728: json_to_recordset with nested json objects NULLs columns

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Andrew Dunstan <andrew(at)dunslane(dot)net>
Cc: Michael Paquier <michael(dot)paquier(at)gmail(dot)com>, matti(dot)hameister(at)technologygroup(dot)de, pgsql-bugs(at)postgresql(dot)org, pgsql-hackers(at)postgresql(dot)org
Subject: Re: [BUGS] BUG #10728: json_to_recordset with nested json objects NULLs columns
Date: 2014-06-23 23:34:08
Message-ID: 17766.1403566448@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs pgsql-hackers

Andrew Dunstan <andrew(at)dunslane(dot)net> writes:
> On 06/23/2014 11:43 AM, Tom Lane wrote:
>> However, it seems to me that these functions (json[b]_to_record[set]) are
>> handling the nested-json-objects case in a fairly brain-dead fashion to
>> start with. I would like to propose that we should think about getting
>> rid of the use_json_as_text flag arguments altogether. What purpose do
>> they serve? If we're going to the trouble of parsing the nested JSON
>> objects anyway, why don't we just reconstruct from that data?

> Looks like we have some problems in this whole area, not just the new
> function, so we need to fix 9.3 also :-(

> IIRC, originally, the intention was to disallow nested json objects, but
> the use_json_as_text was put in as a possibly less drastic possibility.
> If we get rid of it our only recourse is to error out if we encounter
> nested json. I was probably remiss in not considering the likelihood of
> a json target field.

> I currently don't have lots of time to devote to this, sadly, but
> Michael's patch looks like a good minimal fix.

I can spend some time on it over the next couple of days. I take it you
don't have a problem with the concept of doing recursive processing,
as long as it doesn't add much complication?

I'm not following your comment about 9.3. The json[b]_to_record[set]
functions are new in 9.4, which is what makes me feel it's not too
late to redefine their behavior. But changing behavior of stuff that
was in 9.3 seems a lot more debatable.

regards, tom lane

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Andrew Dunstan 2014-06-24 00:34:08 Re: [HACKERS] BUG #10728: json_to_recordset with nested json objects NULLs columns
Previous Message Steven Siebert 2014-06-23 20:42:24 Re: BUG #10680: LDAP bind password leaks to log on failed authentication

Browse pgsql-hackers by date

  From Date Subject
Next Message Andrew Dunstan 2014-06-24 00:34:08 Re: [HACKERS] BUG #10728: json_to_recordset with nested json objects NULLs columns
Previous Message Tom Lane 2014-06-23 23:19:01 Re: autovacuum scheduling starvation and frenzy