Bug 10849

Summary: Upgrading rrdtool from 1.4.9 => 1.5.3: leads to errors displaying 'load' and 'sda' graphs
Product: IPFire Reporter: Matthias Fischer <matthias.fischer>
Component: ---Assignee: Assigned to nobody - feel free to grab it and work on it <nobody>
Status: CLOSED FIXED QA Contact:
Severity: Minor Usability    
Priority: - Unknown - CC: bbitsch, michael.tremer
Version: 2   
Hardware: all   
OS: Linux   
Attachments: Fixes for 'graphs.pl'.

Description Matthias Fischer 2015-05-16 12:35:13 UTC
Hi,

Affected system:
"IPFire 2.17 (i586) - core89"

After building and installing a new version of 'rrdtool 1.5.3', I suddenly couldn't get two specific rrd-graphs to work, no matter what I did.

'rrdtool 1.4.9' worked perfect, but with 1.5.3 these specific graphs couldn't be shown anymore.

Firefox complained: "The image ... cannot be displayed because it contains errors".

Using IE 11, I got the following error messages:

Load Graph:

"Error in RRD::graph for load: Unused Arguments "" in command : AREA:load1#FF0000:1Minute:"

sda Graph:

"Error in RRD::graph for sda: don't undestand '-INF,*'" [sic!]

Solution/Workaround:
After some research I found that the *first* error with the 'load'-graph was triggered by these lines in '/var/ipfire/graphs.pl' (line ~260ff):

...
"AREA:load1".$color{"color13"}."A0:1 ".$Lang::tr{'minute'}.":",
...
"AREA:load5".$color{"color18"}."A0:5 ".$Lang::tr{'minutes'}.":",
...
"AREA:load15".$color{"color14"}."A0:15 ".$Lang::tr{'minutes'}.":",
... 

After removing .":" at the end of each of these lines, the "load"-graphs were displayed again, everything seemed to be ok. I tested with 'rrdtool 1.4.9', it still worked.

Workaround for sda Graph - this was triggered by 'graphs.pl', too:

After commenting two lines in 'graphs.pl' (line 522 and 529), sda-graph was displayed again, missing the 'standby'-display:

...
#        "CDEF:st1=standby,-INF,*",
...
#        "AREA:st1".$color{"color20"}."A0:standby\\j",
...

Regards
Matthias
Comment 1 Bernhard Bitsch 2015-05-17 11:23:57 UTC
Topic 1 is just a syntax error, which is found now in version 1.5.x
Topic 2 uses the constant INF in a inconsistent way. The docs of v1.5.x state 'negative infinity' as NEGINF.
Comment 2 Matthias Fischer 2015-05-17 13:28:26 UTC
Created attachment 349 [details]
Fixes for 'graphs.pl'.
Comment 3 Matthias Fischer 2015-05-17 13:31:07 UTC
YES!

Thanks Bernhard. Next time I know where to look at.

I changed lines for load-graph as described above and "-INF" to "NEGINF" => graphs are working again.

Proposed patch for Core 89 is attached.

Thanks again!

Regards
Matthias
Comment 4 Michael Tremer 2015-11-10 18:31:29 UTC
I believe this has been shipped.