You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@calcite.apache.org by "Sergey Nuyanzin (Jira)" <ji...@apache.org> on 2021/05/10 00:58:00 UTC
[jira] [Created] (CALCITE-4600) ClassCastException for arrays with
date/time/timestamp elements
Sergey Nuyanzin created CALCITE-4600:
----------------------------------------
Summary: ClassCastException for arrays with date/time/timestamp elements
Key: CALCITE-4600
URL: https://issues.apache.org/jira/browse/CALCITE-4600
Project: Calcite
Issue Type: Bug
Components: avatica
Affects Versions: avatica-1.17.0
Reporter: Sergey Nuyanzin
cases to reproduce
{code:sql}
select array[current_date];
select array[cast('1900-1-1' as date)];
select array[current_timestamp];
select array[current_time];
{code}
each query fails with {{ClassCastException}} mentioned below.
It seems the reason is that date/time/timestamp could be both int/long and java_sql_*.
{noformat}
class java.sql.Date cannot be cast to class java.lang.Number (java.sql.Date is in module java.sql of loader 'platform'; java.lang.Number is in module java.base of loader 'bootstrap')
java.lang.ClassCastException: class java.sql.Date cannot be cast to class java.lang.Number (java.sql.Date is in module java.sql of loader 'platform'; java.lang.Number is in module java.base of loader 'bootstrap')
at org.apache.calcite.avatica.util.AbstractCursor$NumberAccessor.getNumber(AbstractCursor.java:722)
at org.apache.calcite.avatica.util.AbstractCursor$DateFromNumberAccessor.getString(AbstractCursor.java:928)
at org.apache.calcite.avatica.util.ArrayImpl.toString(ArrayImpl.java:62)
at org.apache.calcite.avatica.util.AbstractCursor$ArrayAccessor.getString(AbstractCursor.java:1365)
at org.apache.calcite.avatica.AvaticaResultSet.getString(AvaticaResultSet.java:239)
{noformat}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)