Configure what you want to happen when there is more than one run at a time.
concurrencyLimit
property on the task’s queue. This limits the number of runs that can be executing at any one time:
task1
and task2
share the same queue, so only one of them can run at a time.
concurrencyKey
. It creates a separate queue for each value of the key.
Your backend code:
RECURSIVE_WAIT_DEADLOCK
error. The following example will result in a deadlock:
RECURSIVE_WAIT_DEADLOCK
error because the parent task is waiting for the subtask, and the subtask is waiting for the subsubtask, but there is no more concurrency available in the queue. It will look a bit like this in the logs: