index c5bd1bf4f1312e2af0b42f5982cc21814f249cd3..8eab0e90124da4558f4080bbf7f171d143738c8b 100644 (file)
--- a/program/src/rrd_update.c
+++ b/program/src/rrd_update.c
+
/*****************************************************************************
* RRDtool 1.2.99907080300 Copyright by Tobi Oetiker, 1997-2007
*****************************************************************************
}
#ifdef DEBUG
fprintf(stderr, "PDP UPD ds[%lu]\t"
+ "elapsed_pdp_st %lu\t"
"pdp_temp %10.2f\t"
"new_prep %10.2f\t"
"new_unkn_sec %5lu\n",
- ds_idx, pdp_temp[ds_idx],
+ ds_idx,
+ elapsed_pdp_st,
+ pdp_temp[ds_idx],
rrd->pdp_prep[ds_idx].scratch[PDP_val].u_val,
rrd->pdp_prep[ds_idx].scratch[PDP_unkn_sec_cnt].u_cnt);
#endif
double interval,
double pre_int,
double post_int,
- long diff_pdp_st,
+ long diff_pdp_st, /* number of seconds in full steps passed since last update */
rrd_value_t *pdp_new,
rrd_value_t *pdp_temp)
{
if (isnan(pdp_new[ds_idx])) {
- /* a final bit of unknown to be added bevore calculation
+ /* a final bit of unknown to be added before calculation
we use a temporary variable for this so that we
don't have to turn integer lines before using the value */
pre_unknown = pre_int;
/* if too much of the pdp_prep is unknown we dump it */
/* if the interval is larger thatn mrhb we get NAN */
if ((interval > mrhb) ||
- (diff_pdp_st <= (signed) scratch[PDP_unkn_sec_cnt].u_cnt)) {
+ (rrd->stat_head->pdp_step / 2.0 <
+ (signed) scratch[PDP_unkn_sec_cnt].u_cnt)) {
pdp_temp[ds_idx] = DNAN;
} else {
pdp_temp[ds_idx] = scratch[PDP_val].u_val /
int UNUSED(i),
int UNUSED(ii)
#endif
-)
+ )
{
if (isnan(cdp_val)) {
if (current_cf == CF_AVERAGE) {