When running some batch jobs I ran into the following:
some of my jobs generate quite a lot of commands in loops,
and as a result the command handler service seems to get overwhelmed and commands fail with:
‘org.axonframework.commandhandling.NoHandlerForCommandException: No handler available to handle command’
Since it is a background batch job, I don’t really care about execution time or timeout, I just want all of those
commands to be executed - I wouldn’t want any of those commands to fail, that’s the important point.
Can I do anything about this? I could overcome some of my batch problems with setting a proper
CommandPriorityCalculator, but I’m stuck with this one - how am I supposed to handle
such a case? I’d expect something like queing up commands and executing them at a rate
that is possible but never fail (like besides the priority calculator there is another
additional distinction between commands coming from user interaction or commands from batch jobs -
the latter are queable, the first type has obviously either a successful execution or a fail/timeout - I don’t know
if there is a possibility for that).
Tried to set different settings for number of permits, no luck so far. More command handler threads maybe?
Any advice on this?