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 7e964f4d699 [Fix]fix compile warning (#53445)
7e964f4d699 is described below

commit 7e964f4d699f4cdd052b8f327b121acd906a8c6a
Author: wangbo <[email protected]>
AuthorDate: Fri Jul 18 09:17:31 2025 +0800

    [Fix]fix compile warning (#53445)
---
 be/src/agent/cgroup_cpu_ctl.cpp                    | 12 +++++++----
 be/src/agent/workload_group_listener.cpp           |  6 +++++-
 be/src/runtime/workload_group/workload_group.cpp   | 16 +++++++++------
 be/src/runtime/workload_group/workload_group.h     |  4 ++--
 .../workload_group/workload_group_manager.cpp      | 23 +++++++++++++---------
 5 files changed, 39 insertions(+), 22 deletions(-)

diff --git a/be/src/agent/cgroup_cpu_ctl.cpp b/be/src/agent/cgroup_cpu_ctl.cpp
index 76b72f2c9d0..972ccc7aae4 100644
--- a/be/src/agent/cgroup_cpu_ctl.cpp
+++ b/be/src/agent/cgroup_cpu_ctl.cpp
@@ -28,6 +28,8 @@
 
 namespace doris {
 
+#include "common/compile_check_begin.h"
+
 bool CgroupCpuCtl::is_a_valid_cgroup_path(std::string cg_path) {
     if (!cg_path.empty()) {
         if (cg_path.back() != '/') {
@@ -214,7 +216,7 @@ Status CgroupCpuCtl::write_cg_sys_file(std::string 
file_path, std::string value,
     }};
 
     auto str = fmt::format("{}\n", value);
-    int ret = write(fd, str.c_str(), str.size());
+    ssize_t ret = write(fd, str.c_str(), str.size());
     if (ret == -1) {
         LOG(ERROR) << msg << " write sys file failed";
         return Status::InternalError<false>("{} write sys file failed", msg);
@@ -250,7 +252,7 @@ Status 
CgroupCpuCtl::delete_unused_cgroup_path(std::set<uint64_t>& used_wg_ids)
         struct stat st;
         // == 0 means exists
         if (stat(dir_name.c_str(), &st) == 0 && (st.st_mode & S_IFDIR)) {
-            int pos = dir_name.rfind("/");
+            auto pos = dir_name.rfind("/");
             std::string wg_dir_name = dir_name.substr(pos + 1, 
dir_name.length());
             if (wg_dir_name.empty()) {
                 return Status::InternalError<false>("find an empty workload 
group path, path={}",
@@ -335,8 +337,8 @@ Status CgroupV1CpuCtl::modify_cg_cpu_soft_limit_no_lock(int 
cpu_shares) {
 }
 
 Status CgroupV1CpuCtl::modify_cg_cpu_hard_limit_no_lock(int cpu_hard_limit) {
-    int val = cpu_hard_limit > 0 ? (_cpu_cfs_period_us * _cpu_core_num * 
cpu_hard_limit / 100)
-                                 : CGROUP_CPU_HARD_LIMIT_DEFAULT_VALUE;
+    uint64_t val = cpu_hard_limit > 0 ? (_cpu_cfs_period_us * _cpu_core_num * 
cpu_hard_limit / 100)
+                                      : CGROUP_CPU_HARD_LIMIT_DEFAULT_VALUE;
     std::string str_val = std::to_string(val);
     std::string msg = "modify cpu quota value to " + str_val;
     return CgroupCpuCtl::write_cg_sys_file(_cgroup_v1_cpu_tg_quota_file, 
str_val, msg, false);
@@ -419,4 +421,6 @@ Status CgroupV2CpuCtl::add_thread_to_cgroup() {
     return CgroupCpuCtl::add_thread_to_cgroup(_cgroup_v2_query_wg_thread_file);
 }
 
+#include "common/compile_check_end.h"
+
 } // namespace doris
diff --git a/be/src/agent/workload_group_listener.cpp 
b/be/src/agent/workload_group_listener.cpp
index 198c1dc6586..a51349dc9ba 100644
--- a/be/src/agent/workload_group_listener.cpp
+++ b/be/src/agent/workload_group_listener.cpp
@@ -27,10 +27,12 @@
 
 namespace doris {
 
+#include "common/compile_check_begin.h"
+
 void WorkloadGroupListener::handle_topic_info(const std::vector<TopicInfo>& 
topic_info_list) {
     std::set<uint64_t> current_wg_ids;
     bool is_set_workload_group_info = false;
-    int list_size = topic_info_list.size();
+    auto list_size = topic_info_list.size();
     for (const TopicInfo& topic_info : topic_info_list) {
         if (!topic_info.__isset.workload_group_info) {
             continue;
@@ -84,4 +86,6 @@ void WorkloadGroupListener::handle_topic_info(const 
std::vector<TopicInfo>& topi
     }
     
_exec_env->workload_group_mgr()->delete_workload_group_by_ids(current_wg_ids);
 }
+
+#include "common/compile_check_end.h"
 } // namespace doris
\ No newline at end of file
diff --git a/be/src/runtime/workload_group/workload_group.cpp 
b/be/src/runtime/workload_group/workload_group.cpp
index 945c6c59ceb..ed954cc81e4 100644
--- a/be/src/runtime/workload_group/workload_group.cpp
+++ b/be/src/runtime/workload_group/workload_group.cpp
@@ -47,6 +47,8 @@
 
 namespace doris {
 
+#include "common/compile_check_begin.h"
+
 const static std::string MEMORY_LIMIT_DEFAULT_VALUE = "0%";
 const static bool ENABLE_MEMORY_OVERCOMMIT_DEFAULT_VALUE = true;
 const static int CPU_HARD_LIMIT_DEFAULT_VALUE = -1;
@@ -104,7 +106,7 @@ std::string WorkloadGroup::debug_string() const {
 bool WorkloadGroup::try_add_wg_refresh_interval_memory_growth(int64_t size) {
     auto realtime_total_mem_used =
             _total_mem_used + _wg_refresh_interval_memory_growth.load() + size;
-    if ((realtime_total_mem_used >
+    if (((double)realtime_total_mem_used >
          ((double)_memory_limit * 
_memory_high_watermark.load(std::memory_order_relaxed) / 100))) {
         // If a group is enable memory overcommit, then not need check the 
limit
         // It is always true, and it will only fail when process memory is not
@@ -123,7 +125,7 @@ bool 
WorkloadGroup::try_add_wg_refresh_interval_memory_growth(int64_t size) {
 
 std::string WorkloadGroup::_memory_debug_string() const {
     auto realtime_total_mem_used = _total_mem_used + 
_wg_refresh_interval_memory_growth.load();
-    auto mem_used_ratio = realtime_total_mem_used / ((double)_memory_limit + 
1);
+    auto mem_used_ratio = (double)realtime_total_mem_used / 
((double)_memory_limit + 1);
     auto mem_used_ratio_int = (int64_t)(mem_used_ratio * 100 + 0.5);
     mem_used_ratio = (double)mem_used_ratio_int / 100;
     return fmt::format(
@@ -338,7 +340,7 @@ WorkloadGroupInfo WorkloadGroupInfo::parse_topic_info(
     }
 
     // 3 version
-    int version = 0;
+    int64_t version = 0;
     if (tworkload_group_info.__isset.version) {
         version = tworkload_group_info.version;
     } else {
@@ -425,14 +427,14 @@ WorkloadGroupInfo WorkloadGroupInfo::parse_topic_info(
     }
 
     // 14 scan io
-    int read_bytes_per_second = -1;
+    int64_t read_bytes_per_second = -1;
     if (tworkload_group_info.__isset.read_bytes_per_second &&
         tworkload_group_info.read_bytes_per_second > 0) {
         read_bytes_per_second = tworkload_group_info.read_bytes_per_second;
     }
 
     // 15 remote scan io
-    int remote_read_bytes_per_second = -1;
+    int64_t remote_read_bytes_per_second = -1;
     if (tworkload_group_info.__isset.remote_read_bytes_per_second &&
         tworkload_group_info.remote_read_bytes_per_second > 0) {
         remote_read_bytes_per_second = 
tworkload_group_info.remote_read_bytes_per_second;
@@ -598,7 +600,7 @@ Status 
WorkloadGroup::upsert_thread_pool_no_lock(WorkloadGroupInfo* wg_info,
 
 void WorkloadGroup::upsert_cgroup_cpu_ctl_no_lock(WorkloadGroupInfo* wg_info) {
     int cpu_hard_limit = wg_info->cpu_hard_limit;
-    uint64_t cpu_share = wg_info->cpu_share;
+    int cpu_share = static_cast<int>(wg_info->cpu_share);
     create_cgroup_cpu_ctl_no_lock();
 
     if (_cgroup_cpu_ctl) {
@@ -706,4 +708,6 @@ void WorkloadGroup::try_stop_schedulers() {
     }
 }
 
+#include "common/compile_check_end.h"
+
 } // namespace doris
diff --git a/be/src/runtime/workload_group/workload_group.h 
b/be/src/runtime/workload_group/workload_group.h
index 56c883b989e..a28017e15d5 100644
--- a/be/src/runtime/workload_group/workload_group.h
+++ b/be/src/runtime/workload_group/workload_group.h
@@ -303,8 +303,8 @@ struct WorkloadGroupInfo {
     const int min_remote_scan_thread_num = 0;
     const int memory_low_watermark = 0;
     const int memory_high_watermark = 0;
-    const int read_bytes_per_second = -1;
-    const int remote_read_bytes_per_second = -1;
+    const int64_t read_bytes_per_second = -1;
+    const int64_t remote_read_bytes_per_second = -1;
     const int total_query_slot_count = 0;
     const TWgSlotMemoryPolicy::type slot_mem_policy = 
TWgSlotMemoryPolicy::NONE;
     const int write_buffer_ratio = 0;
diff --git a/be/src/runtime/workload_group/workload_group_manager.cpp 
b/be/src/runtime/workload_group/workload_group_manager.cpp
index 6944fd2ff58..bb7d6dc180d 100644
--- a/be/src/runtime/workload_group/workload_group_manager.cpp
+++ b/be/src/runtime/workload_group/workload_group_manager.cpp
@@ -41,6 +41,8 @@
 
 namespace doris {
 
+#include "common/compile_check_begin.h"
+
 const static std::string INTERNAL_NORMAL_WG_NAME = "normal";
 const static uint64_t INTERNAL_NORMAL_WG_ID = 1;
 
@@ -65,7 +67,7 @@ WorkloadGroupPtr 
WorkloadGroupMgr::get_or_create_workload_group(
     if (fe_wg_info.name == INTERNAL_NORMAL_WG_NAME) {
         WorkloadGroupPtr wg_ptr = nullptr;
         uint64_t old_wg_id = -1;
-        int before_wg_size = _workload_groups.size();
+        auto before_wg_size = _workload_groups.size();
         for (auto& wg_pair : _workload_groups) {
             uint64_t wg_id = wg_pair.first;
             WorkloadGroupPtr wg = wg_pair.second;
@@ -146,8 +148,8 @@ void 
WorkloadGroupMgr::delete_workload_group_by_ids(std::set<uint64_t> used_wg_i
     int64_t begin_time = MonotonicMillis();
     // 1 get delete group without running queries
     std::vector<WorkloadGroupPtr> deleted_task_groups;
-    int old_wg_size = 0;
-    int new_wg_size = 0;
+    size_t old_wg_size = 0;
+    size_t new_wg_size = 0;
     {
         std::lock_guard<std::shared_mutex> write_lock(_group_mutex);
         old_wg_size = _workload_groups.size();
@@ -684,8 +686,8 @@ int64_t 
WorkloadGroupMgr::flush_memtable_from_group_(WorkloadGroupPtr wg) {
     int64_t max_wg_memtable_bytes = wg->write_buffer_limit();
     if (memtable_active_bytes + memtable_queue_bytes + memtable_flush_bytes >
         max_wg_memtable_bytes) {
-        auto max_wg_active_memtable_bytes =
-                (int64_t)(max_wg_memtable_bytes * 
config::load_max_wg_active_memtable_percent);
+        auto max_wg_active_memtable_bytes = 
(int64_t)(static_cast<double>(max_wg_memtable_bytes) *
+                                                      
config::load_max_wg_active_memtable_percent);
         // There are many table in flush queue, just waiting them flush 
finished.
         if (memtable_active_bytes < max_wg_active_memtable_bytes) {
             LOG_EVERY_T(INFO, 60) << wg->name()
@@ -942,7 +944,7 @@ void 
WorkloadGroupMgr::update_queries_limit_(WorkloadGroupPtr wg, bool enable_ha
     bool is_high_watermark = false;
     wg->check_mem_used(&is_low_watermark, &is_high_watermark);
     int64_t wg_high_water_mark_limit =
-            (int64_t)(wg_mem_limit * wg->memory_high_watermark() * 1.0 / 100);
+            (int64_t)(static_cast<double>(wg_mem_limit) * 
wg->memory_high_watermark() * 1.0 / 100);
     int64_t memtable_usage = wg->write_buffer_size();
     int64_t wg_high_water_mark_except_load = wg_high_water_mark_limit;
     if (memtable_usage > wg->write_buffer_limit()) {
@@ -960,7 +962,7 @@ void 
WorkloadGroupMgr::update_queries_limit_(WorkloadGroupPtr wg, bool enable_ha
                 PrettyPrinter::print(wg->total_mem_used(), TUnit::BYTES),
                 PrettyPrinter::print(wg_high_water_mark_limit, TUnit::BYTES),
                 PrettyPrinter::print(memtable_usage, TUnit::BYTES),
-                (double)(wg->total_mem_used()) / wg_mem_limit);
+                (double)(wg->total_mem_used()) / 
static_cast<double>(wg_mem_limit));
     }
 
     // If reached low watermark and wg is not enable memory overcommit, then 
enable load buffer limit
@@ -1009,7 +1011,7 @@ void 
WorkloadGroupMgr::update_queries_limit_(WorkloadGroupPtr wg, bool enable_ha
             } else {
                 // If the query enable hard limit, then not use weighted info 
any more, just use the settings limit.
                 query_weighted_mem_limit =
-                        (int64_t)((wg_high_water_mark_except_load *
+                        
(int64_t)((static_cast<double>(wg_high_water_mark_except_load) *
                                    
resource_ctx->task_controller()->get_slot_count() * 1.0) /
                                   total_slot_count);
                 expected_query_weighted_mem_limit = query_weighted_mem_limit;
@@ -1021,7 +1023,8 @@ void 
WorkloadGroupMgr::update_queries_limit_(WorkloadGroupPtr wg, bool enable_ha
             // numerator `+ total_used_slot_count` ensures that the result is 
greater than 1.
             expected_query_weighted_mem_limit =
                     total_used_slot_count > 0
-                            ? (int64_t)((wg_high_water_mark_except_load + 
total_used_slot_count) *
+                            ? 
(int64_t)(static_cast<double>(wg_high_water_mark_except_load +
+                                                            
total_used_slot_count) *
                                         
resource_ctx->task_controller()->get_slot_count() * 1.0 /
                                         total_used_slot_count)
                             : wg_high_water_mark_except_load;
@@ -1068,4 +1071,6 @@ Status WorkloadGroupMgr::create_internal_wg() {
     return Status::OK();
 }
 
+#include "common/compile_check_end.h"
+
 } // namespace doris


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to