[rrd-users] rrdupdate corruption on Mac Snow Leopard

JohnGarney public at garneys.com
Sat May 19 02:01:03 CEST 2012

Thanks for the reply and suggestions.

As I mentioned, I did change the source for rrd_lock from using fcntl to
flock and it made no difference.  Hmmm.  I guess I could try an experiment
of doing a flock in my own app code (before calling rrdupdate).  I would
expect that to cause the rrdupdate to always fail, but it would confirm
whether flock is working properly or not.

My apps are always waiting to receive sensor reports from their radio
receiver, so they are always running.  I have other sensors besides just
temps and they all blindly broadcast, so the receiver app is always waiting
for the next sensor report.  I don't (and can't) start and stop the apps,
since I would then lose reports. And I have no idea when the reports happen. 
The sensors use a Poisson distribution on a random number to determine when
to transmit next.  I have the sensors send reports more often than I need
data for.  That way, when collisions happen, I lose a report due to the
collision, but future ones usually get through.  I also have CRC on the
reports so I can detect corruption in the transmission.  That part has been
working just fine for years.

Since my problem is due to the two apps each receiving the same report (from
the same sensor) and then trying to log that to rrdupdate, I suppose I could
simply have one of the apps delay some small amount of time before calling
rrdupdate.  That might work around this problem.  But I'd sure like to know
what it is and what needs to be fixed to make it right.

In any case, thanks for responding!

View this message in context: http://rrd-mailinglists.937164.n2.nabble.com/rrdupdate-corruption-on-Mac-Snow-Leopard-tp7564325p7566299.html
Sent from the RRDtool Users Mailinglist mailing list archive at Nabble.com.

More information about the rrd-users mailing list