[enhancement](memtracker) Optimize exec node memory tracking (#14711)

This commit is contained in:
Xinyi Zou
2022-12-01 14:52:21 +08:00
committed by GitHub
parent b4d32a0c44
commit 176f519fa1
49 changed files with 170 additions and 151 deletions

View File

@ -53,7 +53,7 @@ Status RepeatNode::init(const TPlanNode& tnode, RuntimeState* state) {
Status RepeatNode::prepare(RuntimeState* state) {
SCOPED_TIMER(_runtime_profile->total_time_counter());
RETURN_IF_ERROR(ExecNode::prepare(state));
SCOPED_CONSUME_MEM_TRACKER(mem_tracker());
SCOPED_CONSUME_MEM_TRACKER(mem_tracker_growh());
_runtime_state = state;
_output_tuple_desc = state->desc_tbl().get_tuple_descriptor(_output_tuple_id);
if (_output_tuple_desc == nullptr) {
@ -72,7 +72,7 @@ Status RepeatNode::prepare(RuntimeState* state) {
Status RepeatNode::open(RuntimeState* state) {
SCOPED_TIMER(_runtime_profile->total_time_counter());
RETURN_IF_ERROR(ExecNode::open(state));
SCOPED_CONSUME_MEM_TRACKER(mem_tracker());
SCOPED_CONSUME_MEM_TRACKER(mem_tracker_growh());
for (int i = 0; i < _expr_evals.size(); i++) {
RETURN_IF_ERROR(_expr_evals[i]->open(state));
@ -149,7 +149,7 @@ Status RepeatNode::get_repeated_batch(RowBatch* child_row_batch, int repeat_id_i
Status RepeatNode::get_next(RuntimeState* state, RowBatch* row_batch, bool* eos) {
SCOPED_TIMER(_runtime_profile->total_time_counter());
SCOPED_CONSUME_MEM_TRACKER(mem_tracker());
SCOPED_CONSUME_MEM_TRACKER(mem_tracker_growh());
RETURN_IF_CANCELLED(state);
DCHECK(_repeat_id_idx >= 0);
for (const std::vector<int64_t>& v : _grouping_list) {