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 1a8913f8f4 [fix](shared hash table) fix p0 test failure (#23907)
1a8913f8f4 is described below
commit 1a8913f8f42ba05dc61bd5a45b2af897a9599b09
Author: Gabriel <[email protected]>
AuthorDate: Tue Sep 5 14:48:46 2023 +0800
[fix](shared hash table) fix p0 test failure (#23907)
---
be/src/vec/runtime/shared_hash_table_controller.cpp | 15 ++++++++++-----
1 file changed, 10 insertions(+), 5 deletions(-)
diff --git a/be/src/vec/runtime/shared_hash_table_controller.cpp
b/be/src/vec/runtime/shared_hash_table_controller.cpp
index 869c3d7ec0..b774876198 100644
--- a/be/src/vec/runtime/shared_hash_table_controller.cpp
+++ b/be/src/vec/runtime/shared_hash_table_controller.cpp
@@ -38,12 +38,17 @@ bool
SharedHashTableController::should_build_hash_table(const TUniqueId& fragmen
int my_node_id) {
std::lock_guard<std::mutex> lock(_mutex);
auto it = _builder_fragment_ids.find(my_node_id);
- DCHECK(_pipeline_engine_enabled && it != _builder_fragment_ids.cend());
- if (it != _builder_fragment_ids.cend()) {
- return it->second == fragment_instance_id;
+ if (_pipeline_engine_enabled) {
+ if (it != _builder_fragment_ids.cend()) {
+ return it->second == fragment_instance_id;
+ }
+ return false;
+ }
+
+ if (it == _builder_fragment_ids.cend()) {
+ _builder_fragment_ids.insert({my_node_id, fragment_instance_id});
+ return true;
}
- throw Exception(ErrorCode::INTERNAL_ERROR,
- "Shared hash table for node {} has not been initialized!",
my_node_id);
return false;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]