Re: BUG #11883: Year 1500 not treated as leap year when it was a leap year - Mailing list pgsql-bugs

From Tom Lane
Subject Re: BUG #11883: Year 1500 not treated as leap year when it was a leap year
Date
Msg-id 15535.1415211201@sss.pgh.pa.us
Whole thread Raw
In response to Re: BUG #11883: Year 1500 not treated as leap year when it was a leap year  (Magnus Hagander <magnus@hagander.net>)
Responses Re: BUG #11883: Year 1500 not treated as leap year when it was a leap year  (Bruce Momjian <bruce@momjian.us>)
List pgsql-bugs
Magnus Hagander <magnus@hagander.net> writes:
> On Wed, Nov 5, 2014 at 7:02 PM, Bruce Momjian <bruce@momjian.us> wrote:
>> Because 1500 % 100 == 0, I think 1500 was not a leap year.

> I believe it was a leap year in the Julian calendar, maybe that's
> where the difference comes from?

Indeed.  We won't be changing our code though, because we document that
we follow Gregorian calendar rules even before that calendar was instituted
(ie, proleptic Gregorian calendar).  You could argue for doing that
differently, but then what are you going to do for dates before the Julian
calendar was instituted?  In any case, this behavior appears to be
required by the SQL standard, which repeatedly says that datetime values
are "constrained according to the Gregorian calendar".

            regards, tom lane

pgsql-bugs by date:

Previous
From: Tomas Vondra
Date:
Subject: Re: BUG #11883: Year 1500 not treated as leap year when it was a leap year
Next
From: nickbarnes01@gmail.com
Date:
Subject: BUG #11884: pg_dump / restore mangles IS DISTINCT FROM expressions