[enhancement] Refactor to improve the usability of MemTracker (step2) (#10823)
This commit is contained in:
@ -60,7 +60,7 @@ Status ExchangeNode::init(const TPlanNode& tnode, RuntimeState* state) {
|
||||
|
||||
Status ExchangeNode::prepare(RuntimeState* state) {
|
||||
RETURN_IF_ERROR(ExecNode::prepare(state));
|
||||
SCOPED_SWITCH_TASK_THREAD_LOCAL_MEM_TRACKER(mem_tracker());
|
||||
SCOPED_CONSUME_MEM_TRACKER(mem_tracker());
|
||||
_convert_row_batch_timer = ADD_TIMER(runtime_profile(), "ConvertRowBatchTime");
|
||||
// TODO: figure out appropriate buffer size
|
||||
DCHECK_GT(_num_senders, 0);
|
||||
@ -70,8 +70,7 @@ Status ExchangeNode::prepare(RuntimeState* state) {
|
||||
config::exchg_node_buffer_size_bytes, _runtime_profile.get(), _is_merging,
|
||||
_sub_plan_query_statistics_recvr);
|
||||
if (_is_merging) {
|
||||
RETURN_IF_ERROR(_sort_exec_exprs.prepare(state, _row_descriptor, _row_descriptor,
|
||||
expr_mem_tracker()));
|
||||
RETURN_IF_ERROR(_sort_exec_exprs.prepare(state, _row_descriptor, _row_descriptor));
|
||||
// AddExprCtxsToFree(_sort_exec_exprs);
|
||||
}
|
||||
return Status::OK();
|
||||
@ -79,9 +78,8 @@ Status ExchangeNode::prepare(RuntimeState* state) {
|
||||
|
||||
Status ExchangeNode::open(RuntimeState* state) {
|
||||
SCOPED_TIMER(_runtime_profile->total_time_counter());
|
||||
SCOPED_SWITCH_TASK_THREAD_LOCAL_MEM_TRACKER(mem_tracker());
|
||||
ADD_THREAD_LOCAL_MEM_TRACKER(_stream_recvr->mem_tracker());
|
||||
RETURN_IF_ERROR(ExecNode::open(state));
|
||||
SCOPED_CONSUME_MEM_TRACKER(mem_tracker());
|
||||
if (_is_merging) {
|
||||
RETURN_IF_ERROR(_sort_exec_exprs.open(state));
|
||||
TupleRowComparator less_than(_sort_exec_exprs, _is_asc_order, _nulls_first);
|
||||
@ -134,7 +132,7 @@ Status ExchangeNode::fill_input_row_batch(RuntimeState* state) {
|
||||
|
||||
Status ExchangeNode::get_next(RuntimeState* state, RowBatch* output_batch, bool* eos) {
|
||||
SCOPED_TIMER(_runtime_profile->total_time_counter());
|
||||
SCOPED_SWITCH_TASK_THREAD_LOCAL_EXISTED_MEM_TRACKER(mem_tracker());
|
||||
SCOPED_CONSUME_MEM_TRACKER(mem_tracker());
|
||||
|
||||
if (reached_limit()) {
|
||||
_stream_recvr->transfer_all_resources(output_batch);
|
||||
|
||||
Reference in New Issue
Block a user