From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | konstantin knizhnik <k(dot)knizhnik(at)postgrespro(dot)ru> |
Cc: | Thom Brown <thom(at)linux(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: array of domain types |
Date: | 2016-06-02 14:22:14 |
Message-ID: | 9534.1464877334@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
konstantin knizhnik <k(dot)knizhnik(at)postgrespro(dot)ru> writes:
> Attached please find patch for DefineDomain function.
You didn't attach the patch, but in any case, I would be astonished
if there is no work required beyond creating the matching array type.
The reverse case (domains over arrays) has half a dozen special cases
required to make it work smoothly. Probably the considerations on this
side are totally different, but it's hard to believe there aren't any.
One case that seems likely to be pretty squishy is an array of a domain
over an array type. One would wish to be able to do foo[2][4] to
extract an element of the contained array. That won't work as-is
because the notation will be taken as a multi-dimensional subscript,
but I would expect that (foo[2])[4] should work. Does it? Does
ruleutils.c always include the necessary parens when reverse-listing
such a construct? Is it possible to assign to such a sub-element,
and if so, do the domain constraints get checked properly?
Domain over an array that is of a domain type might be another fun
case.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Greg Stark | 2016-06-02 14:31:15 | epoll_wait returning EFAULT on Linux 3.2.78 |
Previous Message | Robert Haas | 2016-06-02 14:18:09 | Re: pg9.6 segfault using simple query (related to use fk for join estimates) |