From: Leslie S Satenstein <lsatenstein@yahoo.com>
To: Robert Haas <robertmhaas@gmail.com>
To: Postgres documentation <pgsql-docs@postgresql.org>
Subject: Re: Some comments about Julian Dates and possible bug. Please provide feedback.
Date: Wed, 29 Dec 2010 09:38:36 -0800 (PST)
Message-ID: <489318.10800.qm@web110704.mail.gq1.yahoo.com> (raw)
In-Reply-To: <AANLkTi=2kVZCqEVH1vDFoqt0-vRZApnmg1MHy7Z6e4=U@mail.gmail.com>
Good morning Robert
I presume that you are the acting project manager, in the sense of vetting changes or commentary. The pdf guide has only one statement concerning julian dates. I feel that more is required.
Julian dates are used as follows.
Working days between two dates is (the difference of the day numbers * 5/7) , with minor adjustment for rounding and weekend start-end considerations.
Julian date conversion is used for this type of calculation. It would be nice to see more in the manual about Julian dates, such as tests if a day is a weekend day, or to determine the day of the week for a specific Gregorian calendar date and vice-versa.
Regarding the julian bug(let), I will raise it as a comment on the code buglist.
------------------
Regards
Leslie
Mr. Leslie Satenstein
mailto:lsatenstein@yahoo.com
mailto leslie.satenstein@itbms.biz / leslies@itbms.biz
www.itbms.biz
--- On Wed, 12/29/10, Robert Haas <robertmhaas@gmail.com> wrote:
> From: Robert Haas <robertmhaas@gmail.com>
> Subject: Re: [DOCS] Some comments about Julian Dates and possible bug. Please provide feedback.
> To: "Leslie S Satenstein" <lsatenstein@yahoo.com>
> Cc: "pgsql-docs" <pgsql-docs@postgresql.org>
> Date: Wednesday, December 29, 2010, 6:58 AM
> On Mon, Dec 27, 2010 at 9:23 PM,
> Leslie S Satenstein
> <lsatenstein@yahoo.com>
> wrote:
> > I found the Julian date code that is programmed in
> Postgres, to be accurate and fast except for one situation.
> But, I do have one or two questions. 1) Which calendar is
> being used?
> >
> > In the Gregorian Calendar, January 1, 0001 is lowest
> positive date.
> > The day before 1/1/0001, according to the Gregorian
> calendar is December 31,-0001 in which the year has a value
> of negative one --- there is no zero year in the Gregorian
> Calendar. (zero year is an error)
> >
> > I tested and found the algorithm in Postgres to have
> the day before January 1,0001 calculating as December
> 31,0000 even though the world calculates the day before
> January 1,0001 as December 31,-0001.
> >
> > 2) Is the algorithm in Postgres correct? I think
> not, as the calculations for the difference in days between
> January 1, 0001 and December 31,-0001 is not 367 days, but
> just the value 1.
> >
> > To convert the code to work with the Gregorian
> calendar takes two fixes to two sub-routines. Each fix is
> two lines of C code.
> >
> > I have tested the PG Date C language routines
> with/without my fix, starting with the year around -4713 to
> several centuries into the future. As long as both versions
> calculate Julian dates that are later than 1/1/0001, both
> the PG and my fixed versions respecting Gregorian algorithms
> produce identical results.
> >
> > 3) Does PG want to fully follow the Gregorian Calendar
> rule? If so,
> > 4) do they want my one patch with two fixes6
>
> This seems like it'd be more appropriate for pgsql-bugs or
> pgsql-hackers rather than here. I can't really figure
> out exactly
> what change you're proposing, so I'm not entirely sure
> whether it's
> right or wrong. Perhaps you could post your patch,
> and some examples.
>
> --
> Robert Haas
> EnterpriseDB: http://www.enterprisedb.com
> The Enterprise PostgreSQL Company
>
> --
> Sent via pgsql-docs mailing list (pgsql-docs@postgresql.org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-docs
>
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-docs@postgresql.org
Cc: lsatenstein@yahoo.com, robertmhaas@gmail.com
Subject: Re: Some comments about Julian Dates and possible bug. Please provide feedback.
In-Reply-To: <489318.10800.qm@web110704.mail.gq1.yahoo.com>
* 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