Segmentation fault ( Pycall [BUG] Segmentation fault at 0x0000000000000010 )
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 25/100
Línea de trabajo
Lee pycall-1.5.2/lib/pycall.rb y la implementación de importación correspondiente en ext/pycall/pycall.c. Empieza reproduciendo la llamada a import_module y siguiendo el flujo de llamadas nativas; el trabajo estará terminado cuando se expliquen el segmentation fault y la supuesta recursión, y una comprobación de regresión cubra el comportamiento.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
there is problem in the method import_module of file "pycall-1.5.2/lib/pycall.rb"
def import_module(name)
LibPython::Helpers.import_module(name)
end
it calls a c method in this file "ext/pycall/pycall.c"
c language method
static VALUE
pycall_libpython_helpers_m_import_module(int argc, VALUE *argv, VALUE mod)
{
VALUE name, globals, locals, fromlist, level;
char const *name_cstr;
rb_scan_args(argc, argv, "14", &name, &globals, &locals, &fromlist, &level);
if (RB_TYPE_P(name, T_SYMBOL)) {
name = rb_sym_to_s(name);
}
name_cstr = StringValueCStr(name);
if (argc == 1) {
return pycall_import_module(name_cstr);
}
if (argc == 5) {
level = rb_check_to_integer(level, "to_int");
}
else {
/* TODO: set the default level to 0 */
}
return pycall_import_module_level(name_cstr, globals, locals, fromlist, NUM2INT(level));
}
which again calls the previous method and the process continues in an infinite loop, hence segmentation fault occurs
- Lenguaje dominante
- Julia
- Estrellas
- 1.5k
- Forks
- 186
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de JuliaPy/PyCall.jl
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
-
Meta-Issue: Mutli-threading leads to segfaultsPosiblemente ocupada @topolarity la tomó hace 211 días. Abierto
Dificultad 5/5 Más de una semana Aptitud para principiantes 20/100
-
Crashes with Julia 1.12 and Revise.jlPosiblemente ocupada @topolarity la tomó hace 211 días. Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
-
Dificultad 3/5 1-2 días Aptitud para principiantes 35/100
-
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
Todos los issues de JuliaPy/PyCall.jl
Issues similares
-
Chains resumed from `initial_state` take `num_warmup + 1` warm-up stepsPosiblemente ocupada @thevolatilebit la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 80/100
TuringLang/AbstractMCMC.jl#220 ·
-
found-by-agent
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
exanauts/SparseDirectSolver.jl#92 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 90/100
NumericalEarth/Breeze.jl#1051 ·
Los mantenedores suelen responder en 1 día
-
lu_instance/qr_instance run a full factorization for FixedSizeArraysPosiblemente ocupada @devmotion la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
JuliaArrays/ArrayInterface.jl#510 ·