[
https://issues.apache.org/jira/browse/CALCITE-1488?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Julian Hyde updated CALCITE-1488:
---------------------------------
Description:
ValuesReduceRule doesn't propagate rowType on Project of empty Values. 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 should ignore 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
>
> ValuesReduceRule doesn't propagate rowType on Project of empty Values. 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)