You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@calcite.apache.org by "Ulrich Kramer (Jira)" <ji...@apache.org> on 2022/09/13 12:59:00 UTC
[jira] [Created] (CALCITE-5286) Join with parameterized LIMIT throws AssertionError "not a literal"
Ulrich Kramer created CALCITE-5286:
--------------------------------------
Summary: Join with parameterized LIMIT throws AssertionError "not a literal"
Key: CALCITE-5286
URL: https://issues.apache.org/jira/browse/CALCITE-5286
Project: Calcite
Issue Type: Bug
Reporter: Ulrich Kramer
A query like the following one
{code:java}
select T."name", T."valueLeverId", T."type", T."ID", T."parentId"
from (
SELECT VD."id" as ID, VD."name", VD."typeId", VD."type", VD."valueLeverId", VD."valueLever", VD."parentId", VDtoSC."VDtoSC_List"
FROM VD
LEFT JOIN VDtoSC
ON VD."id" = VDtoSC."Value_Driver_ID"
) AS T
where T."ID" = ? limit ?
{code}
fails with
{code}
findValue:1208, RexLiteral (org.apache.calcite.rex)
intValue:1183, RexLiteral (org.apache.calcite.rex)
getMaxRowCount:207, RelMdMaxRowCount (org.apache.calcite.rel.metadata)
getMaxRowCount_$:-1, GeneratedMetadata_MaxRowCountHandler (org.apache.calcite.rel.metadata.janino)
getMaxRowCount:-1, GeneratedMetadata_MaxRowCountHandler (org.apache.calcite.rel.metadata.janino)
getMaxRowCount:277, RelMetadataQuery (org.apache.calcite.rel.metadata)
alreadySmaller:914, RelMdUtil (org.apache.calcite.rel.metadata)
checkInputForCollationAndLimit:887, RelMdUtil (org.apache.calcite.rel.metadata)
onMatch:138, SortJoinTransposeRule (org.apache.calcite.rel.rules)
onMatch:223, VolcanoRuleCall (org.apache.calcite.plan.volcano)
drive:59, IterativeRuleDriver (org.apache.calcite.plan.volcano)
findBestExp:523, VolcanoPlanner (org.apache.calcite.plan.volcano)
lambda$standard$3:276, Programs (org.apache.calcite.tools)
run:-1, Programs$$Lambda$2787/0x000000080121f9c0 (org.apache.calcite.tools)
run:336, Programs$SequenceProgram (org.apache.calcite.tools)
transform:373, PlannerImpl (org.apache.calcite.prepare)
{code}
The 2 tables are located in a schema where joins can't be pushed down.
See also CALCITE-5048
--
This message was sent by Atlassian Jira
(v8.20.10#820010)