[
https://issues.apache.org/jira/browse/CALCITE-3851?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17059190#comment-17059190
]
Julian Hyde commented on CALCITE-3851:
--------------------------------------
I think it's a bad idea to modify state in the RelNode. A RelNode may exist in
several planners during its lifetime. Planner state should be outside the
RelNode.
Also, I do think that immutability is very important for RelNodes.
> Replace the node importance map with a set for pruned nodes
> -----------------------------------------------------------
>
> Key: CALCITE-3851
> URL: https://issues.apache.org/jira/browse/CALCITE-3851
> Project: Calcite
> Issue Type: Improvement
> Components: core
> Reporter: Liya Fan
> Priority: Minor
> Labels: pull-request-available
> Time Spent: 1h 20m
> Remaining Estimate: 0h
>
> Currently, volcano planner stores rel node importances with a map. In fact,
> the value of the map can only be 0.
> So there is no need to store the values, and we replace the map with a set to
> store nodes whose importances are 0.
> This makes the code logic clearer, and avoids instability caused by comparing
> floating point values.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)