You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: plugin/trino-hive/src/main/java/io/trino/plugin/hive/s3select/S3SelectPushdown.java
+3-4
Original file line number
Diff line number
Diff line change
@@ -61,10 +61,9 @@ public final class S3SelectPushdown
61
61
/*
62
62
* Double and Real Types lose precision. Thus, they are not pushed down to S3. Please use Decimal Type if push down is desired.
63
63
*
64
-
* Pushing down timestamp to s3select is problematic due to following reasons:
65
-
* 1) Presto bug: TIMESTAMP behaviour does not match sql standard (https://github.com/trinodb/trino/issues/37)
66
-
* 2) Presto uses the timezone from client to convert the timestamp if no timezone is provided, however, s3select is a different service and this could lead to unexpected results.
67
-
* 3) ION SQL compare timestamps using precision, timestamps with different precisions are not equal even actually they present the same instant of time. This could lead to unexpected results.
64
+
* When S3 select support was added, Trino did not properly implement TIMESTAMP semantic. This was fixed in 2020, and TIMESTAMPS may be supportable now
65
+
* (https://github.com/trinodb/trino/issues/10962). Pushing down timestamps to s3select maybe still be problematic due to ION SQL comparing timestamps
66
+
* using precision. This means timestamps with different precisions are not equal even actually they present the same instant of time.
@@ -577,7 +582,6 @@ public void testAssignUniqueId()
577
582
@Test
578
583
publicvoidtestAtTimeZone()
579
584
{
580
-
// TODO the expected values here are non-sensical due to https://github.com/trinodb/trino/issues/37
581
585
assertEquals(computeScalar("SELECT TIMESTAMP '2012-10-31 01:00' AT TIME ZONE INTERVAL '07:09' hour to minute"), zonedDateTime("2012-10-30 18:09:00.000 +07:09"));
582
586
assertEquals(computeScalar("SELECT TIMESTAMP '2012-10-31 01:00' AT TIME ZONE 'Asia/Oral'"), zonedDateTime("2012-10-30 16:00:00.000 Asia/Oral"));
583
587
assertEquals(computeScalar("SELECT MIN(x) AT TIME ZONE 'America/Chicago' FROM (VALUES TIMESTAMP '1970-01-01 00:01:00+00:00') t(x)"), zonedDateTime("1969-12-31 18:01:00.000 America/Chicago"));
0 commit comments