Aleksey Plekhanov created IGNITE-23676:
------------------------------------------

             Summary: Calcite engine. Failed to remove sensitive information 
from JOINs
                 Key: IGNITE-23676
                 URL: https://issues.apache.org/jira/browse/IGNITE-23676
             Project: Ignite
          Issue Type: Bug
            Reporter: Aleksey Plekhanov


SqlJoin AST node stores some internal fields as literals (joinType, 
conditionType, natural). These fields are converted to dynamic parameters 
during sensitive information removal and can't be constructed to SqlJoin again. 

{noformat}
Unable to remove sensitive information from SQL node of class: 
org.apache.calcite.sql.SqlSelect
java.lang.ClassCastException: class org.apache.calcite.sql.SqlDynamicParam 
cannot be cast to class org.apache.calcite.sql.SqlLiteral 
(org.apache.calcite.sql.SqlDynamicParam and org.apache.calcite.sql.SqlLiteral 
are in unnamed module of loader 'app')
        at 
org.apache.calcite.sql.SqlJoin$SqlJoinOperator.createCall(SqlJoin.java:203) 
~[calcite-core-1.34.0.jar:1.34.0]
        at 
org.apache.calcite.sql.util.SqlShuttle$CallCopyingArgHandler.result(SqlShuttle.java:117)
 ~[calcite-core-1.34.0.jar:1.34.0]
        at org.apache.calcite.sql.util.SqlShuttle.visit(SqlShuttle.java:69) 
~[calcite-core-1.34.0.jar:1.34.0]
        at 
org.apache.ignite.internal.processors.query.calcite.CalciteQueryProcessor$2.visit(CalciteQueryProcessor.java:568)
 ~[ignite-calcite-2.16.0.jar:2.16.0]
        at 
org.apache.ignite.internal.processors.query.calcite.CalciteQueryProcessor$2.visit(CalciteQueryProcessor.java:545)
 ~[ignite-calcite-2.16.0.jar:2.16.0]
        at org.apache.calcite.sql.SqlCall.accept(SqlCall.java:161) 
~[calcite-core-1.34.0.jar:1.34.0]
{noformat}
 



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

Reply via email to