[debug](timeout) add more log in scanner ctx to find timeout problem #29704

Co-authored-by: yiguolei <yiguolei@gmail.com>
This commit is contained in:
yiguolei
2024-01-09 15:42:06 +08:00
committed by yiguolei
parent fda001b6d3
commit abb7640d37
4 changed files with 12 additions and 2 deletions

View File

@ -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<ErrorCode::CANCELLED>()) {
*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();
}
}

View File

@ -504,6 +504,8 @@ void ScannerContext::push_back_scanner_and_reschedule(std::shared_ptr<ScannerDel
if (!submit_status.ok()) {
set_status_on_error(submit_status, false);
}
} else {
LOG(INFO) << "yyyy should be sched == false, not sched" << debug_string();
}
}

View File

@ -140,6 +140,7 @@ Status ScannerScheduler::init(ExecEnv* env) {
}
Status ScannerScheduler::submit(std::shared_ptr<ScannerContext> ctx) {
LOG(INFO) << "yyyy submit scanner ctx " << ctx->debug_string();
if (ctx->done()) {
return Status::EndOfFile("ScannerContext is done");
}

View File

@ -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));
}
}