-
-
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
World age assertion failure after aggressively calling disable_sigint #29498
Comments
I tried to get the backtrace using |
You can always edit the source and disable the assertion, it's probably unrelated since it triggers as part of interpretation. |
@maleadt Thanks! (Of course!) Here is the output of
with: julia> versioninfo()
Julia Version 1.1.0-DEV.399
Commit 0210b1dce2* (2018-10-05 04:32 UTC)
DEBUG build
Platform Info:
OS: Linux (x86_64-pc-linux-gnu)
CPU: Intel(R) Core(TM) i7-8550U CPU @ 1.80GHz
WORD_SIZE: 64
LIBM: libopenlibm
LLVM: libLLVM-6.0.1 (ORCJIT, skylake)
julia> run(`git -C $(dirname(Base.find_package("Pkg"))) diff`)
diff --git a/src/gf.c b/src/gf.c
index aa597ecbaa..aecc0e658b 100644
--- a/src/gf.c
+++ b/src/gf.c
@@ -1186,7 +1186,6 @@ static int check_ambiguous_visitor(jl_typemap_entry_t *oldentry, struct typemap_
msp = 1;
}
else if (closure->after) {
- assert(!jl_subtype((jl_value_t*)sig, (jl_value_t*)type));
msp = jl_type_morespecific_no_subtype((jl_value_t*)type, (jl_value_t*)sig);
}
else {
Process(`git -C /home/takafumi/repos/watch/julia/usr/share/julia/stdlib/v1.1/Pkg/src diff`, ProcessExited(0)) |
Oh, another world age assertion... |
This is pretty old now, so I'm going to presume it fixed by #31191 and see if any new issues get opened as they pop up. |
This is pretty old now, so I'm going to presume it fixed by #31191 and see if any new issues get opened as they pop up. |
In JuliaPy/PyCall.jl#574 I wrote a PR to wrap every
ccall
which invokes Python runtime withdisable_sigint
. It seems that this is the right thing to do considering whydisable_sigint
exists (and also because the main purpose of the PR was to usereenable_sigint
inside a callback).While using this branch, I encountered a bug causing segfaults when calling it from PyJulia and I couldn't fix it. It occurs when I try to evaluate:
from PyJulia. I ran
git bisect
to find the change causing the segfault but the identified patch looks so harmless and identical to many others JuliaPy/PyCall.jl#574 (comment). I appreciate if core dev can have a look at it. It happens at Julia's internal and I don't know what is going on.Here is the reproducible environment to invoke the segfault. You only need to run:
which is supposed to set up an isolated Julia and Python environments and run the script inside of it. It probably does not work when you use conda or Debian family to install
python3
. Please let me know in such case.As a side note, I couldn't turn the MWE to a Julia script. It seems that the Julia runtime has to be started via libjulia. (So I apologize in advance that the entry point is
python3
...)Here is a stacktrace:
The text was updated successfully, but these errors were encountered: