-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
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
Update Pkg, and move tests to node 1 #44828
Conversation
Looks like this is working! |
I know I originally suggested this, but I'm concerned that it will nontrivially increase the duration of our tests (because all of the "move to node 1" test sets have to run in serial). What is the specific challenge with |
We literally only use Can we instead start a subprocess, and run the tests in that subprocess? |
@vtjnash what do you suggest here? |
The stdin handle should have been set to devnull, except for that bug in the Pkg tests that forced us to set it to an invalid object for the Pkg tests. We can probably set it up correctly now. |
Feel free to push what "setting it up correctly" looks like to this branch, and we can test it out. |
6ab9f74
to
11b02c4
Compare
diff --git a/stdlib/Distributed/src/cluster.jl b/stdlib/Distributed/src/cluster.jl
index 4bfc3a0bf8..37f1660e19 100644
--- a/stdlib/Distributed/src/cluster.jl
+++ b/stdlib/Distributed/src/cluster.jl
@@ -232,7 +232,10 @@ start_worker(cookie::AbstractString=readline(stdin); kwargs...) = start_worker(s
function start_worker(out::IO, cookie::AbstractString=readline(stdin); close_stdin::Bool=true, stderr_to_stdout::Bool=true)
init_multi()
- close_stdin && close(stdin) # workers will not use it
+ if close_stdin # workers will not use it
+ redirect_stdin(devnull)
+ close(stdin)
+ end
stderr_to_stdout && redirect_stderr(stdout)
init_worker(cookie) |
This should fix the issues seen when bumping `Pkg` in #44828
11b02c4
to
212834b
Compare
This should fix the issues seen when bumping `Pkg` in #44828
212834b
to
1eb201f
Compare
Could we separate the two changes (fix Distributed, and bump Pkg) into two separate PRs? That way, we can backport just the "fix Distributed" PR to earlier Julia versions. |
@vtjnash we now have |
This should fix the issues seen when bumping `Pkg` in #44828
1eb201f
to
39a68bf
Compare
Ah, it is the TerminalMenus tests. Those look like they have the same bug
Past encounters with this bug (and this patch) were at https://github.com/JuliaLang/julia/compare/jn/io-handle-life, and apparently wasn't in a PR right now. |
I'm not sure your branch is much better; it seems to just avoid closing Also, it appears the |
39a68bf
to
62d23e0
Compare
I'm giving up on this for now, as it's got too many moving pieces that I don't know how to fix. I'll just move |
f03dcb2
to
58ffb0c
Compare
58ffb0c
to
29cd7b2
Compare
This updates Pkg and moves the Pkg tests to node 1, to fix breakage due to Pkg using
redirect_stdin()
in its tests, but being run in a distributed runner that has nostdin
.