summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStelios Fragkakis <52996999+stelfrag@users.noreply.github.com>2022-05-31 12:25:39 +0300
committerGitHub <noreply@github.com>2022-05-31 12:25:39 +0300
commit665f7ba25b4934bb040bdf4bd6d53a3d80b72457 (patch)
tree3a89a6401e35ff0aa4b6afbd72f304bf1533f240
parent85096711f2a4fdcb1d3c790287843c64dbd5c171 (diff)
When sending a dimension for the first time, make sure there is a non zero created_at timestamp (#13035)
-rw-r--r--database/sqlite/sqlite_aclk_chart.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/database/sqlite/sqlite_aclk_chart.c b/database/sqlite/sqlite_aclk_chart.c
index 49203608f4..c303c89ace 100644
--- a/database/sqlite/sqlite_aclk_chart.c
+++ b/database/sqlite/sqlite_aclk_chart.c
@@ -1093,6 +1093,11 @@ void queue_dimension_to_aclk(RRDDIM *rd, time_t last_updated)
if (likely(rd->state->aclk_live_status == live))
return;
+ time_t created_at = rd->state->query_ops.oldest_time(rd);
+
+ if (unlikely(!created_at && rd->updated))
+ created_at = rd->last_collected_time.tv_sec;
+
rd->state->aclk_live_status = live;
struct aclk_database_worker_config *wc = rd->rrdset->rrdhost->dbsync_worker;
@@ -1110,7 +1115,7 @@ void queue_dimension_to_aclk(RRDDIM *rd, time_t last_updated)
dim_payload.name = rd->name;
dim_payload.id = rd->id;
dim_payload.chart_id = rd->rrdset->id;
- dim_payload.created_at.tv_sec = rd->state->query_ops.oldest_time(rd);
+ dim_payload.created_at.tv_sec = created_at;
dim_payload.last_timestamp.tv_sec = last_updated;
size_t size = 0;