Search Postgresql Archives

Re: Binary encoding of TIMESTAMP WITH TIME ZONE

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2020-06-04 20:32:51 -0400, Tom Lane wrote:
> Joe Abbate <jma@xxxxxxxxxxxxxxxxx> writes:
> > However, when using the same query using the Rust adapter the transition 
> > to a new row started showing up after midgnight GMT.  I opened an issue 
> > on Github (https://github.com/sfackler/rust-postgres/issues/608 ) and 
> > the maintainer claimed the Rust adapter *had* to initialize timezone to 
> > UTC in order to properly convert "to and from time datatypes".  I 
> > pointed out that the timezone offset is available in psql and psycopg2, 
> > but then he replied the binary encoding of timestamptz does *not* 
> > include the timezone offset.
> 
> Indeed it does not, just as the on-disk format for it does not.  The
> representation is effectively always in UTC.  If you have some other
> timezone setting selected, timestamptz_out rotates to that zone for
> display purposes ... but the binary format doesn't.

However, the explanation still sounds off. I'm not familiar with Rust,
but I wouild expect the Rust time type to be based on Unix time_t or
some variant of it (maybe milliseconds as in Java, or nanoseconds or a
different epoch). That also doesn't include a timezone, so conversion
should be straightforward and not require any timezone to be involved.

        hp

-- 
   _  | Peter J. Holzer    | Story must make more sense than reality.
|_|_) |                    |
| |   | hjp@xxxxxx         |    -- Charles Stross, "Creative writing
__/   | http://www.hjp.at/ |       challenge!"

Attachment: signature.asc
Description: PGP signature


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]

  Powered by Linux