aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--js/RrdDataFile.js10
1 files changed, 6 insertions, 4 deletions
diff --git a/js/RrdDataFile.js b/js/RrdDataFile.js
index 2c0e846..08cc3ae 100644
--- a/js/RrdDataFile.js
+++ b/js/RrdDataFile.js
@@ -60,11 +60,13 @@ RrdDataFile.prototype = {
60 for (i = 0; i < rra_cnt; i++) { 60 for (i = 0; i < rra_cnt; i++) {
61 rra = rrd.getRRAInfo(i); 61 rra = rrd.getRRAInfo(i);
62 if (RrdGraphDesc.cf_conv(rra.getCFName()) === cf_idx) { 62 if (RrdGraphDesc.cf_conv(rra.getCFName()) === cf_idx) {
63 cal_end = (rrd.getLastUpdate() - (rrd.getLastUpdate() % (rra.getPdpPerRow() * rra.pdp_step))); 63 /* covered seconds in this RRA */
64 cal_start = (cal_end - (rra.getPdpPerRow() * rra.row_cnt * rra.pdp_step)); 64 var range_secs = rra.getStep();
65 cal_end = rrd.getLastUpdate() - (rrd.getLastUpdate() % range_secs);
66 cal_start = cal_end - (range_secs * rra.row_cnt);
65 full_match = gdp.end - gdp.start; 67 full_match = gdp.end - gdp.start;
66 68
67 tmp_step_diff = Math.abs(ft_step - (rrd.getMinStep() * rra.pdp_cnt)); 69 tmp_step_diff = Math.abs(ft_step - range_secs);
68 if (cal_start <= gdp.start) { 70 if (cal_start <= gdp.start) {
69 if (first_full || (tmp_step_diff < best_full_step_diff)) { 71 if (first_full || (tmp_step_diff < best_full_step_diff)) {
70 first_full = 0; 72 first_full = 0;
@@ -91,7 +93,7 @@ RrdDataFile.prototype = {
91 var rra_info = rrd.getRRAInfo(chosen_rra); 93 var rra_info = rrd.getRRAInfo(chosen_rra);
92 rra = rrd.getRRA(chosen_rra); 94 rra = rrd.getRRA(chosen_rra);
93 95
94 ft_step = rrd.rrd_header.pdp_step * rra_info.getPdpPerRow(); 96 ft_step = rra_info.getStep();
95 gdp.start -= (gdp.start % ft_step); 97 gdp.start -= (gdp.start % ft_step);
96 gdp.end += (ft_step - gdp.end % ft_step); 98 gdp.end += (ft_step - gdp.end % ft_step);
97 rows = (gdp.end - gdp.start) / ft_step + 1; 99 rows = (gdp.end - gdp.start) / ft_step + 1;