JuliaPy / JuliaPy/PyCall.jl

Calling `pywrap` on the Python3 `inspect` module hangs (Linux)

Abierto
#252 1 comentario 0 reacciones 0 asignados Ver en GitHub
Lenguaje dominante
Julia
Estrellas
1.5k
Forks
186
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

I get a hang/lockup when I try to `pywrap` the `inspect` python library when using Python3.4. CPU is pegged at 100% on a single core. There is no problem when using Python2.7. I had a friend replicate this under a fresh vagrant install, and then also had a hang under Python3.4 but not Python 2.7 (in their case, running Julia 0.3.x).

I assume this has something to do with the internal use of the 'inspect' module within PyCall, but i'm not certain.

CC: @porterjamesj

Details below; the hang is on the last line. I would expect instead that "**anon**" (a module) would be returned.

```
julia> versioninfo()
Julia Version 0.4.3
Commit a2f713d (2016-01-12 21:37 UTC)
Platform Info:
System: Linux (x86_64-unknown-linux-gnu)
CPU: Intel(R) Core(TM) i7-2620M CPU @ 2.70GHz
WORD_SIZE: 64
BLAS: libopenblas (USE64BITINT DYNAMIC_ARCH NO_AFFINITY Sandybridge)
LAPACK: libopenblas64_
LIBM: libopenlibm
LLVM: libLLVM-3.3

julia> versioninfo()
Julia Version 0.4.3
Commit a2f713d (2016-01-12 21:37 UTC)
Platform Info:
System: Linux (x86_64-unknown-linux-gnu)
CPU: Intel(R) Core(TM) i7-2620M CPU @ 2.70GHz
WORD_SIZE: 64
BLAS: libopenblas (USE64BITINT DYNAMIC_ARCH NO_AFFINITY Sandybridge)
LAPACK: libopenblas64_
LIBM: libopenlibm
LLVM: libLLVM-3.3

julia> Pkg.status("PyCall")
- PyCall 1.4.0

julia> ENV["PYTHON"] = "/usr/bin/python3.4"
"/usr/bin/python3.4"

julia> Pkg.build("PyCall")
INFO: Building PyCall
INFO: PyCall is using /usr/bin/python3.4 (Python 3.4.2) at /usr/bin/python3.4, libpython = libpython3.4m

julia> using PyCall
INFO: Recompiling stale cache file /home/bnewbold/.julia/lib/v0.4/PyCall.ji for module PyCall.

julia> pywrap(pyimport("os"))
__anon__

julia> pywrap(pyimport("math"))
__anon__

julia> pywrap(pyimport("inspect"))
```

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Línea de trabajo

Reproduce the hang with Julia 0.4.3, PyCall 1.4.0, Python 3.4, and pywrap(pyimport("inspect")), comparing it with the os and math examples and Python 2.7. Start by tracing pywrap and PyCall's internal use of Python's inspect module. Done means the inspect call no longer hangs and returns the expected __anon__ module result.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
julia, python
Área
backend
Tipo de issue
Error
Dificultad
4/5
Tiempo estimado
3-5 días
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
35/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.