This is an automated email from the ASF dual-hosted git repository.
yiguolei pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/master by this push:
new dbf509edc0 [Debug](scan) Add debug log for find p0 scan coredump in
pipeline (#24202)
dbf509edc0 is described below
commit dbf509edc0e438d458fefc1fa4fa147bfbe5287f
Author: HappenLee <[email protected]>
AuthorDate: Tue Sep 12 12:17:44 2023 +0800
[Debug](scan) Add debug log for find p0 scan coredump in pipeline (#24202)
---
be/src/vec/exec/scan/pip_scanner_context.h | 9 +++++++++
be/src/vec/exec/scan/scanner_context.h | 2 +-
be/src/vec/exec/scan/vscan_node.cpp | 4 ++++
3 files changed, 14 insertions(+), 1 deletion(-)
diff --git a/be/src/vec/exec/scan/pip_scanner_context.h
b/be/src/vec/exec/scan/pip_scanner_context.h
index 39fc1845f6..29183a08da 100644
--- a/be/src/vec/exec/scan/pip_scanner_context.h
+++ b/be/src/vec/exec/scan/pip_scanner_context.h
@@ -176,6 +176,15 @@ public:
}
}
+ std::string debug_string() override {
+ auto res = ScannerContext::debug_string();
+ for (int i = 0; i < _blocks_queues.size(); ++i) {
+ res += " queue " + std::to_string(i) + ":size " +
+ std::to_string(_blocks_queues[i].size_approx());
+ }
+ return res;
+ }
+
private:
int _next_queue_to_feed = 0;
std::vector<moodycamel::ConcurrentQueue<vectorized::BlockUPtr>>
_blocks_queues;
diff --git a/be/src/vec/exec/scan/scanner_context.h
b/be/src/vec/exec/scan/scanner_context.h
index 471e5bc349..e486acc001 100644
--- a/be/src/vec/exec/scan/scanner_context.h
+++ b/be/src/vec/exec/scan/scanner_context.h
@@ -131,7 +131,7 @@ public:
bool no_schedule();
- std::string debug_string();
+ virtual std::string debug_string();
RuntimeState* state() { return _state; }
diff --git a/be/src/vec/exec/scan/vscan_node.cpp
b/be/src/vec/exec/scan/vscan_node.cpp
index b787c16224..1aef9e19ef 100644
--- a/be/src/vec/exec/scan/vscan_node.cpp
+++ b/be/src/vec/exec/scan/vscan_node.cpp
@@ -279,6 +279,10 @@ Status VScanNode::get_next(RuntimeState* state,
vectorized::Block* block, bool*
return Status::OK();
}
+ if (scan_block == nullptr) {
+ LOG(FATAL) << "Scan block nullptr error _context_queue_id:" <<
_context_queue_id
+ << " context debug string:" << _scanner_ctx->debug_string();
+ }
// get scanner's block memory
block->swap(*scan_block);
_scanner_ctx->return_free_block(std::move(scan_block));
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]