-
-
Notifications
You must be signed in to change notification settings - Fork 637
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
test_scheduler failure on travis #5732
Comments
I've hit this locally too |
My current hypothesis is that this is because we're exhausting virtual memory by creating multiple schedulers in the unit tests by trying to claim 1 TB of virtual memory per scheduler. If you run any of the tests individually they succeed, so I don't think that this is likely to affect end users with or without But the unit test(s) appear to be 1) lazily dropping schedulers, 2) possibly not deallocating the |
Alright, after fixing the lazy dropping of schedulers (1), the next issue (2) seems to be because I'll see whether breaking this is feasible. |
Breaking it is feasible, and it looks like that was the only cycle, because the The only downside is that this patch looks difficult to cherry-pick. I don't really see an alternative other than cherry-picking it though. On the bright side, the difficult part of the cherry-pick is 100% in the rust code, and thus easily detected as a compile error. EDIT: Found a much more cherry-pickable alternative. Updated #5733. |
### Problem `Core` instances are currently being leaked in cases where `Nodes` have not completed running, and thus hold a `Context` in the closure for their `Future`. The cycle is: ``` Core -> Graph -> Node -> Context -> Core ``` ### Solution Clear all `Node` states when we `Drop` a `Scheduler`, breaking their cycles with the `Core`. ### Result Fixes #5732 by ensuring that the `Store` held via `Scheduler -> Core -> Store` is dropped. It should also unblock #5611.
### Problem `Core` instances are currently being leaked in cases where `Nodes` have not completed running, and thus hold a `Context` in the closure for their `Future`. The cycle is: ``` Core -> Graph -> Node -> Context -> Core ``` ### Solution Clear all `Node` states when we `Drop` a `Scheduler`, breaking their cycles with the `Core`. ### Result Fixes #5732 by ensuring that the `Store` held via `Scheduler -> Core -> Store` is dropped. It should also unblock #5611.
travis seems to be broken consistently with https://api.travis-ci.org/v3/job/369223653/log.txt
Related change: 305f1db
Specific error:
The text was updated successfully, but these errors were encountered: