Re: unnesting multirange data types - Mailing list pgsql-hackers

From Alexander Korotkov
Subject Re: unnesting multirange data types
Date
Msg-id CAPpHfds+6cKbz=xSnAQZz=D=3VsH2pqSOO+m1gQ+abbjYiV5Aw@mail.gmail.com
Whole thread Raw
In response to Re: unnesting multirange data types  (Alvaro Herrera <alvherre@alvh.no-ip.org>)
List pgsql-hackers
On Tue, Jun 15, 2021 at 8:28 PM Alvaro Herrera <alvherre@alvh.no-ip.org> wrote:
> On 2021-Jun-15, Tom Lane wrote:
>
> > It looks to me like the proximate problem is that you should
> > have taught pg_dump to skip these new auto-generated functions.
> > However, I fail to see why we need auto-generated functions
> > for this at all.  Couldn't we have done it with one polymorphic
> > function?
>
> I think such a function would need to take anycompatiblerangearray,
> which is not something we currently have.

Yes, I've started with polymorphic function
multirange_to_array(anymultirange) returning anyarray.  But then I got
that for int4multirange return type Is integer[] instead of
int4range[] :)

# select pg_typeof(multirange_to_array('{[1,2),[5,6)}'::int4multirange));
 pg_typeof
-----------
 integer[]
(1 row)

So, a new anyrangearray polymorphic type is required for this
function.  Not sure if it worth it to introduce a new polymorphic
function for this use case.

------
Regards,
Alexander Korotkov



pgsql-hackers by date:

Previous
From: Ranier Vilela
Date:
Subject: Re: Signed vs. Unsigned (some)
Next
From: Alexander Korotkov
Date:
Subject: Re: unnesting multirange data types