[rrd-users] RRD::update failing on first update every time?
A Darren Dunham
ddunham at taos.com
Tue Aug 10 17:18:13 CEST 2010
On Mon, Aug 09, 2010 at 07:47:55PM -0700, Jo Rhett wrote:
> I have a statistical data source giving me numbers that are exactly 300 seconds apart, with multiple intervals at once. (ie data in 5 minute windows delivered hourly, etc)
> Data which is exactly 300 seconds apart should make RRD happy, but RRD is always rejecting the very first update. Why?
> RRD filename is /rrd/vlan-0.0/queue-1.rrd
> getLatestRRDTimestamp( /rrd/vlan-0.0/queue-1.rrd ):
> rrd start = 1281393300, step = 300
> (steps through data to find the last defined value)
> Exiting getLatestRRDTimestamp( /rrd/vlan-0.0/queue-1.rrd ) with timestamp 1281406200
> insert into /rrd/vlan-0.0/queue-1.rrd values 1281406473, 3420012071625, 3420012071625
> ERROR while updating /rrd/vlan-0.0/queue-1.rrd: illegal attempt to update using time 1281406473 when last update time is 1281406473 (minimum one second step)
> insert into /rrd/vlan-0.0/queue-1.rrd values 1281406773, 3420061076791, 3420061076791
> insert into /rrd/vlan-0.0/queue-1.rrd values 1281407073, 3420108690075, 3420108690075
> insert into /rrd/vlan-0.0/queue-1.rrd values 1281407373, 3420860926634, 3420860926634
> Why is it failing on the first update every time?
Unfortunately, you don't show what is actually being run by the system.
Can you recreate this situation with a simple 'rrdcreate' and
'rrdupdate' lines that are runnable by others?
My first guess is that RRD is correct, but there's a bug in your script
and the first 'rrdupdate' is getting run twice.
> And no, I'm not doing an update at any other time, there's only one
> place in the code where update() is called, and it outputs the debug
> message you see here...
Maybe you could wrap the update() call to show the command line?
More information about the rrd-users