Re: boolean operator on interval producing strange results - Mailing list pgsql-general

From Adam Rich
Subject Re: boolean operator on interval producing strange results
Date
Msg-id 05ec01c754fd$f67350c0$6400a8c0@dualcore
Whole thread Raw
In response to Re: boolean operator on interval producing strange results  ("Merlin Moncure" <mmoncure@gmail.com>)
List pgsql-general
All of these statements produce 'f' for me as well, via 8.2.1 on RHEL 4.

select ((now() - '1 day'::interval)::timestamp - now()) < 0;
select ((now() - '1 day'::interval)::timestamptz - now()) < 0;
select ('-1 days'::interval)  < 0;

But all of these return 't':

select ((now() - '1 day'::interval)::timestamp - now()) < '0'::interval;
select ((now() - '1 day'::interval)::timestamptz - now()) <
'0'::interval;
select ('-1 days'::interval)  < '0'::interval;




-----Original Message-----
From: pgsql-general-owner@postgresql.org
[mailto:pgsql-general-owner@postgresql.org] On Behalf Of Merlin Moncure
Sent: Tuesday, February 20, 2007 8:30 AM
To: Tom Lane
Cc: postgres general
Subject: Re: [GENERAL] boolean operator on interval producing strange
results


On 2/19/07, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> "Merlin Moncure" <mmoncure@gmail.com> writes:
> > #  select ((now() - '1 day'::interval)::timestamp - now()) < 0;
> >  ?column?
> > ----------
> >  f  <-- looks busted to me
> > (1 row)
>
> If you'd casted to timestamptz then I'd agree this is busted.
> As-is, it might have something to do with your timezone setting,
> which you didn't mention?

show timezone reports us/eastern in both cases.  also, i don't really
see how this matters, since we are comparing '-1 days'::interval with
0 in both cases. in fact:

# show timezone;
  TimeZone
------------
 US/Eastern
(1 row)

#  select ('-1 days'::interval)  < 0;
 ?column?
----------
 f
(1 row)

as it happens, after months and months of faithful service, this
machine decided to dump core last night.  so, we are scheduling some
downtime + yum update. (my previous mail was wrong, production was the
non-updated box).  this is the only environmental difference I can
think of.  At the very least I can report back if this fixes the
problem.

merlin

---------------------------(end of broadcast)---------------------------
TIP 4: Have you searched our list archives?

               http://archives.postgresql.org/


pgsql-general by date:

Previous
From: "Merlin Moncure"
Date:
Subject: Re: boolean operator on interval producing strange results
Next
From: Tom Lane
Date:
Subject: Re: boolean operator on interval producing strange results