The broker at present will log warnings about overrunning timer tasks and late wakeups. Not surprisingly, a common question from users is whether they should be concerned with these statements and how they prevent them.

My belief is that in general they can be ignored. The information in the warnings is only of interest if they are experiencing other problems that may be connected to the precision of timer tasks. The most obvious issue - for which I believe these warnings were introduced - is where clients are timing out due to delays to broker heartbeats.

Tasks that require a degree of precision (e.g. heartbeats) to function correctly imply constraints on other tasks driven by the same timer thread. If this is a concern these constraints should be made explicit. We can then either have different timer instances with different constraints, or separate the processing of (longer running) tasks from their activation.

Going back to the logs however, I think these warnings should be demoted to informational statements (at most). It is much easier to turn them on if needed (--log-enable info+:Timer) than it is to turn them off if not.

I know this has been raised before... any objections to making this change?

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscr...@qpid.apache.org

Reply via email to