From 98328858fa2590537bc2c8f0ad810d701a5b917e Mon Sep 17 00:00:00 2001 From: Calvin Neo Date: Wed, 22 Jan 2025 16:58:44 +0800 Subject: [PATCH] Re-enable jemalloc's background thread by default (#9813) ref pingcap/tiflash#9722, close pingcap/tiflash#9812 Re-enable jemalloc's background thread by default Signed-off-by: Calvin Neo --- dbms/src/Server/Setup.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/dbms/src/Server/Setup.cpp b/dbms/src/Server/Setup.cpp index 6af91a3bbf9..0baf24f1790 100644 --- a/dbms/src/Server/Setup.cpp +++ b/dbms/src/Server/Setup.cpp @@ -112,8 +112,10 @@ void setupAllocator([[maybe_unused]] const LoggerPtr & log) LOG_INFO(log, "Got jemalloc config: opt.background_thread {}, opt.max_background_threads {}", old_b, old_max_thd); - if (!malloc_conf && !old_b) + bool not_config_bg = !malloc_conf || strstr(malloc_conf, "background_thread") == nullptr; + if (not_config_bg && !old_b) { + // If the user doesn't explicitly set the background_thread opt, and it is actually false, then set it to true. LOG_INFO(log, "Try to use background_thread of jemalloc to handle purging asynchronously"); RUN_FAIL_RETURN(je_mallctl("max_background_threads", nullptr, nullptr, (void *)&new_max_thd, sz_st));