[
https://issues.apache.org/jira/browse/CALCITE-6376?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Austin Richardson updated CALCITE-6376:
---------------------------------------
Description:
Example query:
{code:java}
WITH MyCTE AS (
SELECT
column1,
column2,
column3,
column4,
column5,
column6
FROM (
VALUES
('value1', 10, 5.0, 'data1', 'info1', 'test1'),
('value2', 20, 4.0, 'data2', 'info2', 'test2'),
('value3', 30, 3.0, 'data3', 'info3', 'test3'),
('value4', 40, 2.0, 'data4', 'info4', 'test4'),
('value5', 50, 1.0, 'data5', 'info5', 'test5')
) AS t(column1, column2, column3, column4, column5, column6)
)
SELECT *
FROM MyCTE
QUALIFY RANK() OVER (ORDER BY column3) = 1{code}
And exception snippet:
{code:java}
Caused by: java.lang.ClassCastException: class
org.apache.calcite.rex.RexInputRef cannot be cast to class java.lang.Comparable
(org.apache.calcite.rex.RexInputRef is in unnamed module of loader
org.springframework.boot.loader.LaunchedURLClassLoader @257f30f7;
java.lang.Comparable is in module java.base of loader 'bootstrap')
at
org.apache.calcite.runtime.FlatLists$ComparableListImpl.get(FlatLists.java:1319)
at
org.apache.calcite.runtime.FlatLists$ComparableListImpl.get(FlatLists.java:1309)
at
java.base/java.util.AbstractList$Itr.next(AbstractList.java:373){code}
Either removing one of the columns or the QUALIFY filter results in a
successful query.
was:
Example query:
{code:java}
WITH MyCTE AS (
SELECT
column1,
column2,
column3,
column4,
column5,
column6
FROM (
VALUES
('value1', 10, 5.0, 'data1', 'info1', 'test1'),
('value2', 20, 4.0, 'data2', 'info2', 'test2'),
('value3', 30, 3.0, 'data3', 'info3', 'test3'),
('value4', 40, 2.0, 'data4', 'info4', 'test4'),
('value5', 50, 1.0, 'data5', 'info5', 'test5')
) AS t(column1, column2, column3, column4, column5, column6)
)
SELECT *
FROM MyCTE
QUALIFY RANK() OVER (ORDER BY column3) = 1{code}
Either removing one of the columns or the QUALIFY filter results in a
successful query.
> Filtering CTE of at least 6 columns with QUALIFY operation results in
> exception
> -------------------------------------------------------------------------------
>
> Key: CALCITE-6376
> URL: https://issues.apache.org/jira/browse/CALCITE-6376
> Project: Calcite
> Issue Type: Bug
> Affects Versions: 1.36.0
> Reporter: Austin Richardson
> Priority: Major
>
> Example query:
>
> {code:java}
> WITH MyCTE AS (
> SELECT
> column1,
> column2,
> column3,
> column4,
> column5,
> column6
> FROM (
> VALUES
> ('value1', 10, 5.0, 'data1', 'info1', 'test1'),
> ('value2', 20, 4.0, 'data2', 'info2', 'test2'),
> ('value3', 30, 3.0, 'data3', 'info3', 'test3'),
> ('value4', 40, 2.0, 'data4', 'info4', 'test4'),
> ('value5', 50, 1.0, 'data5', 'info5', 'test5')
> ) AS t(column1, column2, column3, column4, column5, column6)
> )
> SELECT *
> FROM MyCTE
> QUALIFY RANK() OVER (ORDER BY column3) = 1{code}
>
> And exception snippet:
>
> {code:java}
> Caused by: java.lang.ClassCastException: class
> org.apache.calcite.rex.RexInputRef cannot be cast to class
> java.lang.Comparable (org.apache.calcite.rex.RexInputRef is in unnamed module
> of loader org.springframework.boot.loader.LaunchedURLClassLoader @257f30f7;
> java.lang.Comparable is in module java.base of loader 'bootstrap')
> at
> org.apache.calcite.runtime.FlatLists$ComparableListImpl.get(FlatLists.java:1319)
> at
> org.apache.calcite.runtime.FlatLists$ComparableListImpl.get(FlatLists.java:1309)
> at
> java.base/java.util.AbstractList$Itr.next(AbstractList.java:373){code}
>
> Either removing one of the columns or the QUALIFY filter results in a
> successful query.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)