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]