[rrd-developers] problems with rrd_update() when updating rrd file

Tomáš Macek maca02 at atlas.cz
Tue Jun 1 08:20:18 CEST 2010


Hello again,
this problem is present since 1.4.0. I know it, because I've tried every  
version since 1.3.8 (works), through 1.3.9 (works), 1.4.0 - 1.4.3 does not  
work at all with syntax error as described below. Everytime I compiled and  
tried the same source code and linked with the proper library version.
What has changed in the API of rrd_update() in 1.4.0? I really don't  
understand what I'm doing wrong. Any hints/help appreciated, looking at  
the CHANGES file did not helped me.

Tomas


On Thu, 20 May 2010 12:28:25 +0200, Tomáš Macek <maca02 at atlas.cz> wrote:

> Hi, I have RHEL 5.5 with rrdtool 1.4.3 and I'm using it's API for  
> updating
> rrd files. The problem is that when I pass arguments to the rrd_update()
> function, it always returns error saying "Usage: rrdtool update [--daemon
> <addr>] <file>". The same code worked really fine on 1.3.8. I looked at
> the CHANGELOG file and there was some line saying, that something has
> changed on checking optarg parameters.
>
> This is from gdb just before I pass the array into rrd_update() function:
> -----------
> Breakpoint 2, rrd_cmd (rrdcmd=0x634dc0 "update", cmd=1, di_cnt=2) at
> rrd_op.c:215
> 215                 error = rrd_update(i, argv);
> (gdb) p argv
> $26 = {0x634dc0 "update", 0x634dc7 "cac_ap2aeth.rrd",
>    0x634e06 "--template", 0x634e11 "ds0:ds1", 0x634e19
> "N:2325779922:3582706806", 0x0 <repeats 59 times>}
> -----------
>
> and after program goes thourgh rrd_update(), the argv array looks like
> this:
> -----------
> 216                 if (error == -1) {
> (gdb) p argv
> $28 = {0x634dc0 "update", 0x634e06 "--template", 0x634e11 "ds0:ds1",
>    0x634dc7 "cac_ap2aeth.rrd", 0x634e19 "N:2325779922:3582706806",
>    0x0 <repeats 59 times>}
> -----------
>
> Please, notice the replaced arguments after rrd_update()... I don't know,
> what I'm doing wrong, the code under 1.3.8 library worked just fine and
> according to the man rrdupdate the arguments are fine. Hope I'm not
> missing something stupid, but I was not able to find anything strange in
> rrd_update() function in the rrd_update.c.
> Let me know, if you need something more from me, thank you
>
> Regards, Tomas
>
> _______________________________________________
> rrd-developers mailing list
> rrd-developers at lists.oetiker.ch
> https://lists.oetiker.ch/cgi-bin/listinfo/rrd-developers



More information about the rrd-developers mailing list