@cryptotaxi247 / netdata-1 / commits / f7b2db2b5

fix backfilling statistics (#14074)

Costa Tsaousis committed Dec 1, 2022 at 15:56 UTC f7b2db2b59b16b6e31b1d84941e68e44f6301bc9
1 file changed +5 -5
web/api/queries/query.c
+5 -5
@@ -1496,15 +1496,15 @@ void rrdr_fill_tier_gap_from_smaller_tiers(RRDDIM *rd, size_t tier, time_t now)
1496 struct storage_engine_query_handle handle;
1497
1498 // for each lower tier
1499 - for(int tr = (int)tier - 1; tr >= 0 ;tr--){
1500 - time_t smaller_tier_first_time = rd->tiers[tr]->query_ops->oldest_time(rd->tiers[tr]->db_metric_handle);
1501 - time_t smaller_tier_last_time = rd->tiers[tr]->query_ops->latest_time(rd->tiers[tr]->db_metric_handle);
1499 + for(int read_tier = (int)tier - 1; read_tier >= 0 ; read_tier--){
1500 + time_t smaller_tier_first_time = rd->tiers[read_tier]->query_ops->oldest_time(rd->tiers[read_tier]->db_metric_handle);
1501 + time_t smaller_tier_last_time = rd->tiers[read_tier]->query_ops->latest_time(rd->tiers[read_tier]->db_metric_handle);
1502 if(smaller_tier_last_time <= latest_time_t) continue; // it is as bad as we are
1503
1504 long after_wanted = (latest_time_t < smaller_tier_first_time) ? smaller_tier_first_time : latest_time_t;
1505 long before_wanted = smaller_tier_last_time;
1506
1507 - struct rrddim_tier *tmp = rd->tiers[tr];
1507 + struct rrddim_tier *tmp = rd->tiers[read_tier];
1508 tmp->query_ops->init(tmp->db_metric_handle, &handle, after_wanted, before_wanted);
1509
1510 size_t points_read = 0;
@@ -1516,7 +1516,7 @@ void rrdr_fill_tier_gap_from_smaller_tiers(RRDDIM *rd, size_t tier, time_t now)
1516
1517 if(sp.end_time > latest_time_t) {
1518 latest_time_t = sp.end_time;
1519 - store_metric_at_tier(rd, tr, t, sp, sp.end_time * USEC_PER_SEC);
1519 + store_metric_at_tier(rd, tier, t, sp, sp.end_time * USEC_PER_SEC);
1520 }
1521 }
1522