I have a table as such:
create table sample (
T timestamp default current_timestamp
);
My MemSQL server is running in EDT timezone, and my Java client is running in IST.
My Java program runs the SQL: insert into sample values();
After reading it back into a java.time.Instant
, the time that I get back is basically the exact same time but the timezone is set to IST (without actually converting the time into IST), which doesn’t make sense.
select T from sample
gives me:
2020-03-15 10:26:34 +0530
The time in EDT (UTC -4) currently is:
2020-03-15 10:26:34 -04:00 (“timestamp” part is the same as that of the previous result) and the time in IST (UTC +05:30) currently is
2020-03-15 20:06:34 +0530
But if I override the default and insert a timestamp using Java (Instant / OffsetDateTime), this problem doesn’t occur.
I’m using MemSQL 7.0.12 with MariaDB driver 2.5.4 (which is JDBC 4.2 compliant, so java.time works well).
This looks like a bug to me. Can someone confirm?