This is an automated email from the ASF dual-hosted git repository.

morningman pushed a commit to branch branch-1.2-lts
in repository https://gitbox.apache.org/repos/asf/doris.git

commit 8853d515ae7ef22a19d1ee200aed8c54a5e95639
Author: zhangstar333 <87313068+zhangstar...@users.noreply.github.com>
AuthorDate: Fri Dec 16 19:55:09 2022 +0800

    [vectorized](join) add try catch in create thread (#15065)
---
 be/src/vec/exec/join/vjoin_node_base.cpp | 15 ++++++++++-----
 1 file changed, 10 insertions(+), 5 deletions(-)

diff --git a/be/src/vec/exec/join/vjoin_node_base.cpp 
b/be/src/vec/exec/join/vjoin_node_base.cpp
index d5d5280f57..2ebedff219 100644
--- a/be/src/vec/exec/join/vjoin_node_base.cpp
+++ b/be/src/vec/exec/join/vjoin_node_base.cpp
@@ -159,11 +159,16 @@ Status VJoinNodeBase::open(RuntimeState* state) {
     RETURN_IF_CANCELLED(state);
 
     std::promise<Status> thread_status;
-    std::thread([this, state, thread_status_p = &thread_status,
-                 parent_span = opentelemetry::trace::Tracer::GetCurrentSpan()] 
{
-        OpentelemetryScope scope {parent_span};
-        this->_probe_side_open_thread(state, thread_status_p);
-    }).detach();
+    try {
+        std::thread([this, state, thread_status_p = &thread_status,
+                     parent_span = 
opentelemetry::trace::Tracer::GetCurrentSpan()] {
+            OpentelemetryScope scope {parent_span};
+            this->_probe_side_open_thread(state, thread_status_p);
+        }).detach();
+    } catch (const std::system_error& e) {
+        LOG(WARNING) << "In VJoinNodeBase::open create thread fail, " << 
e.what();
+        return Status::InternalError(e.what());
+    }
 
     // Open the probe-side child so that it may perform any initialisation in 
parallel.
     // Don't exit even if we see an error, we still need to wait for the build 
thread


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org
For additional commands, e-mail: commits-h...@doris.apache.org

Reply via email to