You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@calcite.apache.org by "Julian Hyde (JIRA)" <ji...@apache.org> on 2018/05/11 20:00:03 UTC
[jira] [Resolved] (CALCITE-2305) JDBC adapter generates invalid
casts on PostgreSQL, because PostgreSQL does not have TINYINT and DOUBLE
types
[ https://issues.apache.org/jira/browse/CALCITE-2305?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Julian Hyde resolved CALCITE-2305.
----------------------------------
Resolution: Fixed
Fix Version/s: 1.17.0
Fixed in [4433b102|http://git-wip-us.apache.org/repos/asf/calcite/commit/4433b102]
> JDBC adapter generates invalid casts on PostgreSQL, because PostgreSQL does not have TINYINT and DOUBLE types
> -------------------------------------------------------------------------------------------------------------
>
> Key: CALCITE-2305
> URL: https://issues.apache.org/jira/browse/CALCITE-2305
> Project: Calcite
> Issue Type: Bug
> Components: jdbc-adapter
> Affects Versions: 1.16.0
> Reporter: Chris Baynes
> Assignee: Julian Hyde
> Priority: Major
> Fix For: 1.17.0
>
>
> The types `TINYINT` and `DOUBLE` do not exist in Postgres, so attempting to cast to them throws a runtime exception, e.g.
>
> {code:java}
> // query
> select CAST("store_id" as TINYINT) from "foodmart"."expense_fact"
> // exception
> java.lang.RuntimeException: exception while executing [select CAST("store_id" as TINYINT) from "foodmart"."expense_fact"]
> at org.apache.calcite.test.JdbcAdapterTest.testCast(JdbcAdapterTest.java:478)
> Caused by: java.lang.RuntimeException: With materializationsEnabled=false, limit=0
> at org.apache.calcite.test.JdbcAdapterTest.testCast(JdbcAdapterTest.java:478)
> Caused by: java.sql.SQLException:
> Error while executing SQL "select CAST("store_id" as TINYINT) from "foodmart"."expense_fact"": while executing SQL [SELECT CAST("store_id" AS TINYINT)
> FROM "public"."expense_fact"]
> at org.apache.calcite.test.JdbcAdapterTest.testCast(JdbcAdapterTest.java:478)
> Caused by: java.lang.RuntimeException:
> while executing SQL [SELECT CAST("store_id" AS TINYINT)
> FROM "public"."expense_fact"]
> at org.apache.calcite.test.JdbcAdapterTest.testCast(JdbcAdapterTest.java:478)
> Caused by: org.postgresql.util.PSQLException:
> ERROR: type "tinyint" does not exist
> Position: 27
> at org.apache.calcite.test.JdbcAdapterTest.testCast(JdbcAdapterTest.java:478)
> {code}
>
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)