hsyuan opened a new pull request #2074:
URL: https://github.com/apache/calcite/pull/2074


   Currently the only way to check rel node tree deep equality is transforming
   into String by RelOptUtil.toString(rel) with
   SqlExplainLevel.EXPPLAN_ATTRIBUTES, which is inefficient. One example is
   RexSubQuery. It has to do it this way, because the rel being reference by
   RexSubQuery is possibly not yet registered to VolcanoPlanner, and the digest
   equals checks the input RelNode by identity (not content). That is OK for
   RelSubset and HepRelVertex, if the RelNode is already registered in planner,
   but not for plain RelNode that is outside of planner. Due to this, we have to
   implement another set of deep equals logic in our system.
   
   With this patch, `digestEquals()` and `digestHash()` are extended to support
   deep equality check for RelNode.
   
   CALCITE-4129
   


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to