Last active
July 27, 2017 00:05
-
-
Save jeffknupp/73879feacf9c560afd4f1a20213dc6ef to your computer and use it in GitHub Desktop.
Stack trace of bug where jemalloc hangs during large memory reallocation initiated by Arrow
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Thread 1 "python3" received signal SIGINT, Interrupt. | |
je_spin_adaptive (spin=<synthetic pointer>) at include/jemalloc/internal/spin.h:40 | |
40 include/jemalloc/internal/spin.h: No such file or directory. | |
(gdb) where | |
#0 je_spin_adaptive (spin=<synthetic pointer>) at include/jemalloc/internal/spin.h:40 | |
#1 chunk_dss_max_update (new_addr=<optimized out>) at src/chunk_dss.c:83 | |
#2 je_chunk_alloc_dss (tsdn=tsdn@entry=0x7ffff7fe8620, arena=arena@entry=0x7fffc0200140, new_addr=new_addr@entry=0x7fff37e00000, size=size@entry=2097152, alignment=alignment@entry=2097152, | |
zero=zero@entry=0x7fffffffbac0, commit=commit@entry=0x7fffffffba10) at src/chunk_dss.c:122 | |
#3 0x00007fffd346369f in chunk_alloc_core (dss_prec=dss_prec_secondary, commit=0x7fffffffba10, zero=0x7fffffffbac0, alignment=2097152, size=2097152, new_addr=0x7fff37e00000, arena=0x7fffc0200140, | |
tsdn=0x7ffff7fe8620) at src/chunk.c:357 | |
#4 chunk_alloc_default_impl (commit=0x7fffffffba10, zero=0x7fffffffbac0, alignment=2097152, size=2097152, new_addr=0x7fff37e00000, arena=0x7fffc0200140, tsdn=0x7ffff7fe8620) at src/chunk.c:430 | |
#5 je_chunk_alloc_wrapper (tsdn=tsdn@entry=0x7ffff7fe8620, arena=arena@entry=0x7fffc0200140, chunk_hooks=chunk_hooks@entry=0x7fffffffba30, new_addr=new_addr@entry=0x7fff37e00000, size=size@entry=2097152, | |
alignment=2097152, sn=sn@entry=0x7fffffffba20, zero=zero@entry=0x7fffffffbac0, commit=commit@entry=0x7fffffffba10) at src/chunk.c:490 | |
#6 0x00007fffd3457097 in arena_chunk_ralloc_huge_expand_hard (cdiff=2097152, udiff=2097152, nchunk=0x7fff37e00000, zero=0x7fffffffbac0, sn=0x7fffffffba20, usize=4194304, oldsize=2097152, | |
chunk=0x7fff37c00000, chunk_hooks=0x7fffffffba30, arena=0x7fffc0200140, tsdn=0x7ffff7fe8620) at src/arena.c:1040 | |
#7 je_arena_chunk_ralloc_huge_expand (tsdn=tsdn@entry=0x7ffff7fe8620, arena=arena@entry=0x7fffc0200140, chunk=chunk@entry=0x7fff37c00000, oldsize=oldsize@entry=2097152, usize=usize@entry=4194304, | |
zero=zero@entry=0x7fffffffbac0) at src/arena.c:1086 | |
#8 0x00007fffd3471032 in huge_ralloc_no_move_expand (tsdn=0x7ffff7fe8620, ptr=ptr@entry=0x7fff37c00000, oldsize=oldsize@entry=2097152, usize=usize@entry=4194304, zero=zero@entry=false) at src/huge.c:274 | |
#9 0x00007fffd3473317 in je_huge_ralloc_no_move (zero=false, usize_max=4194304, usize_min=4194304, oldsize=2097152, ptr=0x7fff37c00000, tsdn=0x7ffff7fe8620, tsdn@entry=0x0) at src/huge.c:319 | |
#10 je_huge_ralloc (tsd=tsd@entry=0x7ffff7fe8620, arena=arena@entry=0x0, ptr=ptr@entry=0x7fff37c00000, oldsize=oldsize@entry=2097152, usize=usize@entry=4194304, alignment=alignment@entry=64, zero=false, | |
tcache=tcache@entry=0x7fff3ac0d000) at src/huge.c:377 | |
#11 0x00007fffd345c3bd in je_arena_ralloc (tsd=0x7ffff7fe8620, arena=arena@entry=0x0, ptr=ptr@entry=0x7fff37c00000, oldsize=oldsize@entry=2097152, size=size@entry=4194304, alignment=alignment@entry=64, | |
zero=zero@entry=false, tcache=tcache@entry=0x7fff3ac0d000) at src/arena.c:3351 | |
#12 0x00007fffd344f27b in je_iralloct (arena=0x0, tcache=0x7fff3ac0d000, zero=false, alignment=64, size=4194304, oldsize=2097152, ptr=0x7fff37c00000, tsd=<optimized out>) | |
at include/jemalloc/internal/jemalloc_internal.h:1253 | |
#13 rallocx (ptr=0x7fff37c00000, size=4194304, flags=<optimized out>) at src/jemalloc.c:2408 | |
#14 0x00007fffd331fb30 in arrow::DefaultMemoryPool::Reallocate(long, long, unsigned char**) () from /usr/local/lib/python3.6/site-packages/pyarrow/libarrow.so.0 | |
#15 0x00007fffd32f3764 in arrow::PoolBuffer::Reserve(long) () from /usr/local/lib/python3.6/site-packages/pyarrow/libarrow.so.0 | |
#16 0x00007fffd32f3811 in arrow::PoolBuffer::Resize(long, bool) () from /usr/local/lib/python3.6/site-packages/pyarrow/libarrow.so.0 | |
#17 0x00007fffd3345a10 in arrow::io::BufferOutputStream::Reserve(long) () from /usr/local/lib/python3.6/site-packages/pyarrow/libarrow.so.0 | |
#18 0x00007fffd3345a76 in arrow::io::BufferOutputStream::Write(unsigned char const*, long) () from /usr/local/lib/python3.6/site-packages/pyarrow/libarrow.so.0 | |
#19 0x00007fffd0d74620 in parquet::ArrowOutputStream::Write(unsigned char const*, long) () from /usr/local/lib/python3.6/site-packages/pyarrow/libparquet.so.1 | |
#20 0x00007fffd0d4727a in parquet::SerializedPageWriter::WriteDictionaryPage(parquet::DictionaryPage const&) () from /usr/local/lib/python3.6/site-packages/pyarrow/libparquet.so.1 | |
#21 0x00007fffd0d19499 in parquet::TypedColumnWriter<parquet::DataType<(parquet::Type::type)5> >::WriteDictionaryPage() () from /usr/local/lib/python3.6/site-packages/pyarrow/libparquet.so.1 | |
#22 0x00007fffd0d148c6 in parquet::ColumnWriter::Close() () from /usr/local/lib/python3.6/site-packages/pyarrow/libparquet.so.1 | |
#23 0x00007fffd0ce8600 in arrow::Status parquet::arrow::FileWriter::Impl::TypedWriteBatch<parquet::DataType<(parquet::Type::type)5>, arrow::DoubleType>(parquet::ColumnWriter*, std::shared_ptr<arrow::Array> const&, long, short const*, short const*) () from /usr/local/lib/python3.6/site-packages/pyarrow/libparquet.so.1 | |
#24 0x00007fffd0ce5d95 in parquet::arrow::FileWriter::Impl::WriteColumnChunk(arrow::Array const&) () from /usr/local/lib/python3.6/site-packages/pyarrow/libparquet.so.1 | |
#25 0x00007fffd0ce660d in parquet::arrow::FileWriter::WriteColumnChunk(arrow::Array const&) () from /usr/local/lib/python3.6/site-packages/pyarrow/libparquet.so.1 | |
#26 0x00007fffd0ce68b1 in parquet::arrow::FileWriter::WriteTable(arrow::Table const&, long) () from /usr/local/lib/python3.6/site-packages/pyarrow/libparquet.so.1 | |
#27 0x00007fffbffe9053 in __pyx_pw_7pyarrow_8_parquet_13ParquetWriter_5write_table(_object*, _object*, _object*) () | |
from /usr/local/lib/python3.6/site-packages/pyarrow/_parquet.cpython-36m-x86_64-linux-gnu.so | |
#28 0x00000000004f47bb in _PyCFunction_FastCallDict (kwargs=<optimized out>, nargs=<optimized out>, args=<optimized out>, func_obj=0x7fff5895bb88) at Objects/methodobject.c:231 | |
#29 _PyCFunction_FastCallKeywords () at Objects/methodobject.c:294 | |
#30 0x000000000054d5e9 in call_function () at Python/ceval.c:4842 | |
#31 0x00000000005469da in _PyEval_EvalFrameDefault () at Python/ceval.c:3344 | |
#32 0x0000000000544d5f in PyEval_EvalFrameEx (throwflag=0, f=0x21ecb9f8) at Python/ceval.c:751 | |
#33 _PyEval_EvalCodeWithName () at Python/ceval.c:4172 | |
#34 0x000000000054e73b in fast_function () at Python/ceval.c:4983 | |
#35 0x000000000054d6cc in call_function () at Python/ceval.c:4863 | |
#36 0x0000000000545aea in _PyEval_EvalFrameDefault () at Python/ceval.c:3328 | |
#37 0x0000000000544d5f in PyEval_EvalFrameEx (throwflag=0, f=0x7fffa67f1dd8) at Python/ceval.c:751 | |
#38 _PyEval_EvalCodeWithName () at Python/ceval.c:4172 | |
#39 0x000000000054e73b in fast_function () at Python/ceval.c:4983 | |
#40 0x000000000054d6cc in call_function () at Python/ceval.c:4863 | |
#41 0x0000000000545aea in _PyEval_EvalFrameDefault () at Python/ceval.c:3328 | |
---Type <return> to continue, or q <return> to quit--- | |
#42 0x000000000054e67d in PyEval_EvalFrameEx (throwflag=0, f=0x1c800398) at Python/ceval.c:751 | |
#43 _PyFunction_FastCall (globals=<optimized out>, nargs=<optimized out>, args=<optimized out>, co=<optimized out>) at Python/ceval.c:4924 | |
#44 fast_function () at Python/ceval.c:4959 | |
#45 0x000000000054d6cc in call_function () at Python/ceval.c:4863 | |
#46 0x0000000000545aea in _PyEval_EvalFrameDefault () at Python/ceval.c:3328 | |
#47 0x000000000054e67d in PyEval_EvalFrameEx (throwflag=0, f=0x7fff54991208) at Python/ceval.c:751 | |
#48 _PyFunction_FastCall (globals=<optimized out>, nargs=<optimized out>, args=<optimized out>, co=<optimized out>) at Python/ceval.c:4924 | |
#49 fast_function () at Python/ceval.c:4959 | |
#50 0x000000000054d6cc in call_function () at Python/ceval.c:4863 | |
#51 0x0000000000545aea in _PyEval_EvalFrameDefault () at Python/ceval.c:3328 | |
#52 0x0000000000544d5f in PyEval_EvalFrameEx (throwflag=0, f=0x980d18) at Python/ceval.c:751 | |
#53 _PyEval_EvalCodeWithName () at Python/ceval.c:4172 | |
#54 0x0000000000544ad3 in PyEval_EvalCodeEx (closure=0x0, kwdefs=0x0, defcount=0, defs=0x0, kwcount=0, kws=0x0, argcount=0, args=0x0, locals=locals@entry=0x7ffff709a1f8, | |
globals=globals@entry=0x7ffff709a1f8, _co=_co@entry=0x7ffff70145d0) at Python/ceval.c:4193 | |
#55 PyEval_EvalCode (co=co@entry=0x7ffff70145d0, globals=globals@entry=0x7ffff709a1f8, locals=locals@entry=0x7ffff709a1f8) at Python/ceval.c:728 | |
#56 0x0000000000594092 in run_mod () at Python/pythonrun.c:980 | |
#57 0x00000000005944da in PyRun_FileExFlags () at Python/pythonrun.c:933 | |
#58 0x00000000005942bc in PyRun_SimpleFileExFlags () at Python/pythonrun.c:396 | |
#59 0x0000000000599b4f in run_file (p_cf=0x7fffffffd8f0, filename=0x92a2a0 L"scripts/parquet_export.py", fp=0x9bcbd0) at Modules/main.c:338 | |
#60 Py_Main () at Modules/main.c:809 | |
#61 0x00000000004a9039 in main () at ./Programs/python.c:69 | |
#62 0x00007ffff7100830 in __libc_start_main (main=0x4a8f50 <main>, argc=2, argv=0x7fffffffdb08, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffffffdaf8) | |
at ../csu/libc-start.c:291 | |
#63 0x0000000000591739 in _start () | |
(gdb) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment