Hi,
When we run our application under a heavy load, sometimes we see this being logged out over and over again in our application log by each one of our event bus threads:
2015-07-28 14:55:48,050 INFO [eventBusExecutor-10] axonframework.eventhandling.EventProcessingScheduler: Processing of event listener yielded. 2015-07-28 14:55:50,281 INFO [eventBusExecutor-8] axonframework.eventhandling.EventProcessingScheduler: Processing of event listener yielded. 2015-07-28 14:55:51,757 INFO [eventBusExecutor-5] axonframework.eventhandling.EventProcessingScheduler: Processing of event listener yielded. 2015-07-28 14:55:53,869 INFO [eventBusExecutor-7] axonframework.eventhandling.EventProcessingScheduler: Processing of event listener yielded. 2015-07-28 14:55:55,980 INFO [eventBusExecutor-9] axonframework.eventhandling.EventProcessingScheduler: Processing of event listener yielded. 2015-07-28 14:55:58,706 INFO [eventBusExecutor-4] axonframework.eventhandling.EventProcessingScheduler: Processing of event listener yielded. 2015-07-28 14:56:00,773 INFO [eventBusExecutor-3] axonframework.eventhandling.EventProcessingScheduler: Processing of event listener yielded. 2015-07-28 14:56:00,870 INFO [eventBusExecutor-1] axonframework.eventhandling.EventProcessingScheduler: Processing of event listener yielded. 2015-07-28 14:56:02,222 INFO [eventBusExecutor-10] axonframework.eventhandling.EventProcessingScheduler: Processing of event listener yielded. 2015-07-28 14:56:04,408 INFO [eventBusExecutor-8] axonframework.eventhandling.EventProcessingScheduler: Processing of event listener yielded. 2015-07-28 14:56:06,520 INFO [eventBusExecutor-8] axonframework.eventhandling.EventProcessingScheduler: Processing of event listener yielded. 2015-07-28 14:56:08,614 INFO [eventBusExecutor-7] axonframework.eventhandling.EventProcessingScheduler: Processing of event listener yielded. 2015-07-28 14:56:08,912 INFO [eventBusExecutor-2] axonframework.eventhandling.EventProcessingScheduler: Processing of event listener yielded. 2015-07-28 14:56:10,754 INFO [eventBusExecutor-9] axonframework.eventhandling.EventProcessingScheduler: Processing of event listener yielded. 2015-07-28 14:56:12,841 INFO [eventBusExecutor-3] axonframework.eventhandling.EventProcessingScheduler: Processing of event listener yielded. 2015-07-28 14:56:14,252 INFO [eventBusExecutor-1] axonframework.eventhandling.EventProcessingScheduler: Processing of event listener yielded. 2015-07-28 14:56:16,383 INFO [eventBusExecutor-10] axonframework.eventhandling.EventProcessingScheduler: Processing of event listener yielded. 2015-07-28 14:56:18,458 INFO [eventBusExecutor-5] axonframework.eventhandling.EventProcessingScheduler: Processing of event listener yielded. 2015-07-28 14:56:20,573 INFO [eventBusExecutor-8] axonframework.eventhandling.EventProcessingScheduler: Processing of event listener yielded. 2015-07-28 14:56:22,648 INFO [eventBusExecutor-7] axonframework.eventhandling.EventProcessingScheduler: Processing of event listener yielded. 2015-07-28 14:56:24,131 INFO [eventBusExecutor-4] axonframework.eventhandling.EventProcessingScheduler: Processing of event listener yielded. 2015-07-28 14:56:25,280 INFO [eventBusExecutor-6] axonframework.eventhandling.EventProcessingScheduler: Processing of event listener yielded. 2015-07-28 14:56:26,163 INFO [eventBusExecutor-9] axonframework.eventhandling.EventProcessingScheduler: Processing of event listener yielded. 2015-07-28 14:56:28,306 INFO [eventBusExecutor-1] axonframework.eventhandling.EventProcessingScheduler: Processing of event listener yielded. 2015-07-28 14:56:30,428 INFO [eventBusExecutor-10] axonframework.eventhandling.EventProcessingScheduler: Processing of event listener yielded.
And while this is happening, the process our application is trying to perform stops.
The process we are running involves dispatching a number of commands which then result in a number of events being applied. When we see this in the error logs, nothing at all seems to be happening in that process, i.e. no commands are being handled and no events seem to be being handled. It is even stranger by the fact that the dispatching of the commands is done via a different thread to any of the event bus threads.
We’ve analysed the performance profile of the application and there are no issues with memory or disk usage - we are nowhere near utilising the capacity of the machines this is running on.
My questions are:
- What does this ‘yielding’ mean in this context?
- What could be causing this?
- What can we do to help us identify what is causing this because at the moment we are struggling.
Thanks for your help in advance.
Chris