[
https://issues.apache.org/jira/browse/CALCITE-1488?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Gian Merlino updated CALCITE-1488:
----------------------------------
Description:
If ValuesReduceRule is trying to reduce a Project on top of an empty Values,
then changeCount ends up 0, and it returns the underlying Values. This leads to
an assertion failure because the returned Values does not have the expected
rowType.
One way to fix this is changing the "Filter had no effect" logic from
"changeCount == 0" to "changeCount == 0 && projectExprs == null".
was:
If ValuesReduceRule is trying to reduce a project on top of an empty Values,
then changeCount ends up 0, and it returns the underlying Values. This leads to
an assertion failure because the returned Values does not have the expected
rowType.
One way to fix this is changing the "Filter had no effect" logic from
"changeCount == 0" to "changeCount == 0 && projectExprs == null".
> ValuesReduceRule doesn't propagate rowType on Project of empty Values
> ---------------------------------------------------------------------
>
> Key: CALCITE-1488
> URL: https://issues.apache.org/jira/browse/CALCITE-1488
> Project: Calcite
> Issue Type: Bug
> Components: core
> Affects Versions: 1.10.0
> Reporter: Gian Merlino
> Assignee: Julian Hyde
>
> If ValuesReduceRule is trying to reduce a Project on top of an empty Values,
> then changeCount ends up 0, and it returns the underlying Values. This leads
> to an assertion failure because the returned Values does not have the
> expected rowType.
> One way to fix this is changing the "Filter had no effect" logic from
> "changeCount == 0" to "changeCount == 0 && projectExprs == null".
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)