Hi All, I am using Beam 2.43 with Calcite SQL with Java.
I have a query with a WITH clause and some aliasing. Looks like Beam Query optimizer after optimizing my query, it drops Select statement's aliases. Can you help me to identify where the problem is ? This is my query INFO: SQL: WITH `tempTable` (`id`, `v`) AS (SELECT `PCOLLECTION`.`f_nestedRow`.`f_nestedInt` AS `id`, `PCOLLECTION`.`f_nestedRow`.`f_nestedString` AS `v` FROM `beam`.`PCOLLECTION` AS `PCOLLECTION`) (SELECT `tempTable`.`id` AS `id`, `tempTable`.`v` AS `value` FROM `tempTable` AS `tempTable` WHERE `tempTable`.`v` <> '11') This is Calcite Plan look at LogicalProject(id=[$0], value=[$1]) in SQL plan. Jan 12, 2023 12:19:08 PM org.apache.beam.sdk.extensions.sql.impl.CalciteQueryPlanner convertToBeamRel INFO: SQLPlan> LogicalProject(id=[$0], value=[$1]) LogicalFilter(condition=[<>($1, '11')]) LogicalProject(id=[$1.f_nestedInt], v=[$1.f_nestedString]) BeamIOSourceRel(table=[[beam, PCOLLECTION]]) But Beam Plan does not have a LogicalProject(id=[$0], value=[$1]) or similar. Jan 12, 2023 12:19:08 PM org.apache.beam.sdk.extensions.sql.impl.CalciteQueryPlanner convertToBeamRel INFO: BEAMPlan> BeamCalcRel(expr#0..1=[{inputs}], expr#2=[$t1.f_nestedInt], expr#3=[$t1.f_nestedString], expr#4=['11':VARCHAR], expr#5=[<>($t3, $t4)], id=[$t2], v=[$t3], $condition=[$t5]) BeamIOSourceRel(table=[[beam, PCOLLECTION]]) Thanks