-
Notifications
You must be signed in to change notification settings - Fork 288
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
traverse visits providers in a random order #780
Comments
I've been using this as a work around, I'll look at raising a PR when I get some time.
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
When
container.init_resources()
is called, it is expected that resources are loaded in the same order every time (and ideally in a way that can be controlled, but that is outside the scope of this bug).What actually happens is the resources are initialized in a random order each time an application is started.
This is due to
def traverse(...)
usingset()
to iterate over the providers, this results in a random start-up order every time an app is restarted.Proposed short-term solution is to init providers in the order they are defined in the container.
Proposed long-term solution (separate ticket / feature request) is that providers can be given a "priority" or "order" to indicate precedence.
The text was updated successfully, but these errors were encountered: