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)