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 c689b8918a [enhancement](runtimefilter) no need wait for fragment
because two phase exec fragment (#16418)
c689b8918a is described below
commit c689b8918a6c81196b54352357c504be9fc8de89
Author: yiguolei <[email protected]>
AuthorDate: Sun Feb 5 10:09:31 2023 +0800
[enhancement](runtimefilter) no need wait for fragment because two phase
exec fragment (#16418)
call pthread condition wait may block brpc thread.
no need wait for fragment because two phase exec fragment already guarantee
that the fragment instance exits when runtime filter comes. So that I remove
the condition wait code.
Co-authored-by: yiguolei <[email protected]>
---
be/src/runtime/fragment_mgr.cpp | 13 -------------
1 file changed, 13 deletions(-)
diff --git a/be/src/runtime/fragment_mgr.cpp b/be/src/runtime/fragment_mgr.cpp
index 3ef7199ee4..9c86faa865 100644
--- a/be/src/runtime/fragment_mgr.cpp
+++ b/be/src/runtime/fragment_mgr.cpp
@@ -1063,13 +1063,6 @@ Status FragmentMgr::apply_filter(const
PPublishFilterRequest* request,
RuntimeFilterMgr* runtime_filter_mgr = nullptr;
if (is_pipeline) {
std::unique_lock<std::mutex> lock(_lock);
-
- if (!_pipeline_map.count(tfragment_instance_id)) {
- VLOG_NOTICE << "wait for fragment start execute, fragment-id:" <<
fragment_instance_id;
- _cv.wait_for(lock, std::chrono::milliseconds(1000),
- [&] { return
_pipeline_map.count(tfragment_instance_id); });
- }
-
auto iter = _pipeline_map.find(tfragment_instance_id);
if (iter == _pipeline_map.end()) {
VLOG_CRITICAL << "unknown.... fragment-id:" <<
fragment_instance_id;
@@ -1081,12 +1074,6 @@ Status FragmentMgr::apply_filter(const
PPublishFilterRequest* request,
runtime_filter_mgr =
pip_context->get_runtime_state()->runtime_filter_mgr();
} else {
std::unique_lock<std::mutex> lock(_lock);
- if (!_fragment_map.count(tfragment_instance_id)) {
- VLOG_NOTICE << "wait for fragment start execute, fragment-id:" <<
fragment_instance_id;
- _cv.wait_for(lock, std::chrono::milliseconds(1000),
- [&] { return
_fragment_map.count(tfragment_instance_id); });
- }
-
auto iter = _fragment_map.find(tfragment_instance_id);
if (iter == _fragment_map.end()) {
VLOG_CRITICAL << "unknown.... fragment-id:" <<
fragment_instance_id;
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]