summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCosta Tsaousis <costa@netdata.cloud>2022-11-15 23:41:42 +0200
committerGitHub <noreply@github.com>2022-11-15 23:41:42 +0200
commit1789d07c43182152437459a7a4f81267bbdd752c (patch)
tree66899d67abf870bd1d3960543fde3aaf915439d1
parent2de2e45656dc9875326d7d0e0f76de61d1377e2a (diff)
Revert "enable dbengine tiering by default" (#13999)
Revert "enable dbengine tiering by default (#13914)" This reverts commit 2de2e45656dc9875326d7d0e0f76de61d1377e2a.
-rw-r--r--daemon/main.c4
-rwxr-xr-x[-rw-r--r--]database/engine/rrdengineapi.c7
-rw-r--r--database/engine/rrdenginelib.c4
-rw-r--r--database/rrd.h2
-rw-r--r--database/rrdhost.c15
5 files changed, 11 insertions, 21 deletions
diff --git a/daemon/main.c b/daemon/main.c
index e81d3d6307..6c189fead7 100644
--- a/daemon/main.c
+++ b/daemon/main.c
@@ -679,7 +679,7 @@ static void get_netdata_configured_variables() {
// get default Database Engine page cache size in MiB
db_engine_use_malloc = config_get_boolean(CONFIG_SECTION_DB, "dbengine page cache with malloc", CONFIG_BOOLEAN_NO);
- default_rrdeng_page_cache_mb = (int) config_get_number(CONFIG_SECTION_DB, "dbengine page cache size MB", storage_tiers_cache_quota_mb[0]);
+ default_rrdeng_page_cache_mb = (int) config_get_number(CONFIG_SECTION_DB, "dbengine page cache size MB", default_rrdeng_page_cache_mb);
db_engine_journal_indexing = config_get_boolean(CONFIG_SECTION_DB, "dbengine enable journal indexing", CONFIG_BOOLEAN_YES);
db_engine_journal_check = config_get_boolean(CONFIG_SECTION_DB, "dbengine enable journal integrity check", CONFIG_BOOLEAN_NO);
@@ -692,7 +692,7 @@ static void get_netdata_configured_variables() {
// ------------------------------------------------------------------------
// get default Database Engine disk space quota in MiB
- default_rrdeng_disk_quota_mb = (int) config_get_number(CONFIG_SECTION_DB, "dbengine disk space MB", storage_tiers_disk_quota_mb[0]);
+ default_rrdeng_disk_quota_mb = (int) config_get_number(CONFIG_SECTION_DB, "dbengine disk space MB", default_rrdeng_disk_quota_mb);
if(default_rrdeng_disk_quota_mb < RRDENG_MIN_DISK_SPACE_MB) {
error("Invalid dbengine disk space %d given. Defaulting to %d.", default_rrdeng_disk_quota_mb, RRDENG_MIN_DISK_SPACE_MB);
default_rrdeng_disk_quota_mb = RRDENG_MIN_DISK_SPACE_MB;
diff --git a/database/engine/rrdengineapi.c b/database/engine/rrdengineapi.c
index febe3d53f9..642c71f34b 100644..100755
--- a/database/engine/rrdengineapi.c
+++ b/database/engine/rrdengineapi.c
@@ -30,12 +30,11 @@ __attribute__((constructor)) void initialize_multidb_ctx(void) {
int db_engine_use_malloc = 0;
int default_rrdeng_page_fetch_timeout = 3;
int default_rrdeng_page_fetch_retries = 3;
-int default_rrdeng_page_cache_mb = RRDENG_MIN_PAGE_CACHE_SIZE_MB * 4; // not used for default - use storage_tiers_cache_quota_mb[0]
-int default_rrdeng_disk_quota_mb = RRDENG_MIN_DISK_SPACE_MB * 4; // not used for default - use storage_tiers_disk_quota_mb[0]
-int default_multidb_disk_quota_mb = RRDENG_MIN_DISK_SPACE_MB * 4; // not used for default - use storage_tiers_disk_quota_mb[0]
+int default_rrdeng_page_cache_mb = 32;
int db_engine_journal_indexing = 1;
int db_engine_journal_check = 0;
-
+int default_rrdeng_disk_quota_mb = 256;
+int default_multidb_disk_quota_mb = 256;
/* Default behaviour is to unblock data collection if the page cache is full of dirty pages by dropping metrics */
uint8_t rrdeng_drop_metrics_under_page_cache_pressure = 1;
diff --git a/database/engine/rrdenginelib.c b/database/engine/rrdenginelib.c
index 36582ff846..58bd9c4375 100644
--- a/database/engine/rrdenginelib.c
+++ b/database/engine/rrdenginelib.c
@@ -292,7 +292,7 @@ int compute_multidb_diskspace()
if (computed_multidb_disk_quota_mb == -1) {
int rc = count_legacy_children(netdata_configured_cache_dir);
if (likely(rc >= 0)) {
- computed_multidb_disk_quota_mb = (rc + 1) * (int)storage_tiers_disk_quota_mb[0];
+ computed_multidb_disk_quota_mb = (rc + 1) * default_rrdeng_disk_quota_mb;
info("Found %d legacy dbengines, setting multidb diskspace to %dMB", rc, computed_multidb_disk_quota_mb);
fp = fopen(multidb_disk_space_file, "w");
@@ -304,7 +304,7 @@ int compute_multidb_diskspace()
error("Failed to store the default multidb disk quota size on '%s'", multidb_disk_space_file);
}
else
- computed_multidb_disk_quota_mb = (int)storage_tiers_disk_quota_mb[0];
+ computed_multidb_disk_quota_mb = default_rrdeng_disk_quota_mb;
}
return computed_multidb_disk_quota_mb;
diff --git a/database/rrd.h b/database/rrd.h
index 7a0df3339c..de7b12ea2f 100644
--- a/database/rrd.h
+++ b/database/rrd.h
@@ -58,8 +58,6 @@ struct pg_cache_page_index;
extern bool dbengine_enabled;
extern size_t storage_tiers;
extern size_t storage_tiers_grouping_iterations[RRD_STORAGE_TIERS];
-extern size_t storage_tiers_disk_quota_mb[RRD_STORAGE_TIERS];
-extern size_t storage_tiers_cache_quota_mb[RRD_STORAGE_TIERS];
typedef enum {
RRD_BACKFILL_NONE,
diff --git a/database/rrdhost.c b/database/rrdhost.c
index 2121bca83f..20a6df0fe7 100644
--- a/database/rrdhost.c
+++ b/database/rrdhost.c
@@ -4,10 +4,8 @@
#include "rrd.h"
bool dbengine_enabled = false; // will become true if and when dbengine is initialized
-size_t storage_tiers = 1; // this default is not used - 3 when dbengine is used, 1 otherwise
+size_t storage_tiers = 1;
size_t storage_tiers_grouping_iterations[RRD_STORAGE_TIERS] = { 1, 60, 60, 60, 60 };
-size_t storage_tiers_disk_quota_mb[RRD_STORAGE_TIERS] = { RRDENG_MIN_DISK_SPACE_MB * 4, RRDENG_MIN_DISK_SPACE_MB * 2, RRDENG_MIN_DISK_SPACE_MB, RRDENG_MIN_DISK_SPACE_MB, RRDENG_MIN_DISK_SPACE_MB };
-size_t storage_tiers_cache_quota_mb[RRD_STORAGE_TIERS] = { RRDENG_MIN_PAGE_CACHE_SIZE_MB * 4, RRDENG_MIN_PAGE_CACHE_SIZE_MB * 2, RRDENG_MIN_PAGE_CACHE_SIZE_MB, RRDENG_MIN_PAGE_CACHE_SIZE_MB, RRDENG_MIN_PAGE_CACHE_SIZE_MB };
RRD_BACKFILL storage_tiers_backfill[RRD_STORAGE_TIERS] = { RRD_BACKFILL_NEW, RRD_BACKFILL_NEW, RRD_BACKFILL_NEW, RRD_BACKFILL_NEW, RRD_BACKFILL_NEW };
#if RRD_STORAGE_TIERS != 5
@@ -758,7 +756,7 @@ inline int rrdhost_should_be_removed(RRDHOST *host, RRDHOST *protected_host, tim
void dbengine_init(char *hostname) {
#ifdef ENABLE_DBENGINE
- storage_tiers = config_get_number(CONFIG_SECTION_DB, "storage tiers", (default_rrd_memory_mode == RRD_MEMORY_MODE_DBENGINE) ? 3 : 1);
+ storage_tiers = config_get_number(CONFIG_SECTION_DB, "storage tiers", storage_tiers);
if(storage_tiers < 1) {
error("At least 1 storage tier is required. Assuming 1.");
storage_tiers = 1;
@@ -769,11 +767,6 @@ void dbengine_init(char *hostname) {
storage_tiers = RRD_STORAGE_TIERS;
config_set_number(CONFIG_SECTION_DB, "storage tiers", storage_tiers);
}
- if(default_rrd_memory_mode != RRD_MEMORY_MODE_DBENGINE && storage_tiers != 1) {
- error("Host '%s': only 1 database tier can be supported without dbengine.", hostname);
- storage_tiers = 1;
- config_set_number(CONFIG_SECTION_DB, "storage tiers", storage_tiers);
- }
default_rrdeng_page_fetch_timeout = (int) config_get_number(CONFIG_SECTION_DB, "dbengine page fetch timeout secs", PAGE_CACHE_FETCH_WAIT_TIMEOUT);
if (default_rrdeng_page_fetch_timeout < 1) {
@@ -809,8 +802,8 @@ void dbengine_init(char *hostname) {
break;
}
- int page_cache_mb = (int)storage_tiers_cache_quota_mb[tier];
- int disk_space_mb = (int)storage_tiers_disk_quota_mb[tier];
+ int page_cache_mb = default_rrdeng_page_cache_mb;
+ int disk_space_mb = default_multidb_disk_quota_mb;
size_t grouping_iterations = storage_tiers_grouping_iterations[tier];
RRD_BACKFILL backfill = storage_tiers_backfill[tier];