From bfa5af25b259d7348c32e51f4ea08853a738bd8c Mon Sep 17 00:00:00 2001 From: chenjian2664 Date: Mon, 25 Mar 2024 17:10:50 +0800 Subject: [PATCH 1/2] Enable numeric aggregation pushdown test for Snowflake connector --- .../java/io/trino/plugin/snowflake/SnowflakeClient.java | 2 +- .../trino/plugin/snowflake/TestSnowflakeConnectorTest.java | 7 ------- 2 files changed, 1 insertion(+), 8 deletions(-) diff --git a/plugin/trino-snowflake/src/main/java/io/trino/plugin/snowflake/SnowflakeClient.java b/plugin/trino-snowflake/src/main/java/io/trino/plugin/snowflake/SnowflakeClient.java index fca53986736a..de898b4f36d4 100644 --- a/plugin/trino-snowflake/src/main/java/io/trino/plugin/snowflake/SnowflakeClient.java +++ b/plugin/trino-snowflake/src/main/java/io/trino/plugin/snowflake/SnowflakeClient.java @@ -269,7 +269,7 @@ public boolean supportsAggregationPushdown(ConnectorSession session, JdbcTableHa private static Optional toTypeHandle(DecimalType decimalType) { - return Optional.of(new JdbcTypeHandle(Types.NUMERIC, Optional.of("decimal"), Optional.of(decimalType.getPrecision()), Optional.of(decimalType.getScale()), Optional.empty(), Optional.empty())); + return Optional.of(new JdbcTypeHandle(Types.NUMERIC, Optional.of("NUMBER"), Optional.of(decimalType.getPrecision()), Optional.of(decimalType.getScale()), Optional.empty(), Optional.empty())); } @Override diff --git a/plugin/trino-snowflake/src/test/java/io/trino/plugin/snowflake/TestSnowflakeConnectorTest.java b/plugin/trino-snowflake/src/test/java/io/trino/plugin/snowflake/TestSnowflakeConnectorTest.java index 16e827958f35..9ff18a1771a9 100644 --- a/plugin/trino-snowflake/src/test/java/io/trino/plugin/snowflake/TestSnowflakeConnectorTest.java +++ b/plugin/trino-snowflake/src/test/java/io/trino/plugin/snowflake/TestSnowflakeConnectorTest.java @@ -222,13 +222,6 @@ public void testDistinctAggregationPushdown() abort("TODO"); } - @Test - @Override - public void testNumericAggregationPushdown() - { - abort("TODO"); - } - @Test @Override public void testInsertIntoNotNullColumn() From a1212e2fbefd892f49d013c7e3d1943b3d1f6326 Mon Sep 17 00:00:00 2001 From: Yuya Ebihara Date: Tue, 26 Mar 2024 08:05:09 +0900 Subject: [PATCH 2/2] Rename method in SnowflakeClient Also, put arguments on separate lines. --- .../io/trino/plugin/snowflake/SnowflakeClient.java | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/plugin/trino-snowflake/src/main/java/io/trino/plugin/snowflake/SnowflakeClient.java b/plugin/trino-snowflake/src/main/java/io/trino/plugin/snowflake/SnowflakeClient.java index de898b4f36d4..86c3400f3076 100644 --- a/plugin/trino-snowflake/src/main/java/io/trino/plugin/snowflake/SnowflakeClient.java +++ b/plugin/trino-snowflake/src/main/java/io/trino/plugin/snowflake/SnowflakeClient.java @@ -149,7 +149,7 @@ public SnowflakeClient( .add(new ImplementCountAll(bigintTypeHandle)) .add(new ImplementCount(bigintTypeHandle)) .add(new ImplementMinMax(false)) - .add(new ImplementSum(SnowflakeClient::toTypeHandle)) + .add(new ImplementSum(SnowflakeClient::decimalTypeHandle)) .add(new ImplementAvgFloatingPoint()) .add(new ImplementAvgDecimal()) .add(new ImplementAvgBigint()) @@ -267,9 +267,15 @@ public boolean supportsAggregationPushdown(ConnectorSession session, JdbcTableHa return preventTextualTypeAggregationPushdown(groupingSets); } - private static Optional toTypeHandle(DecimalType decimalType) + private static Optional decimalTypeHandle(DecimalType decimalType) { - return Optional.of(new JdbcTypeHandle(Types.NUMERIC, Optional.of("NUMBER"), Optional.of(decimalType.getPrecision()), Optional.of(decimalType.getScale()), Optional.empty(), Optional.empty())); + return Optional.of(new JdbcTypeHandle( + Types.NUMERIC, + Optional.of("NUMBER"), + Optional.of(decimalType.getPrecision()), + Optional.of(decimalType.getScale()), + Optional.empty(), + Optional.empty())); } @Override