[rrd-users] rrdtool 1.3.0 - memory eaten away by mmap.

Raimund Berger raimund.berger at gmail.com
Thu Jun 19 06:59:32 CEST 2008

Tobias Oetiker <tobi at oetiker.ch> writes:

> Hi Raimund,
> Hi Sebastian,
> Yesterday Raimund Berger wrote:
>> Tobias Oetiker <tobi at oetiker.ch> writes:
>> > If it is the strokeing, then the problem should go away when you
>> > call the same graph with AREA instead of LINE
>> Can confirm LINE works in the sense of the call completing gracefully,
>> but it doesn't draw anything. In other words, there is no line drawn
>> where there should be one, from comparing with output from the default
>> rrdtool install (or even rrdtool 1.3.0 on the more recent Debian
>> Lenny). Seems to be a considerable mess, that libcairo version ...
> So it seems that the line (or area) to be dran in your graph sends
> cairo over the edge ... rrdtool always creates a single path or a
> single area for each LINE or AREA instruction ... the AREAs become
> especially complex when they are stacked, as they then have a
> jagged outline at the top as well as at the bottom.

In my case it was an area. But it's most certainly a cairo bug. I
peeked around in their mailing list a bit, and somewhere in 2007 there
was a patch introduced which fixed some possible integer overflow
issues in malloc contexts.

I'm not saying that patch exactly fixed this issue, but from my gdb
runs it looks like an integer overflow could very well be the possible
cause. They seem to approximate paths (?) with trapezoids, and there's
some pretty large numbers involved which aren't consistently handled
as unsigned int's. Can't be really sure though.

That said, I installed the most recent cairo version just to finally
try how latest rrdtool looks like, and I must say I'm quite impressed.

Amongst other things, I'm using it to compose a desktop wallpaper at
10 mins intervals to give me a regular overview of my most precious
servers and routers which can't be overlooked. With --full-size-mode,
I now can make the individual graphs exact the size I want, where I
before had to rescale with ImageMagick. The image is much clearer now,
likely also due to the new backend. Really very nice, many thanks for
this (!!)

Regards, R.

More information about the rrd-users mailing list