David Dali Susanibar Arce created CALCITE-6195:
--------------------------------------------------

             Summary: SqlValidator validateParameterizedExpression is not 
supporting qualified paths
                 Key: CALCITE-6195
                 URL: https://issues.apache.org/jira/browse/CALCITE-6195
             Project: Calcite
          Issue Type: Bug
          Components: core
    Affects Versions: 1.36.0
            Reporter: David Dali Susanibar Arce


The SQLValidator.validateParameterizedExpression method can be used to validate 
parameterized expressions.

It is possible to register 
[validateParameterizedExpression|https://github.com/apache/calcite/blob/1b11d99e65d03a15ae4b25c47250b6918ce9aa10/core/src/test/java/org/apache/calcite/test/SqlValidatorTest.java#L11421:L11435]:
{code:java}
final Map<String, RelDataType> nameToTypeMap = new HashMap<>();
nameToTypeMap.put("A", intType);
nameToTypeMap.put("B", intTypeNull); 
final String expr = "a + b";
final SqlNode validated = validator.validateParameterizedExpression(sqlNode, 
nameToTypeMap);{code}
 

Problems appear if we are trying to register qualified paths:
{code:java}
final Map<String, RelDataType> nameToTypeMap = new HashMap<>(); 
nameToTypeMap.put("EMP.A", intType);
nameToTypeMap.put("EMP.B", intTypeNull); 
final String expr = "EMP.a + EMP.b";
final SqlNode validated = validator.validateParameterizedExpression(sqlNode, 
nameToTypeMap); 

Error:
org.apache.calcite.runtime.CalciteContextException: From line 1, column 1 to 
line 1, column 3: Unknown identifier 'EMP'
{code}
I would appreciate if you could provide me with some advice regarding how to 
resolve this error.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to