Re: Can't figure out how to use now() in default for tsrange column (PG 9.2) - Mailing list pgsql-general

From Alban Hertroys
Subject Re: Can't figure out how to use now() in default for tsrange column (PG 9.2)
Date
Msg-id 0DB28A00-2921-4CA2-B47C-65AD388ED8E1@gmail.com
Whole thread Raw
In response to Re: Can't figure out how to use now() in default for tsrange column (PG 9.2)  (Daniele Varrazzo <daniele.varrazzo@gmail.com>)
Responses Re: Can't figure out how to use now() in default for tsrange column (PG 9.2)
List pgsql-general
On 16 Jul 2012, at 17:57, Daniele Varrazzo wrote:

> On Mon, Jul 16, 2012 at 3:56 PM, Craig Ringer <ringerc@ringerc.id.au> wrote:
>> On 07/16/2012 07:41 PM, Alban Hertroys wrote:
>>>>>
>>>>> BTW, that second value looks a whole lot like a poorly thought out
>
>> Yup. The 'infinity' value doesn't play well with all database access APIs
>> and languages, though.
>
> It doesn't even play well with PostgreSQL's extract(). I reported it
> some times ago but as of 9.1.4 it has not been fixed.
>
> =# select extract(epoch from 'infinity'::timestamp);
> date_part
> -----------
>         0
>
> This makes 'infinity' a problematic choice in any application
> requiring a mapping between dates and reals, such as when using
> intervals in gist indexes.


Well yeah, obviously. I don't think many mathematicians have wrapped their brain around questions like what day of the
weekinfinity is and whether it's a working day or not. Perhaps Douglas Adams did, in which case it was probably a
Tuesday.
I'm just saying, most of the date-parts that extract can retrieve from a timestamp are meaningless with infinity. But,
theyare also be meaningless with a placeholder date like 31-12-2999. 

That said, if it were up to me to decide what the proper epoch value would be for infinity, I'd say NULL - it is
unknownas computers simply can't count far enough. It's probably only a matter of time until someone thinks of a
solutionfor that though. 

Alban Hertroys

--
If you can't see the forest for the trees,
cut the trees and you'll find there is no forest.


pgsql-general by date:

Previous
From: Pavel Stehule
Date:
Subject: Re: Create stored procedure from C#.net
Next
From: "David Johnston"
Date:
Subject: Re: Can't figure out how to use now() in default for tsrange column (PG 9.2)