[rrd-developers] Possible race conditions / data loss in rrdcached?
Sebastian Harl
sh at tokkee.org
Mon Jul 13 09:26:05 CEST 2009
Hi Kevin,
On Sun, Jul 12, 2009 at 10:23:19AM -0500, kevin brintnall wrote:
> On Sun, Jul 12, 2009 at 12:15:54PM +0200, Sebastian Harl wrote:
> > I've just stumbled across the following (possible) issue. Unfortunately,
> > I don't have the time to have a more in-depth look at it, but maybe
> > Kevin and / or Florian can comment on that:
>
> Sebastian, your summary is correct.
Thanks for confirming that.
> This unlock allows rrdcached to continue processing other updates as soon
> as possible. stat() may block on a system that is heavily IO constrained
> (sometimes for multiple seconds).
Hrm, frankly, imho, this does not justify a bug like this.
> If the cache lock were held during that time, we'd introduce the exact
> type of IO-bound update delay that rrdcached is aiming to avoid.
[...]
> For rrdcached to be beneficial, the arrival rate of new nodes must be
> _significantly_ smaller than the arrival rate of updates. Therefore, I
> think this is a sensible decision.
Imho, it's rather the contrary: Since new nodes are added only very
rarely, the overhead of adding new nodes is rather irrelevant and, thus,
it's not sensible to _not_ fix that bug.
Anyway, this should be easy to fix. See the patch, I'll send in a
minute. Beware, though, that I do not have a RRDCacheD setup, so the
patch is mostly untested - it compiles though ;-)
Cheers,
Sebastian
--
Sebastian "tokkee" Harl +++ GnuPG-ID: 0x8501C7FC +++ http://tokkee.org/
Those who would give up Essential Liberty to purchase a little Temporary
Safety, deserve neither Liberty nor Safety. -- Benjamin Franklin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: Digital signature
Url : http://lists.oetiker.ch/pipermail/rrd-developers/attachments/20090713/3a62103d/attachment.bin
More information about the rrd-developers
mailing list