[rrd-developers] rrdtool 1.1 patch: src/rrd_fetch.c (RRA selection)
Stanislav Sinyagin
ssinyagin at yahoo.com
Thu Jan 16 12:44:51 MET 2003
Hi all,
see the patch and the resulting src/rrd_fetch.c attached.
The problem appeared in the first 5 minutes of each half-hour
interval, e.g. between 12:00 and 12:05, between 12:30 and 12:35 etc.
I tested this patch and didn't find any problems so far.
Regards,
Stan
--- Stanislav Sinyagin <ssinyagin at yahoo.com> wrote:
>
> Hi Tobi and all,
>
> I found the piece of code that does wrong, but I need your
> help in fixing that.
>
> --- Stanislav Sinyagin <ssinyagin at yahoo.com> wrote:
> > Sometimes LINE2 is drawn with a bigger step than it's
> > defined in RRD, though the rrd_graph arguments are
> > the same.
> >
> > See these examples:
> >
> > Correct graph (except that TICK doesn't work):
> > http://ipv6.multikabel.net/render-correct-1.bmp
> >
> > Weird graph:
> > http://ipv6.multikabel.net/render-fault-1.bmp
>
> Thus, the RRD is created with the following RRAs, in the following
> sequence:
> RRA:AVERAGE:0:1:4032
> RRA:AVERAGE:0:6:2016
> RRA:MAX:0:6:2016
> RRA:AVERAGE:0:288:732
> RRA:MAX:0:288:732
>
> Then, with DEBUG enabled in src/rrd_fetch.c, after few thousand of
> looped rrdtool graph runs, I got the following debug output:
>
> Entered rrd_fetch_fn() searching for the best match
> Looking for: start 1042459233 end 1042545633 step 172 rows 502
> Considering: start 979257600 end 1042502400 step 86400 best partial so far
> Considering: start 1038916800 end 1042545600 step 1800 best partial so far
> Considering: start 1041336000 end 1042545600 step 300 partial match, not best
> We found: start 1042459200 end 1042547400 step 1800 rows 49
>
> This means that in the loop at line 208 of src/rrd_fetch.c,
> the condition "if (first_part || best_match < tmp_match)" at line 250
> was false for the row with step 300.
>
> I think that changing the condition to
> "if (first_part || best_match <= tmp_match)"
> would help in my case. But that works only if the RRAs are sorted by
> the step size. This is where I stuck: are the entries in this loop
> sorted or not?
>
> With regards,
>
> Stan.
>
>
>
>
>
> --
> Unsubscribe mailto:rrd-developers-request at list.ee.ethz.ch?subject=unsubscribe
> Help mailto:rrd-developers-request at list.ee.ethz.ch?subject=help
> Archive http://www.ee.ethz.ch/~slist/rrd-developers
> WebAdmin http://www.ee.ethz.ch/~slist/lsg2.cgi
>
-- Attached file removed by Ecartis and put at URL below --
-- Type: text/plain
-- Desc: rrdfetch.stsiny.patch
-- Size: 1k (1259 bytes)
-- URL : http://www.ee.ethz.ch/~slist/pantomime/rrdfetch.stsiny.patch
-- Attached file removed by Ecartis and put at URL below --
-- Type: text/plain
-- Desc: rrd_fetch.c
-- Size: 12k (12737 bytes)
-- URL : http://www.ee.ethz.ch/~slist/pantomime/rrd_fetch.c
--
Unsubscribe mailto:rrd-developers-request at list.ee.ethz.ch?subject=unsubscribe
Help mailto:rrd-developers-request at list.ee.ethz.ch?subject=help
Archive http://www.ee.ethz.ch/~slist/rrd-developers
WebAdmin http://www.ee.ethz.ch/~slist/lsg2.cgi
More information about the rrd-developers
mailing list