pg.ddx.io  pgsql-hackers@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Paul A Jungwirth <pj@illuminatedcomputing.com>
Cc: Alvaro Herrera <alvherre@2ndquadrant.com>
Cc: Pavel Stehule <pavel.stehule@gmail.com>
Cc: Jeff Davis <pgsql@j-davis.com>
Cc: Pgsql Hackers <pgsql-hackers@postgresql.org>
Subject: Re: range_agg
Date: Sat, 07 Mar 2020 16:20:58 -0500
Message-ID: <16397.1583616058@sss.pgh.pa.us> (raw)
In-Reply-To: <15764.1583615192@sss.pgh.pa.us>
References: <20200304022849.GA5402@alvherre.pgsql>
	<13800.1583612399@sss.pgh.pa.us>
	<15764.1583615192@sss.pgh.pa.us>

I wrote:
> Actually ... have you given any thought to just deciding that ranges and
> multiranges are the same type?  That is, any range can now potentially
> contain multiple segments?  That would eliminate a whole lot of the
> tedious infrastructure hacking involved in this patch, and let you focus
> on the actually-useful functionality.

Also, this would allow us to remove at least one ugly misfeature:

regression=# select '[1,2]'::int4range + '[3,10)'::int4range;
 ?column? 
----------
 [1,10)
(1 row)

regression=# select '[1,2]'::int4range + '[4,10)'::int4range;
ERROR:  result of range union would not be contiguous

If the result of range_union can be a multirange as easily as not,
we would no longer have to throw an error here.

			regards, tom lane





view thread (152+ messages)  latest in thread

Message-ID: <16397.1583616058@sss.pgh.pa.us>
Permalink:  ../16397.1583616058@sss.pgh.pa.us/
Also on:    postgresql.org/message-id/16397.1583616058@sss.pgh.pa.us

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-hackers@postgresql.org
  Cc: tgl@sss.pgh.pa.us, pj@illuminatedcomputing.com, alvherre@2ndquadrant.com, pavel.stehule@gmail.com, pgsql@j-davis.com
  Subject: Re: range_agg
  In-Reply-To: <16397.1583616058@sss.pgh.pa.us>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox