Re: Domains and arrays and composites, oh my
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Andrew Dunstan <andrew.dunstan@2ndquadrant.com>
Cc: pgsql-hackers@postgresql.org
Date: 2017-10-24T20:19:17Z
Lists: pgsql-hackers
Attachments
- domains-over-composites-3.patch (text/x-diff) patch
I wrote:
> Anyway, PFA an updated patch that also fixes some conflicts with the
> already-committed arrays-of-domains patch.
I realized that the pending patch for jsonb_build_object doesn't
actually have any conflict with what I needed to touch here, so
I went ahead and fixed the JSON functions that needed fixing,
along with hstore's populate_record. I ended up rewriting the
argument-metadata-collection portions of populate_record_worker
and populate_recordset_worker rather heavily, because I didn't
like them at all: aside from not working for domains over composite,
they were pretty inefficient (redoing a lot of work on each call
for no good reason) and they were randomly different from each
other, resulting in json{b}_populate_recordset rejecting some cases
that worked in json{b}_populate_record.
I've also updated the documentation.
I think that this patch version is done so far as the core code
and contrib are concerned. The PLs need varying amounts of work,
but as I said earlier, I think it would be better to tackle those
in separate patches instead of continuing to enlarge the footprint
of the core patch. So, barring objection, I'd like to go ahead
and commit this.
regards, tom lane
Commits
-
Support domains over composite types in PL/Perl.
- 60651e4cddbb 11.0 landed
-
Support domains over composite types in PL/Tcl.
- 820c0305f645 11.0 landed
-
Support domains over composite types.
- 37a795a60b4f 11.0 landed
-
Fix multiple assignments to a column of a domain type.
- b1cb32fb62c9 10.0 landed
- a8358559e788 9.4.13 landed
- 56076b88dae0 9.5.8 landed
- 55204850a9de 9.2.22 landed
- 521fede166d6 9.3.18 landed
- 123368061188 9.6.4 landed