[pypy-issue] Issue #2185: Crash in JIT loading the Django admin (pypy/pypy)

Chris Adams issues-reply at bitbucket.org
Mon Nov 9 18:02:49 EST 2015

New issue 2185: Crash in JIT loading the Django admin

Chris Adams:

I have a fairly complicated Django app, so this still needs a simple reduction but currently simply running the Django 1.8.6 admin under PyPy 4.0.0 encounters the following for most of the URLs in the admin app. 

All of the other apps work fine, even for hundreds of requests, but in django.contrib.admin every view hits an RPython traceback:

RPython traceback:
  File "pypy_module_pypyjit_interp_jit.c", line 115, in jump_absolute__AccessDirect_None
  File "rpython_jit_metainterp_warmstate.c", line 18033, in maybe_compile_and_run__star_5_1
  File "rpython_jit_metainterp_warmstate.c", line 48547, in bound_reached__star_5_1
  File "rpython_jit_metainterp_pyjitpl.c", line 20659, in compile_and_run_once___rpython_jit_metainterp_ji_23
  File "rpython_jit_metainterp_pyjitpl.c", line 5292, in MetaInterp__compile_and_run_once
  File "rpython_jit_metainterp_pyjitpl.c", line 22425, in MetaInterp_interpret
  File "rpython_jit_metainterp_pyjitpl.c", line 37972, in MetaInterp__interpret
  File "rpython_jit_metainterp_pyjitpl.c", line 57497, in MIFrame_run_one_step
  File "rpython_jit_metainterp_pyjitpl_2.c", line 36179, in MIFrame_opimpl_jit_merge_point
  File "rpython_jit_metainterp_pyjitpl_3.c", line 34510, in MetaInterp_reached_loop_header
  File "rpython_jit_metainterp_pyjitpl_4.c", line 15341, in MetaInterp_compile_loop
  File "rpython_jit_metainterp_compile.c", line 12600, in compile_loop
  File "rpython_jit_metainterp_optimizeopt___init__.c", line 276, in optimize_trace
  File "rpython_jit_metainterp_optimizeopt_unroll.c", line 6348, in UnrollOptimizer_optimize_peeled_loop
  File "rpython_jit_metainterp_optimizeopt_unroll.c", line 19129, in UnrollOptimizer_jump_to_existing_trace
  File "rpython_jit_metainterp_optimizeopt_unroll.c", line 24981, in UnrollOptimizer_inline_short_preamble
  File "rpython_jit_metainterp_optimizeopt_unroll.c", line 27253, in UnrollOptimizer__map_args
~~~ Crash in JIT! <KeyError object at 0x10182a798>
Abort trap: 6

Is there a recommended way to collect a bug report for this kind of crash? 

Oddly enough, running it with "--jit off" does not affect the problem, although it's noticeably slower.

Setting ```PYPYLOG=:-``` produces a lot of output at startup but nothing around the time of the crash.

Python 2.7.10 (850edf14b2c75573720f59e95767335fb1affe55, Oct 30 2015, 00:18:28)
[PyPy 4.0.0 with GCC 4.2.1 Compatible Apple LLVM 7.0.0 (clang-700.1.76)]

This is running inside a virtualenv

More information about the pypy-issue mailing list