xinyiZzz commented on code in PR #47462:
URL: https://github.com/apache/doris/pull/47462#discussion_r1967028793


##########
be/src/runtime/memory/mem_tracker_limiter.h:
##########
@@ -350,9 +369,16 @@ inline void MemTrackerLimiter::cache_consume(int64_t 
bytes) {
 }
 
 inline Status MemTrackerLimiter::check_limit(int64_t bytes) {
-    if (bytes <= 0 || (is_overcommit_tracker() && 
config::enable_query_memory_overcommit)) {
+    // Do not enable check limit, because reserve process will check it.
+    if (bytes <= 0 || _enable_reserve_memory) {

Review Comment:
   所以如果 reserve 成功,那后续 operator 申请内存预期不应在 Allocator 中 check query limit 
报错对吧,即使实际申请的内存超过了 reserve 的值。
   
   因为 reserve 失败可以执行 spill,但 Allocator 中报错就直接 cancel query 了,所以除非 hard limit 
了,否则不应 cancel query



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


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

Reply via email to