From abb7640d37b6a0f2ceae9b0cb246509fb6d82a29 Mon Sep 17 00:00:00 2001 From: yiguolei <676222867@qq.com> Date: Tue, 9 Jan 2024 15:42:06 +0800 Subject: [PATCH] [debug](timeout) add more log in scanner ctx to find timeout problem #29704 Co-authored-by: yiguolei --- be/src/vec/exec/scan/pip_scanner_context.h | 4 ++++ be/src/vec/exec/scan/scanner_context.cpp | 2 ++ be/src/vec/exec/scan/scanner_scheduler.cpp | 1 + be/src/vec/exec/scan/vscan_node.cpp | 7 +++++-- 4 files changed, 12 insertions(+), 2 deletions(-) diff --git a/be/src/vec/exec/scan/pip_scanner_context.h b/be/src/vec/exec/scan/pip_scanner_context.h index 71db343840..8f79e3021a 100644 --- a/be/src/vec/exec/scan/pip_scanner_context.h +++ b/be/src/vec/exec/scan/pip_scanner_context.h @@ -48,6 +48,7 @@ public: } if (!status().ok()) { + LOG(INFO) << "yyyy status not ok " << debug_string(); return _process_status; } } @@ -60,10 +61,12 @@ public: // if done, then eos is returned to indicate that the scan operator finished. if (_blocks_queues[id].empty()) { *eos = done(); + LOG(INFO) << "yyyy queue is empty and ctx finished " << debug_string(); return Status::OK(); } if (_process_status.is()) { *eos = true; + LOG(INFO) << "yyyy process status is cancelled " << debug_string(); return Status::OK(); } *block = std::move(_blocks_queues[id].front()); @@ -82,6 +85,7 @@ public: } if (_blocks_queues[id].empty()) { + LOG(INFO) << "yyyy block queue is empty, try to resched ctx " << debug_string(); this->reschedule_scanner_ctx(); } } diff --git a/be/src/vec/exec/scan/scanner_context.cpp b/be/src/vec/exec/scan/scanner_context.cpp index bba3190689..046f28ae82 100644 --- a/be/src/vec/exec/scan/scanner_context.cpp +++ b/be/src/vec/exec/scan/scanner_context.cpp @@ -504,6 +504,8 @@ void ScannerContext::push_back_scanner_and_reschedule(std::shared_ptr ctx) { + LOG(INFO) << "yyyy submit scanner ctx " << ctx->debug_string(); if (ctx->done()) { return Status::EndOfFile("ScannerContext is done"); } diff --git a/be/src/vec/exec/scan/vscan_node.cpp b/be/src/vec/exec/scan/vscan_node.cpp index 88f44edfdb..2a56a733b4 100644 --- a/be/src/vec/exec/scan/vscan_node.cpp +++ b/be/src/vec/exec/scan/vscan_node.cpp @@ -197,8 +197,8 @@ Status VScanNode::alloc_resource(RuntimeState* state) { if (_scanner_ctx) { DCHECK(!_eos && _num_scanners->value() > 0); RETURN_IF_ERROR(_scanner_ctx->init()); - //LOG(INFO) << "yyyy instance " << print_id(state->fragment_instance_id()) - // << " submit scanner ctx " << _scanner_ctx->debug_string(); + LOG(INFO) << "yyyy instance " << print_id(state->fragment_instance_id()) + << " submit scanner ctx " << _scanner_ctx->debug_string(); RETURN_IF_ERROR(_state->exec_env()->scanner_scheduler()->submit(_scanner_ctx)); } if (_shared_scan_opt) { @@ -221,6 +221,9 @@ Status VScanNode::alloc_resource(RuntimeState* state) { : Status::OK()); if (_scanner_ctx) { RETURN_IF_ERROR(_scanner_ctx->init()); + + LOG(INFO) << "yyyy instance " << print_id(state->fragment_instance_id()) + << " submit scanner ctx " << _scanner_ctx->debug_string(); RETURN_IF_ERROR(_state->exec_env()->scanner_scheduler()->submit(_scanner_ctx)); } }