Open micschk opened 4 years ago
Could this be related to #288/#287?
It seems so. The problem with the overriding via yaml is that you can only override array config which has named keys. This change adds a key to the default rule so it could be overridden. Additionally, null
is allowed to be set as a rule to cover the case where you want to disable an existing rule.
This module's queuedjobs.yml contains a default Doorman rule which is supposed to make jobs run one at a time. But this config doesn't seem to get applied correctly, making Doorman run all jobs simultaneously.
The cause of this issue seems to be the order in which the injector properties get applied; I think the current included DefaultRule config somehow does not get applied to the %$DoormanRunner instance set as queueRunner(?)
queuedjobs.yml (included in module)
When I try to set DoormanRunner in my app config as per the comment in the queuedjobs.yml, the DefaultRules config doesn't get applied (resulting in all jobs starting simultaneously).
app.yml
This results in an empty array as DefaultRules
The below config does apply the DefaultRule correctly (and coincidentally replaces any previously set Defaultrules, probably because a new DoormanRunner instance, along with the correct DefaultRules gets created/injected in QueuedJobService.queueRunner);