summaryrefslogtreecommitdiffstats
path: root/database
diff options
context:
space:
mode:
authorCosta Tsaousis <costa@netdata.cloud>2022-09-07 15:28:30 +0300
committerGitHub <noreply@github.com>2022-09-07 15:28:30 +0300
commit3f6a75250d8251b0142248ed2f33f7d857ee21c8 (patch)
treef8fd7544a2fb509b295e6bd5267baab6014bc787 /database
parent17e0676b5bb6b11ad9aec705ade05163dcc2de31 (diff)
Obsolete RRDSET state (#13635)
* move chart_labels to rrdset * rename chart_labels to rrdlabels * renamed hash_id to uuid * turned is_ar_chart into an rrdset flag * removed rrdset state * removed unused senders_connected member of rrdhost * removed unused host flag RRDHOST_FLAG_MULTIHOST * renamed rrdhost host_labels to rrdlabels * Update exporting unit tests Co-authored-by: Vladimir Kobal <vlad@prokk.net>
Diffstat (limited to 'database')
-rw-r--r--database/rrd.h31
-rw-r--r--database/rrdcalc.c10
-rw-r--r--database/rrdcalctemplate.c2
-rw-r--r--database/rrdcontext.c16
-rw-r--r--database/rrddim.c4
-rw-r--r--database/rrdhost.c18
-rw-r--r--database/rrdlabels.c8
-rw-r--r--database/rrdset.c21
-rw-r--r--database/sqlite/sqlite_aclk.c2
-rw-r--r--database/sqlite/sqlite_aclk_chart.c6
-rw-r--r--database/sqlite/sqlite_aclk_node.c2
-rw-r--r--database/sqlite/sqlite_functions.c4
12 files changed, 60 insertions, 64 deletions
diff --git a/database/rrd.h b/database/rrd.h
index 4c3b13dfb1..f473e308ac 100644
--- a/database/rrd.h
+++ b/database/rrd.h
@@ -445,14 +445,6 @@ struct rrddim_tier {
extern void rrdr_fill_tier_gap_from_smaller_tiers(RRDDIM *rd, int tier, time_t now);
// ----------------------------------------------------------------------------
-// volatile state per chart
-struct rrdset_volatile {
- uuid_t hash_id;
- DICTIONARY *chart_labels;
- bool is_ar_chart;
-};
-
-// ----------------------------------------------------------------------------
// these loop macros make sure the linked list is accessed with the right lock
#define rrddim_foreach_read(rd, st) \
@@ -491,15 +483,21 @@ typedef enum rrdset_flags {
RRDSET_FLAG_ACLK = (1 << 16),
RRDSET_FLAG_PENDING_FOREACH_ALARMS = (1 << 17), // contains dims with uninitialized foreach alarms
RRDSET_FLAG_ANOMALY_DETECTION = (1 << 18), // flag to identify anomaly detection charts.
- RRDSET_FLAG_INDEXED_ID = (1 << 19),
- RRDSET_FLAG_INDEXED_NAME = (1 << 20),
+ RRDSET_FLAG_INDEXED_ID = (1 << 19), // the rrdset is indexed by its id
+ RRDSET_FLAG_INDEXED_NAME = (1 << 20), // the rrdset is indexed by its name
+
+ RRDSET_FLAG_ANOMALY_RATE_CHART = (1 << 21), // the rrdset is for storing anomaly rates for all dimensions
} RRDSET_FLAGS;
#define rrdset_flag_check(st, flag) (__atomic_load_n(&((st)->flags), __ATOMIC_SEQ_CST) & (flag))
#define rrdset_flag_set(st, flag) __atomic_or_fetch(&((st)->flags), flag, __ATOMIC_SEQ_CST)
#define rrdset_flag_clear(st, flag) __atomic_and_fetch(&((st)->flags), ~(flag), __ATOMIC_SEQ_CST)
+#define rrdset_is_ar_chart(st) rrdset_flag_check(st, RRDSET_FLAG_ANOMALY_RATE_CHART)
+
struct rrdset {
+ uuid_t uuid;
+
// ------------------------------------------------------------------------
// the set configuration
@@ -550,8 +548,6 @@ struct rrdset {
uuid_t *chart_uuid; // Store the global GUID for this chart
// this object.
- struct rrdset_volatile *state; // volatile state that is not persistently stored
-
size_t rrddim_page_alignment; // keeps metric pages in alignment when using dbengine
usec_t usec_since_last_update; // the time in microseconds since the last collection of data
@@ -585,6 +581,11 @@ struct rrdset {
void *st_on_file; // compatibility with V019 RRDSET files
// ------------------------------------------------------------------------
+ // chart labels
+
+ DICTIONARY *rrdlabels;
+
+ // ------------------------------------------------------------------------
// the dimensions
DICTIONARY *rrddim_root_index; // the root of the dimensions index
@@ -638,7 +639,6 @@ typedef enum rrdhost_flags {
RRDHOST_FLAG_EXPORTING_SEND = (1 << 3), // send it to external databases
RRDHOST_FLAG_EXPORTING_DONT_SEND = (1 << 4), // don't send it to external databases
RRDHOST_FLAG_ARCHIVED = (1 << 5), // The host is archived, no collected charts yet
- RRDHOST_FLAG_MULTIHOST = (1 << 6), // Host belongs to localhost/megadb
RRDHOST_FLAG_PENDING_FOREACH_ALARMS = (1 << 7), // contains dims with uninitialized foreach alarms
RRDHOST_FLAG_STREAM_LABELS_UPDATE = (1 << 8),
RRDHOST_FLAG_STREAM_LABELS_STOP = (1 << 9),
@@ -842,9 +842,6 @@ struct rrdhost {
// ------------------------------------------------------------------------
// streaming of data from remote hosts - rrdpush
- volatile size_t connected_senders; // when remote hosts are streaming to this
- // host, this is the counter of connected clients
-
time_t senders_connect_time; // the time the last sender was connected
time_t senders_last_chart_command; // the time of the last CHART streaming command
time_t senders_disconnected_time; // the time the last sender was disconnected
@@ -903,7 +900,7 @@ struct rrdhost {
// ------------------------------------------------------------------------
// Support for host-level labels
- DICTIONARY *host_labels;
+ DICTIONARY *rrdlabels;
// ------------------------------------------------------------------------
// indexes
diff --git a/database/rrdcalc.c b/database/rrdcalc.c
index 808e74952a..83dd527325 100644
--- a/database/rrdcalc.c
+++ b/database/rrdcalc.c
@@ -67,8 +67,8 @@ static STRING *rrdcalc_replace_variables(const char *line, RRDCALC *rc) {
temp = buf;
}
else if (!strncmp(var, RRDCALC_VAR_LABEL, RRDCALC_VAR_LABEL_LEN)) {
- if(likely(rc->rrdset && rc->rrdset->state && rc->rrdset->state->chart_labels)) {
- rrdlabels_get_value_to_char_or_null(rc->rrdset->state->chart_labels, &lbl_value, var+RRDCALC_VAR_LABEL_LEN);
+ if(likely(rc->rrdset && rc->rrdset->rrdlabels)) {
+ rrdlabels_get_value_to_char_or_null(rc->rrdset->rrdlabels, &lbl_value, var+RRDCALC_VAR_LABEL_LEN);
if (lbl_value) {
char *buf = find_and_replace(temp, var, lbl_value, m);
freez(temp);
@@ -191,7 +191,7 @@ static inline int rrdcalc_is_matching_rrdset(RRDCALC *rc, RRDSET *st) {
if (rc->plugin_pattern && !simple_pattern_matches(rc->plugin_pattern, rrdset_plugin_name(st)))
return 0;
- if (st->rrdhost->host_labels && rc->host_labels_pattern && !rrdlabels_match_simple_pattern_parsed(st->rrdhost->host_labels, rc->host_labels_pattern, '='))
+ if (st->rrdhost->rrdlabels && rc->host_labels_pattern && !rrdlabels_match_simple_pattern_parsed(st->rrdhost->rrdlabels, rc->host_labels_pattern, '='))
return 0;
return 1;
@@ -672,7 +672,7 @@ static void rrdcalc_labels_unlink_alarm_loop(RRDHOST *host, RRDCALC *alarms) {
continue;
}
- if(!rrdlabels_match_simple_pattern_parsed(host->host_labels, rc->host_labels_pattern, '=')) {
+ if(!rrdlabels_match_simple_pattern_parsed(host->rrdlabels, rc->host_labels_pattern, '=')) {
info("Health configuration for alarm '%s' cannot be applied, because the host %s does not have the label(s) '%s'",
rrdcalc_name(rc),
rrdhost_hostname(host),
@@ -700,7 +700,7 @@ void rrdcalc_labels_unlink() {
if (unlikely(!host->health_enabled))
continue;
- if (host->host_labels) {
+ if (host->rrdlabels) {
rrdhost_wrlock(host);
rrdcalc_labels_unlink_alarm_from_host(host);
diff --git a/database/rrdcalctemplate.c b/database/rrdcalctemplate.c
index 4ba96082ac..0db76d6c04 100644
--- a/database/rrdcalctemplate.c
+++ b/database/rrdcalctemplate.c
@@ -27,7 +27,7 @@ void rrdcalctemplate_check_conditions_and_link(RRDCALCTEMPLATE *rt, RRDSET *st,
if (rt->plugin_pattern && !simple_pattern_matches(rt->plugin_pattern, rrdset_plugin_name(st)))
return;
- if(host->host_labels && rt->host_labels_pattern && !rrdlabels_match_simple_pattern_parsed(host->host_labels, rt->host_labels_pattern, '='))
+ if(host->rrdlabels && rt->host_labels_pattern && !rrdlabels_match_simple_pattern_parsed(host->rrdlabels, rt->host_labels_pattern, '='))
return;
RRDCALC *rc = rrdcalc_create_from_template(host, rt, rrdset_id(st));
diff --git a/database/rrdcontext.c b/database/rrdcontext.c
index dcf8b94e22..8a560b03a0 100644
--- a/database/rrdcontext.c
+++ b/database/rrdcontext.c
@@ -268,7 +268,7 @@ typedef struct rrdinstance {
int update_every; // data collection frequency
RRDSET *rrdset; // pointer to RRDSET when collected, or NULL
- DICTIONARY *rrdlabels; // linked to RRDSET->state->chart_labels or own version
+ DICTIONARY *rrdlabels; // linked to RRDSET->chart_labels or own version
struct rrdcontext *rc;
DICTIONARY *rrdmetrics;
@@ -705,8 +705,8 @@ static void rrdinstance_insert_callback(const char *id __maybe_unused, void *val
if(!ri->name)
ri->name = string_dup(ri->id);
- if(ri->rrdset && ri->rrdset->state) {
- ri->rrdlabels = ri->rrdset->state->chart_labels;
+ if(ri->rrdset) {
+ ri->rrdlabels = ri->rrdset->rrdlabels;
ri->flags &= ~RRD_FLAG_OWN_LABELS; // no need of atomics at the constructor
}
else {
@@ -715,7 +715,7 @@ static void rrdinstance_insert_callback(const char *id __maybe_unused, void *val
}
if(ri->rrdset) {
- if(unlikely((rrdset_flag_check(ri->rrdset, RRDSET_FLAG_HIDDEN)) || (ri->rrdset->state && ri->rrdset->state->is_ar_chart)))
+ if(unlikely((rrdset_flag_check(ri->rrdset, RRDSET_FLAG_HIDDEN)) || rrdset_is_ar_chart(ri->rrdset)))
ri->flags |= RRD_FLAG_HIDDEN; // no need of atomics at the constructor
else
ri->flags &= ~RRD_FLAG_HIDDEN; // no need of atomics at the constructor
@@ -814,7 +814,7 @@ static void rrdinstance_conflict_callback(const char *id __maybe_unused, void *o
if(ri->rrdset && rrd_flag_check(ri, RRD_FLAG_OWN_LABELS)) {
DICTIONARY *old = ri->rrdlabels;
- ri->rrdlabels = ri->rrdset->state->chart_labels;
+ ri->rrdlabels = ri->rrdset->rrdlabels;
rrd_flag_clear(ri, RRD_FLAG_OWN_LABELS);
rrdlabels_destroy(old);
}
@@ -825,7 +825,7 @@ static void rrdinstance_conflict_callback(const char *id __maybe_unused, void *o
}
if(ri->rrdset) {
- if(unlikely((rrdset_flag_check(ri->rrdset, RRDSET_FLAG_HIDDEN)) || (ri->rrdset->state && ri->rrdset->state->is_ar_chart)))
+ if(unlikely((rrdset_flag_check(ri->rrdset, RRDSET_FLAG_HIDDEN)) || rrdset_is_ar_chart(ri->rrdset)))
rrd_flag_set(ri, RRD_FLAG_HIDDEN);
else
rrd_flag_clear(ri, RRD_FLAG_HIDDEN);
@@ -1034,7 +1034,7 @@ static inline void rrdinstance_rrdset_is_freed(RRDSET *st) {
if(!rrd_flag_check(ri, RRD_FLAG_OWN_LABELS)) {
ri->rrdlabels = rrdlabels_create();
- rrdlabels_copy(ri->rrdlabels, st->state->chart_labels);
+ rrdlabels_copy(ri->rrdlabels, st->rrdlabels);
rrd_flag_set(ri, RRD_FLAG_OWN_LABELS);
}
@@ -1995,7 +1995,7 @@ int rrdcontexts_to_json(RRDHOST *host, BUFFER *wb, time_t after, time_t before,
if(options & RRDCONTEXT_OPTION_SHOW_LABELS) {
buffer_sprintf(wb, ",\n\t\"host_labels\": {\n");
- rrdlabels_to_buffer(host->host_labels, wb, "\t\t", ":", "\"", ",\n", NULL, NULL, NULL, NULL);
+ rrdlabels_to_buffer(host->rrdlabels, wb, "\t\t", ":", "\"", ",\n", NULL, NULL, NULL, NULL);
buffer_strcat(wb, "\n\t}");
}
diff --git a/database/rrddim.c b/database/rrddim.c
index 73b83684ce..b1ebeed49a 100644
--- a/database/rrddim.c
+++ b/database/rrddim.c
@@ -64,7 +64,7 @@ inline int rrddim_set_name(RRDSET *st, RRDDIM *rd, const char *name) {
string_freez(rd->name);
rd->name = rrd_string_strdupz(name);
- if (!st->state->is_ar_chart)
+ if (!rrdset_is_ar_chart(st))
rrddimvar_rename_all(rd);
rd->exposed = 0;
@@ -340,7 +340,7 @@ RRDDIM *rrddim_add_custom(RRDSET *st
// append this dimension
DOUBLE_LINKED_LIST_APPEND_UNSAFE(st->dimensions, rd, prev, next);
- if(host->health_enabled && !st->state->is_ar_chart) {
+ if(host->health_enabled && !rrdset_is_ar_chart(st)) {
rrddimvar_create(rd, RRDVAR_TYPE_CALCULATED, NULL, NULL, &rd->last_stored_value, RRDVAR_OPTION_DEFAULT);
rrddimvar_create(rd, RRDVAR_TYPE_COLLECTED, NULL, "_raw", &rd->last_collected_value, RRDVAR_OPTION_DEFAULT);
rrddimvar_create(rd, RRDVAR_TYPE_TIME_T, NULL, "_last_collected_t", &rd->last_collected_time.tv_sec, RRDVAR_OPTION_DEFAULT);
diff --git a/database/rrdhost.c b/database/rrdhost.c
index fe765ca90f..8689380dce 100644
--- a/database/rrdhost.c
+++ b/database/rrdhost.c
@@ -274,7 +274,7 @@ RRDHOST *rrdhost_create(const char *hostname,
#endif
netdata_rwlock_init(&host->rrdhost_rwlock);
- host->host_labels = rrdlabels_create();
+ host->rrdlabels = rrdlabels_create();
netdata_mutex_init(&host->aclk_state_lock);
@@ -1182,7 +1182,7 @@ void rrdhost_free(RRDHOST *host, bool force) {
freez(host->aclk_state.claimed_id);
freez(host->aclk_state.prev_claimed_id);
string_freez(host->tags);
- rrdlabels_destroy(host->host_labels);
+ rrdlabels_destroy(host->rrdlabels);
string_freez(host->os);
string_freez(host->timezone);
string_freez(host->abbrev_timezone);
@@ -1262,7 +1262,7 @@ void rrdhost_save_charts(RRDHOST *host) {
}
static void rrdhost_load_auto_labels(void) {
- DICTIONARY *labels = localhost->host_labels;
+ DICTIONARY *labels = localhost->rrdlabels;
if (localhost->system_info->cloud_provider_type)
rrdlabels_add(labels, "_cloud_provider_type", localhost->system_info->cloud_provider_type, RRDLABEL_SRC_AUTO);
@@ -1343,7 +1343,7 @@ static void rrdhost_load_config_labels(void) {
config_section_wrlock(co);
struct config_option *cv;
for(cv = co->values; cv ; cv = cv->next) {
- rrdlabels_add(localhost->host_labels, cv->name, cv->value, RRDLABEL_SRC_CONFIG);
+ rrdlabels_add(localhost->rrdlabels, cv->name, cv->value, RRDLABEL_SRC_CONFIG);
cv->flags |= CONFIG_VALUE_USED;
}
config_section_unlock(co);
@@ -1367,7 +1367,7 @@ static void rrdhost_load_kubernetes_labels(void) {
char buffer[1000 + 1];
while (fgets(buffer, 1000, fp) != NULL)
- rrdlabels_add_pair(localhost->host_labels, buffer, RRDLABEL_SRC_AUTO|RRDLABEL_SRC_K8S);
+ rrdlabels_add_pair(localhost->rrdlabels, buffer, RRDLABEL_SRC_AUTO|RRDLABEL_SRC_K8S);
// Non-zero exit code means that all the script output is error messages. We've shown already any message that didn't include a ':'
// Here we'll inform with an ERROR that the script failed, show whatever (if anything) was added to the list of labels, free the memory and set the return to null
@@ -1376,17 +1376,17 @@ static void rrdhost_load_kubernetes_labels(void) {
}
void reload_host_labels(void) {
- if(!localhost->host_labels)
- localhost->host_labels = rrdlabels_create();
+ if(!localhost->rrdlabels)
+ localhost->rrdlabels = rrdlabels_create();
- rrdlabels_unmark_all(localhost->host_labels);
+ rrdlabels_unmark_all(localhost->rrdlabels);
// priority is important here
rrdhost_load_config_labels();
rrdhost_load_kubernetes_labels();
rrdhost_load_auto_labels();
- rrdlabels_remove_all_unmarked(localhost->host_labels);
+ rrdlabels_remove_all_unmarked(localhost->rrdlabels);
sql_store_host_labels(localhost);
health_label_log_save(localhost);
diff --git a/database/rrdlabels.c b/database/rrdlabels.c
index 52c88e5083..6ab1ea66b4 100644
--- a/database/rrdlabels.c
+++ b/database/rrdlabels.c
@@ -955,11 +955,11 @@ static int chart_label_store_to_sql_callback(const char *name, const char *value
}
void rrdset_update_rrdlabels(RRDSET *st, DICTIONARY *new_rrdlabels) {
- if(!st->state->chart_labels)
- st->state->chart_labels = rrdlabels_create();
+ if(!st->rrdlabels)
+ st->rrdlabels = rrdlabels_create();
if (new_rrdlabels)
- rrdlabels_migrate_to_these(st->state->chart_labels, new_rrdlabels);
+ rrdlabels_migrate_to_these(st->rrdlabels, new_rrdlabels);
rrdcalc_update_rrdlabels(st);
@@ -967,7 +967,7 @@ void rrdset_update_rrdlabels(RRDSET *st, DICTIONARY *new_rrdlabels) {
BUFFER *sql_buf = buffer_create(1024);
struct label_str tmp = {.sql = sql_buf, .count = 0 };
uuid_unparse_lower(*st->chart_uuid, tmp.uuid_str);
- rrdlabels_walkthrough_read(st->state->chart_labels, chart_label_store_to_sql_callback, &tmp);
+ rrdlabels_walkthrough_read(st->rrdlabels, chart_label_store_to_sql_callback, &tmp);
db_execute(buffer_tostring(sql_buf));
buffer_free(sql_buf);
}
diff --git a/database/rrdset.c b/database/rrdset.c
index 93ea76cc64..d0165f0af1 100644
--- a/database/rrdset.c
+++ b/database/rrdset.c
@@ -373,7 +373,7 @@ void rrdset_free(RRDSET *st) {
netdata_rwlock_destroy(&st->rrdset_rwlock);
rrdset_memory_file_free(st);
- rrdlabels_destroy(st->state->chart_labels);
+ rrdlabels_destroy(st->rrdlabels);
// free directly allocated members
@@ -391,7 +391,6 @@ void rrdset_free(RRDSET *st) {
string_freez(st->module_name);
freez(st->cache_dir);
- freez(st->state);
freez(st->chart_uuid);
freez(st);
@@ -469,11 +468,11 @@ static inline RRDSET *rrdset_find_on_create(RRDHOST *host, const char *fullid) {
}
static inline void rrdset_update_permanent_labels(RRDSET *st) {
- if(!st->state || !st->state->chart_labels) return;
+ if(!st->rrdlabels) return;
- rrdlabels_add(st->state->chart_labels, "_collect_plugin", rrdset_plugin_name(st), RRDLABEL_SRC_AUTO| RRDLABEL_FLAG_PERMANENT);
- rrdlabels_add(st->state->chart_labels, "_collect_module", rrdset_module_name(st), RRDLABEL_SRC_AUTO| RRDLABEL_FLAG_PERMANENT);
- rrdlabels_add(st->state->chart_labels, "_instance_family",rrdset_family(st), RRDLABEL_SRC_AUTO| RRDLABEL_FLAG_PERMANENT);
+ rrdlabels_add(st->rrdlabels, "_collect_plugin", rrdset_plugin_name(st), RRDLABEL_SRC_AUTO| RRDLABEL_FLAG_PERMANENT);
+ rrdlabels_add(st->rrdlabels, "_collect_module", rrdset_module_name(st), RRDLABEL_SRC_AUTO| RRDLABEL_FLAG_PERMANENT);
+ rrdlabels_add(st->rrdlabels, "_instance_family",rrdset_family(st), RRDLABEL_SRC_AUTO| RRDLABEL_FLAG_PERMANENT);
}
RRDSET *rrdset_create_custom(
@@ -667,7 +666,6 @@ RRDSET *rrdset_create_custom(
debug(D_RRD_CALLS, "Creating RRD_STATS for '%s.%s'.", type, id);
st = callocz(1, sizeof(RRDSET));
- st->state = callocz(1, sizeof(*st->state));
st->id = string_strdupz(fullid); // fullid is already json_fix'ed
@@ -690,7 +688,8 @@ RRDSET *rrdset_create_custom(
st->type = rrd_string_strdupz(type);
st->family = family ? rrd_string_strdupz(family) : string_dup(st->type);
- st->state->is_ar_chart = strcmp(rrdset_id(st), ML_ANOMALY_RATES_CHART_ID) == 0;
+ if(strcmp(rrdset_id(st), ML_ANOMALY_RATES_CHART_ID) == 0)
+ rrdset_flag_set(st, RRDSET_FLAG_ANOMALY_RATE_CHART);
st->units = rrd_string_strdupz(units);
@@ -718,7 +717,7 @@ RRDSET *rrdset_create_custom(
);
netdata_rwlock_init(&st->rrdset_rwlock);
- st->state->chart_labels = rrdlabels_create();
+ st->rrdlabels = rrdlabels_create();
rrdset_update_permanent_labels(st);
if(name && *name && rrdset_set_name(st, name))
@@ -1264,7 +1263,7 @@ void rrdset_done(RRDSET *st) {
rrdset_rdlock(st);
#ifdef ENABLE_ACLK
- if (likely(!st->state->is_ar_chart)) {
+ if (likely(!rrdset_is_ar_chart(st))) {
if (unlikely(!rrdset_flag_check(st, RRDSET_FLAG_ACLK))) {
if (likely(st->dimensions && st->counter_done && !queue_chart_to_aclk(st))) {
rrdset_flag_set(st, RRDSET_FLAG_ACLK);
@@ -1693,7 +1692,7 @@ after_second_database_work:
continue;
#ifdef ENABLE_ACLK
- if (likely(!st->state->is_ar_chart)) {
+ if (likely(!rrdset_is_ar_chart(st))) {
if (!rrddim_flag_check(rd, RRDDIM_FLAG_HIDDEN) && likely(rrdset_flag_check(st, RRDSET_FLAG_ACLK)))
queue_dimension_to_aclk(rd, calc_dimension_liveness(rd, mark));
}
diff --git a/database/sqlite/sqlite_aclk.c b/database/sqlite/sqlite_aclk.c
index 1312aa5712..33a8a077de 100644
--- a/database/sqlite/sqlite_aclk.c
+++ b/database/sqlite/sqlite_aclk.c
@@ -313,7 +313,7 @@ static int create_host_callback(void *data, int argc, char **argv, char **column
, 1
);
if (likely(host))
- host->host_labels = sql_load_host_labels((uuid_t *)argv[IDX_HOST_ID]);
+ host->rrdlabels = sql_load_host_labels((uuid_t *)argv[IDX_HOST_ID]);
#ifdef NETDATA_INTERNAL_CHECKS
char node_str[UUID_STR_LEN] = "<none>";
diff --git a/database/sqlite/sqlite_aclk_chart.c b/database/sqlite/sqlite_aclk_chart.c
index 8e7bb6ba07..882b8d83c8 100644
--- a/database/sqlite/sqlite_aclk_chart.c
+++ b/database/sqlite/sqlite_aclk_chart.c
@@ -150,7 +150,7 @@ int aclk_add_chart_event(struct aclk_database_worker_config *wc, struct aclk_dat
if (likely(claim_id)) {
struct chart_instance_updated chart_payload;
memset(&chart_payload, 0, sizeof(chart_payload));
- chart_payload.config_hash = get_str_from_uuid(&st->state->hash_id);
+ chart_payload.config_hash = get_str_from_uuid(&st->uuid);
chart_payload.update_every = st->update_every;
chart_payload.memory_mode = st->rrd_memory_mode;
chart_payload.name = (char *)rrdset_name(st);
@@ -159,7 +159,7 @@ int aclk_add_chart_event(struct aclk_database_worker_config *wc, struct aclk_dat
chart_payload.id = strdupz(rrdset_id(st));
chart_payload.chart_labels = rrdlabels_create();
- rrdlabels_copy(chart_payload.chart_labels, st->state->chart_labels);
+ rrdlabels_copy(chart_payload.chart_labels, st->rrdlabels);
size_t size;
char *payload = generate_chart_instance_updated(&size, &chart_payload);
@@ -1265,7 +1265,7 @@ struct aclk_chart_sync_stats *aclk_get_chart_sync_stats(RRDHOST *host)
void sql_check_chart_liveness(RRDSET *st) {
RRDDIM *rd;
- if (unlikely(st->state->is_ar_chart))
+ if (unlikely(rrdset_is_ar_chart(st)))
return;
rrdset_rdlock(st);
diff --git a/database/sqlite/sqlite_aclk_node.c b/database/sqlite/sqlite_aclk_node.c
index 246d5d0536..6a6372edd8 100644
--- a/database/sqlite/sqlite_aclk_node.c
+++ b/database/sqlite/sqlite_aclk_node.c
@@ -123,7 +123,7 @@ void sql_build_node_info(struct aclk_database_worker_config *wc, struct aclk_dat
node_info.data.ml_info.ml_capable = host->system_info->ml_capable;
node_info.data.ml_info.ml_enabled = host->system_info->ml_enabled;
- node_info.data.host_labels_ptr = host->host_labels;
+ node_info.data.host_labels_ptr = host->rrdlabels;
aclk_update_node_info(&node_info);
log_access("ACLK RES [%s (%s)]: NODE INFO SENT for guid [%s] (%s)", wc->node_id, rrdhost_hostname(wc->host), wc->host_guid, wc->host == localhost ? "parent" : "child");
diff --git a/database/sqlite/sqlite_functions.c b/database/sqlite/sqlite_functions.c
index c0724ba9e3..c470e4c1de 100644
--- a/database/sqlite/sqlite_functions.c
+++ b/database/sqlite/sqlite_functions.c
@@ -2122,7 +2122,7 @@ void compute_chart_hash(RRDSET *st)
char uuid_str[GUID_LEN + 1];
uuid_unparse_lower(*((uuid_t *) &hash_value), uuid_str);
//info("Calculating HASH %s for chart %s", uuid_str, st->name);
- uuid_copy(st->state->hash_id, *((uuid_t *) &hash_value));
+ uuid_copy(st->uuid, *((uuid_t *) &hash_value));
(void)sql_store_chart_hash(
(uuid_t *)&hash_value,
@@ -2710,7 +2710,7 @@ void sql_store_host_labels(RRDHOST *host)
if (rc != SQLITE_OK)
error_report("Failed to remove old host labels for host %s", rrdhost_hostname(host));
- rrdlabels_walkthrough_read(host->host_labels, save_host_label_callback, host);
+ rrdlabels_walkthrough_read(host->rrdlabels, save_host_label_callback, host);
}
#define SELECT_HOST_LABELS "SELECT label_key, label_value, source_type FROM host_label WHERE host_id = @host_id " \