From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Jeff Davis <pgsql(at)j-davis(dot)com> |
Cc: | Robert Haas <robertmhaas(at)gmail(dot)com>, Greg Stark <gsstark(at)mit(dot)edu>, tomas(at)tuxteam(dot)de, Scott Bailey <artacus(at)comcast(dot)net>, hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Range types |
Date: | 2009-12-15 18:15:18 |
Message-ID: | 21446.1260900918@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Jeff Davis <pgsql(at)j-davis(dot)com> writes:
> If I'm correct, continuous ranges always need two extra bits of storage
> for the exclusivity. But for timestamps, that means 16 bytes (2 x 8-byte
> timestamp) turns into 17 bytes, which is really more like 20 or 24 bytes
> with alignment.
You probably need some flag bits anyway, so flailing frantically to
avoid that doesn't seem like a profitable use of time.
One pretty obvious use for a flag bit is open-ended ranges, ie
range(something, infinity)
You could only do this without a flag bit if the underlying datatype
has an "infinity" value, which not all do.
I'm also wondering what null range boundaries would do. Maybe that's
the same as the infinity case, or maybe not.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2009-12-15 18:25:38 | Re: Closing out CommitFest 2009-11 |
Previous Message | Robert Haas | 2009-12-15 18:14:55 | Re: Fast or immediate shutdown |