JuliaLang / JuliaLang/Distributed.jl

@everywhere using localModule from include function

Open
#158 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Julia
Stars
55
Forks
19
PR merge metrics
No merged PRs in 30d

Description

Hello, I am developing one package, I found something that I think it is an error.

Assume my module is stored in the file named "pyrmont.jl"
and the name of module is Pyrmont

addprocs(["remotehost"])
@everywhere include("pyrmont.jl")
@everywhere using Pyrmont ## => this causes an error (segmentation fault?).
@everywhere using .Pyrmont ## => this also causes an error.
# suppose the process id of remotehost is 2
@spawnat 2 eval(:(using Pyrmont)) # => this works.
@spwanat 2 a function exported by Pyrmont module 

My version of Julia is 0.6.0.
The keyword using works when I include packages enrolled in pkg.julialang.org.
But it does not work when l load my module by @everywhere include.
And @everywhere eval(:(using Pyrmont)) also works.
So I think this should be fixed so that I can do this without using eval function.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the Julia 0.6 reproducer using addprocs, @everywhere include("pyrmont.jl"), and @everywhere using Pyrmont, then compare it with the working eval forms. The issue is resolved when the included module can be loaded and its exported function called on the remote process without eval or a segmentation fault.

Written by the indexing model from the issue text.

Assessment

Tech stack
julia
Domain
distributed-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.