[rrd-developers] Re: LINE2 precision in rrdtool 1.1.x

Stanislav Sinyagin ssinyagin at yahoo.com
Tue Jan 14 13:38:52 MET 2003


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



More information about the rrd-developers mailing list