Dear Tom, dear Kevin

In fact "show integer_datetimes;" returns "off". As such there is a perfect
reason for this rounding. I assumed wrongly this being a bug. Sorry :-)

I understand as well your arguments on why not to use such a value for
infinity. The reason why I used it was because I ported this data from a
mainframe DB2 database where this value by tradition represented a high
value and NULL values not being used for compatibility in regards to the
mapped data type in PL1 and pure text-file processing of the same data. In
these programs the length of the year part of a timestamp is limited to 4
digits. This is where I noted the rounding which had occurred as a result of
my data imports into Postgresql.

Thanks again for your information and sorry for the disturbance :-)
Regards,
Matthias

On Fri, Jul 31, 2009 at 11:00 PM, Kevin Grittner <
kevin.gritt...@wicourts.gov> wrote:

> "Matthias" <matthias.ce...@gmail.com> wrote:
>
> > I noticed an unusual (and from my point of view inconsistent)
> > rounding of a timestamp:
>
> What do you get when you run?:
>
> show integer_datetimes;
>
> If it is off, which is probably the default for your distribution
> under 8.3.X, timestamps are floating point (approximate) values which
> get less precise as you move away from the base timestamp of
> '2000-01-01 00:00'.
>
> The default under 8.4 is to use integer timestamps, which have a
> microsecond precision across the range they support.  (That range is
> not as broad as the floating point format, but plenty large for most
> practical uses.)
>
> You can configure PostgreSQL to use integer timestamps in 8.3 if you
> build from source, but you will need to convert your database.
>
> -Kevin
>

Reply via email to