[ https://issues.apache.org/jira/browse/CALCITE-2338?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16495623#comment-16495623 ]
Julian Hyde commented on CALCITE-2338: -------------------------------------- Methods like simplifyOrs are public because we don’t want to constantly deconstruct and reconstruct RexCalls. RexSimplify is on the code path every time a rule creates. project or filter, so it must be efficient. Especially when an expression has already been simplified. I don’t think there are very many such calls. > Reconsider the externally visible api of RexSimplify > ---------------------------------------------------- > > Key: CALCITE-2338 > URL: https://issues.apache.org/jira/browse/CALCITE-2338 > Project: Calcite > Issue Type: Bug > Reporter: Zoltan Haindrich > Assignee: Zoltan Haindrich > Priority: Major > > Currently many lower level simplification methods are visible. > While I was porting CALCITE-2247 to a branch near 1.16 I've bumped into an > issue because of the fact that by calling a specific simplify method may > leave out some otherwise applicable simplifications. > For master there is already an extra safety feature by the presence of > CALCITE-2205; it seems like using less entry points may even lead to better > simplifications - by changing this; a filter have been removed. > https://github.com/kgyrtkirk/calcite/commit/2e29a659792f6bd9419dc0f97bf5a3bdd9f6f2cc -- This message was sent by Atlassian JIRA (v7.6.3#76005)