diff options
Diffstat (limited to 'database')
-rwxr-xr-x[-rw-r--r--] | database/engine/rrdengineapi.c | 7 | ||||
-rw-r--r-- | database/engine/rrdenginelib.c | 4 | ||||
-rw-r--r-- | database/rrd.h | 2 | ||||
-rw-r--r-- | database/rrdhost.c | 15 |
4 files changed, 9 insertions, 19 deletions
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]; |