severity 533325 important
thanks

Hi Paul,

Thanks for reporting this!

On Tue, Jun 16, 2009 at 04:23:31PM +0200, Paul Staroch wrote:
> When I configure collectd to use the ping plugin in order to ping more than
> 3 hosts, it fails to run. When running collectd by entering
> 
> /usr/sbin/collectd -f -C /etc/collectd/collectd.conf
> 
> into a root shell, collectd aborts with the following error message:
> 
> collectd: liboping.c:168: ping_timeval_sub: Assertion `(res->tv_sec > 0) || 
> ((res->tv_sec == 0) && (res->tv_usec > 0))' failed.
> Aborted

Uhm ... I'm kinda surprised that this seems to be related to the number
of hosts. That assertion is triggered if, supposedly, an ICMP ECHO_REPLY
was received "right away" - i.e. the calculated round trip time ends up
being zero. So, if this is related to the number of hosts, the
correlation between host and received ECHO_REPLY might be broken which
would be an even worse issue :-/

Does this happen no matter which hosts are added or is it related to
adding some specific host (like localhost)?

> I'm using collectd 4.4.2-3 from the stable repository. Replacing collectd by
> a newer version compiled from source (e.g., 4.6.3 or 4.7.1) doesn't resolve
> this problem. Replacing liboping0 by the current version compiled from
> source (1.1.2) makes collectd work as intended. Hence I think, this
> problem belongs to liboping0.
> 
> In liboping0's changelog at http://verplant.org/liboping/, a wrong assertion
> is mentioned that has been fixed in 1.0.0, perhaps this is the assertion
> that fails in my case.

Yep - that assertion has been changed to "... (res->tv_usec >= 0)", i.e.
allowing the round trip time to be zero (which e.g. has been reported to
happen in some virtualized environments).

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

Attachment: signature.asc
Description: Digital signature

Reply via email to