| 92 | } |
| 93 | |
| 94 | void AnalyticEvalPlanNode::Close() { |
| 95 | AggFn::Close(analytic_fns_); |
| 96 | if (partition_by_eq_expr_ != nullptr) partition_by_eq_expr_->Close(); |
| 97 | if (order_by_eq_expr_ != nullptr) order_by_eq_expr_->Close(); |
| 98 | PlanNode::Close(); |
| 99 | } |
| 100 | |
| 101 | Status AnalyticEvalPlanNode::CreateExecNode(RuntimeState* state, ExecNode** node) const { |
| 102 | ObjectPool* pool = state->obj_pool(); |