This is an automated email from the ASF dual-hosted git repository.
yiguolei pushed a commit to branch spill_and_reserve
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/spill_and_reserve by this push:
new bd935b3a0a1 should not consider about process memory
bd935b3a0a1 is described below
commit bd935b3a0a1c511868b766749ffb166f935c4ee3
Author: yiguolei <[email protected]>
AuthorDate: Sat Nov 16 14:24:07 2024 +0800
should not consider about process memory
---
be/src/runtime/workload_group/workload_group_manager.cpp | 14 ++++++++++++--
1 file changed, 12 insertions(+), 2 deletions(-)
diff --git a/be/src/runtime/workload_group/workload_group_manager.cpp
b/be/src/runtime/workload_group/workload_group_manager.cpp
index 77aeefcef53..b3c8d794af1 100644
--- a/be/src/runtime/workload_group/workload_group_manager.cpp
+++ b/be/src/runtime/workload_group/workload_group_manager.cpp
@@ -259,8 +259,8 @@ void WorkloadGroupMgr::add_paused_query(const
std::shared_ptr<QueryContext>& que
// if hard limit is enabled, then not need enable other queries hard limit.
if (inserted) {
query_ctx->set_memory_sufficient(false);
- LOG(INFO) << "workload group " << wg->debug_string()
- << " insert one new paused query: " <<
query_ctx->debug_string();
+ LOG(INFO) << "Insert one new paused query: " <<
query_ctx->debug_string()
+ << ", workload group: " << wg->debug_string()
}
}
@@ -659,6 +659,10 @@ bool
WorkloadGroupMgr::handle_single_query_(std::shared_ptr<QueryContext> query_
query_ctx->cancel(doris::Status::Error<ErrorCode::MEM_LIMIT_EXCEEDED>(msg1));
}
} else {
+ // Should not consider about process memory. For example, the
query's limit is 100g, workload
+ // group's memlimit is 10g, process memory is 20g. The query
reserve will always failed in wg
+ // limit, and process is always have memory, so that it will
resume and failed reserve again.
+ /*
if (!GlobalMemoryArbitrator::is_exceed_hard_mem_limit()) {
LOG(INFO) << "query: " << query_id
<< ", process limit not exceeded now, resume this
query"
@@ -678,6 +682,12 @@ bool
WorkloadGroupMgr::handle_single_query_(std::shared_ptr<QueryContext> query_
"set "
"the workload group's limit to a lower value.",
query_id));
+ */
+
query_ctx->cancel(doris::Status::Error<ErrorCode::MEM_LIMIT_EXCEEDED>(
+ "The query({}) reserved memory failed and could not find
task to spill. Maybe "
+ "you should "
+ "set the query's memlimit or workload group's limit to a
lower value.",
+ query_id));
}
} else {
SCOPED_ATTACH_TASK(query_ctx.get());
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]