Hi. I'm running Bash on Windows and installed via the Ubuntu ppa. Prior to leaving for vacation, everything was running smoothly. I got back, upgraded system packages, and julia lost the capability of opening multiple processes. I have tried purging and reinstalling julia, to no avail. I'd rather avoid installing julia from source or using the Windows binaries.
Here is an excerpt of the error messages that are printed:
ERROR: type LocalProcess has no field r_stream
in (::Base.##call#553#554)(::Nullable{VersionNumber}, ::WorkerConfig, ::Type{T}, ::Int64, ::TCPSocket, ::TCPSocket, ::Base.DefaultClusterManager) at ./multi.jl:221
in (::Core.#kw#Type)(::Array{Any,1}, ::Type{Base.Worker}, ::Int64, ::TCPSocket, ::TCPSocket, ::Base.DefaultClusterManager) at ./<missing>:0
in connect_to_peer(::Base.DefaultClusterManager, ::Int64, ::WorkerConfig) at ./multi.jl:1480
in (::Base.##637#639)() at ./task.jl:360
ERROR: type LocalProcess has no field r_stream
in (::Base.##call#553#554)(::Nullable{VersionNumber}, ::WorkerConfig, ::Type{T}, ::Int64, ::TCPSocket, ::TCPSocket, ::Base.DefaultClusterManager) at ./multi.jl:221
in (::Core.#kw#Type)(::Array{Any,1}, ::Type{Base.Worker}, ::Int64, ::TCPSocket, ::TCPSocket, ::Base.DefaultClusterManager) at ./<missing>:0
in connect_to_peer(::Base.DefaultClusterManager, ::Int64, ::WorkerConfig) at ./multi.jl:1480
in (::Base.##637#639)() at ./task.jl:360
ERROR: type LocalProcess has no field r_stream
in (::Base.##call#553#554)(::Nullable{VersionNumber}, ::WorkerConfig, ::Type{T}, ::Int64, ::TCPSocket, ::TCPSocket, ::Base.DefaultClusterManager) at ./multi.jl:221
in (::Core.#kw#Type)(::Array{Any,1}, ::Type{Base.Worker}, ::Int64, ::TCPSocket, ::TCPSocket, ::Base.DefaultClusterManager) at ./<missing>:0
in connect_to_peer(::Base.DefaultClusterManager, ::Int64, ::WorkerConfig) at ./multi.jl:1480
in (::Base.##637#639)() at ./task.jl:360
Error [ErrorException("type LocalProcess has no field r_stream")] on 8 while connecting to peer 3. Exiting.ERROR: type LocalProcess has no field r_stream
in (::Base.##call#553#554)(::Nullable{VersionNumber}, ::WorkerConfig, ::Type{T}, ::Int64, ::TCPSocket, ::TCPSocket, ::Base.DefaultClusterManager) at ./multi.jl:221
in (::Core.#kw#Type)(::Array{Any,1}, ::Type{Base.Worker}, ::Int64, ::TCPSocket, ::TCPSocket, ::Base.DefaultClusterManager) at ./<missing>:0
in connect_to_peer(::Base.DefaultClusterManager, ::Int64, ::WorkerConfig) at ./multi.jl:1480
in (::Base.##637#639)() at ./task.jl:360
ERROR: type LocalProcess has no field r_stream
in (::Base.##call#553#554)(::Nullable{VersionNumber}, ::WorkerConfig, ::Type{T}, ::Int64, ::TCPSocket, ::TCPSocket, ::Base.DefaultClusterManager) at ./multi.jl:221
in (::Core.#kw#Type)(::Array{Any,1}, ::Type{Base.Worker}, ::Int64, ::TCPSocket, ::TCPSocket, ::Base.DefaultClusterManager) at ./<missing>:0
in connect_to_peer(::Base.DefaultClusterManager, ::Int64, ::WorkerConfig) at ./multi.jl:1480
in (::Base.##637#639)() at ./task.jl:360
And here is my version info:
Julia Version 0.5.0
Commit 3c9d753 (2016-09-19 18:14 UTC)
Platform Info:
System: Linux (x86_64-linux-gnu)
CPU: Intel(R) Core(TM) i7-6700K CPU @ 4.00GHz
WORD_SIZE: 64
BLAS: libopenblas (NO_LAPACKE DYNAMIC_ARCH NO_AFFINITY Haswell)
LAPACK: liblapack.so.3
LIBM: libopenlibm
LLVM: libLLVM-3.7.1 (ORCJIT, broadwell)
Please use the generic binaries from http://julialang.org/downloads/ instead of the PPA.
That is what I'm trying to avoid.
If you can't reproduce this with the generic binaries, then this issue should be opened at https://github.com/staticfloat/julia-debian/issues.
I'll try it out now and will edit this post with an update.
I was unable to reproduce this bug with the Windows executable. But you'll have to tear apt-get's convenience away from my cold, dead hands.
I genuinely think that the PPA should be deprecated or removed. I have had issues with it in the past and the basic advice here was don't use the PPA. So why even bother having them?
I mean, seriously? Do we not want widespread adoption of julia?
The PPA has been removed from the website. Debian packaging makes it extremely difficult to build and distribute a version of Julia that actually works properly. See discussion at https://github.com/JuliaLang/julialang.github.com/pull/475. Installing the generic binaries is a matter of downloading and extracting a file. If you're deeply attached to using apt-get, the PPA will likely be replaced soon with a version that simply repackages the same generic binaries behind an apt-get command.
@tkelman OK. I'll be avoiding julia on Windows until then. Thanks.
@jecs Why? You can use Julia easily on Windows using the exe and it works well. In fact that's precisely what I do.
@musm I much prefer the convenience of bash. This is frankly a huge letdown.
You're using an incomplete beta Linux compatibility layer. Depending what update of Windows 10 you're on, running the Windows executable of Julia from inside WSL should work now. Or you can try the Linux executable with a simple:
curl -LO https://julialang.s3.amazonaws.com/bin/linux/x64/0.5/julia-0.5.0-linux-x86_64.tar.gz
tar -xzf julia-0.5.0-linux-x86_64.tar.gz
julia-3c9d75391c/bin/julia
Any bugs that happen in WSL that aren't reproducible on an actual Linux system are Microsoft's, not Julia's.
@jecs Could you solve this? I am having the same problem with WSL and julia 0.6 rc. It happens with generic Linux binaries.
@mauriciogtec if it works on Linux but not on WSL, report the bug to https://github.com/Microsoft/BashOnWindows/issues
Doesn't seem like anything actionable here.
Most helpful comment
You're using an incomplete beta Linux compatibility layer. Depending what update of Windows 10 you're on, running the Windows executable of Julia from inside WSL should work now. Or you can try the Linux executable with a simple:
Any bugs that happen in WSL that aren't reproducible on an actual Linux system are Microsoft's, not Julia's.