summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStelios Fragkakis <52996999+stelfrag@users.noreply.github.com>2023-10-18 10:27:42 +0300
committerTasos Katsoulas <tasos@netdata.cloud>2023-10-26 13:31:38 +0300
commitc93aa31d67978a6211a0dbafb85f7e01d77c003a (patch)
tree4b76899052ce54aefe75d4473908994d85ccef05
parent250a04cd7d6f08d7e2b4b47276f25686d4e816b1 (diff)
Fix statistics calculation in 32bit systems (#16222)
Use uint64_t for calculations (cherry picked from commit 0801f5bdce26f85af0b99ab1f902a1b3b661b96d)
-rw-r--r--database/engine/rrdengine.c4
-rw-r--r--database/engine/rrdengine.h2
-rw-r--r--database/rrd.h2
3 files changed, 4 insertions, 4 deletions
diff --git a/database/engine/rrdengine.c b/database/engine/rrdengine.c
index ce363183d3..99257b79d6 100644
--- a/database/engine/rrdengine.c
+++ b/database/engine/rrdengine.c
@@ -1427,8 +1427,8 @@ static void *query_prep_tp_worker(struct rrdengine_instance *ctx __maybe_unused,
return data;
}
-unsigned rrdeng_target_data_file_size(struct rrdengine_instance *ctx) {
- unsigned target_size = ctx->config.max_disk_space / TARGET_DATAFILES;
+uint64_t rrdeng_target_data_file_size(struct rrdengine_instance *ctx) {
+ uint64_t target_size = ctx->config.max_disk_space / TARGET_DATAFILES;
target_size = MIN(target_size, MAX_DATAFILE_SIZE);
target_size = MAX(target_size, MIN_DATAFILE_SIZE);
return target_size;
diff --git a/database/engine/rrdengine.h b/database/engine/rrdengine.h
index b5476930ae..08eaf4128a 100644
--- a/database/engine/rrdengine.h
+++ b/database/engine/rrdengine.h
@@ -476,7 +476,7 @@ void pdc_route_synchronously(struct rrdengine_instance *ctx, struct page_details
void pdc_acquire(PDC *pdc);
bool pdc_release_and_destroy_if_unreferenced(PDC *pdc, bool worker, bool router);
-unsigned rrdeng_target_data_file_size(struct rrdengine_instance *ctx);
+uint64_t rrdeng_target_data_file_size(struct rrdengine_instance *ctx);
struct page_descr_with_data *page_descriptor_get(void);
diff --git a/database/rrd.h b/database/rrd.h
index 197ec45cb3..9c5ad6f2f1 100644
--- a/database/rrd.h
+++ b/database/rrd.h
@@ -465,7 +465,7 @@ static inline uint64_t storage_engine_disk_space_max(STORAGE_ENGINE_BACKEND back
}
uint64_t rrdeng_disk_space_used(STORAGE_INSTANCE *db_instance);
-static inline size_t storage_engine_disk_space_used(STORAGE_ENGINE_BACKEND backend __maybe_unused, STORAGE_INSTANCE *db_instance __maybe_unused) {
+static inline uint64_t storage_engine_disk_space_used(STORAGE_ENGINE_BACKEND backend __maybe_unused, STORAGE_INSTANCE *db_instance __maybe_unused) {
#ifdef ENABLE_DBENGINE
if(likely(backend == STORAGE_ENGINE_BACKEND_DBENGINE))
return rrdeng_disk_space_used(db_instance);