Antoine Pitrou created ARROW-2259:
-------------------------------------
Summary: [C++] importing pyarrow segfaults in boost_regex
Key: ARROW-2259
URL: https://issues.apache.org/jira/browse/ARROW-2259
Project: Apache Arrow
Issue Type: Bug
Components: C++
Reporter: Antoine Pitrou
This is new (started on changeset bfac60dd73bffa5f7bcefc890486268036182278) and
seems related to the use of boost_regex. I am building on Ubuntu 16.04 with the
{{boost-cpp}} package from conda-forge.
Here is the gdb backtrace:
{code}
#0 std::string::_Rep::_M_is_leaked (this=this@entry=0xffffffffffffffe8)
at
/home/msarahan/miniconda2/conda-bld/compilers_linux-64_1507259624353/work/.build/x86_64-conda_cos6-linux-gnu/build/build-cc-gcc-final/x86_64-conda_cos6-linux-gnu/libstdc++-v3/include/bits/basic_string.h:3075
#1 0x00007ffff1014856 in std::string::_Rep::_M_grab (this=0xffffffffffffffe8,
__alloc1=..., __alloc2=...)
at
/home/msarahan/miniconda2/conda-bld/compilers_linux-64_1507259624353/work/.build/x86_64-conda_cos6-linux-gnu/build/build-cc-gcc-final/x86_64-conda_cos6-linux-gnu/libstdc++-v3/include/bits/basic_string.h:3126
#2 0x00007ffff101489d in std::basic_string<char, std::char_traits<char>,
std::allocator<char> >::basic_string (this=0x7fffffffa0e0, __str=...)
at
/home/msarahan/miniconda2/conda-bld/compilers_linux-64_1507259624353/work/.build/x86_64-conda_cos6-linux-gnu/build/build-cc-gcc-final/x86_64-conda_cos6-linux-gnu/libstdc++-v3/include/bits/basic_string.tcc:613
#3 0x00007ffff0a791fc in
boost::re_detail_106600::cpp_regex_traits_char_layer<char>::init() ()
from
/home/antoine/miniconda3/envs/pyarrow/bin/../lib/libboost_regex.so.1.66.0
#4 0x00007ffff0ac1803 in
boost::object_cache<boost::re_detail_106600::cpp_regex_traits_base<char>,
boost::re_detail_106600::cpp_regex_traits_implementation<char>
>::do_get(boost::re_detail_106600::cpp_regex_traits_base<char> const&, unsigned
long) ()
from
/home/antoine/miniconda3/envs/pyarrow/bin/../lib/libboost_regex.so.1.66.0
#5 0x00007ffff0acb62b in boost::basic_regex<char, boost::regex_traits<char,
boost::cpp_regex_traits<char> > >::do_assign(char const*, char const*, unsigned
int) () from
/home/antoine/miniconda3/envs/pyarrow/bin/../lib/libboost_regex.so.1.66.0
#6 0x00007ffff182b6cb in boost::basic_regex<char, boost::regex_traits<char,
boost::cpp_regex_traits<char> > >::assign (this=0x7fffffffa700,
p1=0x7ffff18a61e2
"(.*?)\\s*(?:(version\\s*(?:([^(]*?)\\s*(?:\\(\\s*build\\s*([^)]*?)\\s*\\))?)?)?)",
p2=0x7ffff18a622a "", f=0)
at
/home/antoine/miniconda3/envs/pyarrow/include/boost/regex/v4/basic_regex.hpp:381
#7 0x00007ffff182b657 in boost::basic_regex<char, boost::regex_traits<char,
boost::cpp_regex_traits<char> > >::assign (this=0x7fffffffa700,
p=0x7ffff18a61e2
"(.*?)\\s*(?:(version\\s*(?:([^(]*?)\\s*(?:\\(\\s*build\\s*([^)]*?)\\s*\\))?)?)?)",
f=0)
at
/home/antoine/miniconda3/envs/pyarrow/include/boost/regex/v4/basic_regex.hpp:366
#8 0x00007ffff180e103 in boost::basic_regex<char, boost::regex_traits<char,
boost::cpp_regex_traits<char> > >::basic_regex (this=0x7fffffffa700,
p=0x7ffff18a61e2
"(.*?)\\s*(?:(version\\s*(?:([^(]*?)\\s*(?:\\(\\s*build\\s*([^)]*?)\\s*\\))?)?)?)",
f=0)
at
/home/antoine/miniconda3/envs/pyarrow/include/boost/regex/v4/basic_regex.hpp:335
#9 0x00007ffff180b430 in parquet::ApplicationVersion::ApplicationVersion
(this=0x7ffff1b98bf8 <parquet::ApplicationVersion::PARQUET_251_FIXED_VERSION>,
created_by=...) at /home/antoine/parquet-cpp/src/parquet/metadata.cc:452
#10 0x00007ffff16bfa21 in __cxx_global_var_init.1(void) () at
/home/antoine/parquet-cpp/src/parquet/metadata.cc:35
#11 0x00007ffff16bfbfe in _GLOBAL__sub_I_metadata.stdout.fsol.16106.d9N3Ps.ii
() from /home/antoine/miniconda3/envs/pyarrow/bin/../lib/libparquet.so.1
#12 0x00007ffff7de76ba in call_init (l=<optimized out>, argc=argc@entry=3,
argv=argv@entry=0x7fffffffd7b8, env=env@entry=0x7fffffffd7d8) at dl-init.c:72
#13 0x00007ffff7de77cb in call_init (env=0x7fffffffd7d8, argv=0x7fffffffd7b8,
argc=3, l=<optimized out>) at dl-init.c:30
#14 _dl_init (main_map=main_map@entry=0x8acbb0, argc=3, argv=0x7fffffffd7b8,
env=0x7fffffffd7d8) at dl-init.c:120
#15 0x00007ffff7dec8e2 in dl_open_worker (a=a@entry=0x7fffffffaa90) at
dl-open.c:575
#16 0x00007ffff7de7564 in _dl_catch_error
(objname=objname@entry=0x7fffffffaa80,
errstring=errstring@entry=0x7fffffffaa88,
mallocedp=mallocedp@entry=0x7fffffffaa7f,
operate=operate@entry=0x7ffff7dec4d0 <dl_open_worker>,
args=args@entry=0x7fffffffaa90) at dl-error.c:187
#17 0x00007ffff7debda9 in _dl_open (file=0x7ffff6238ae0
"/home/antoine/arrow/python/pyarrow/lib.cpython-36m-x86_64-linux-gnu.so",
mode=-2147483646,
caller_dlopen=0x7ffff7a53e21 <_PyImport_FindSharedFuncptr+417>, nsid=-2,
argc=<optimized out>, argv=<optimized out>, env=0x7fffffffd7d8) at dl-open.c:660
#18 0x00007ffff747bf09 in dlopen_doit (a=a@entry=0x7fffffffacc0) at dlopen.c:66
#19 0x00007ffff7de7564 in _dl_catch_error (objname=0x632e00,
errstring=0x632e08, mallocedp=0x632df8, operate=0x7ffff747beb0 <dlopen_doit>,
args=0x7fffffffacc0)
at dl-error.c:187
#20 0x00007ffff747c571 in _dlerror_run (operate=operate@entry=0x7ffff747beb0
<dlopen_doit>, args=args@entry=0x7fffffffacc0) at dlerror.c:163
#21 0x00007ffff747bfa1 in __dlopen (file=file@entry=0x7ffff6238ae0
"/home/antoine/arrow/python/pyarrow/lib.cpython-36m-x86_64-linux-gnu.so",
mode=<optimized out>) at dlopen.c:87
#22 0x00007ffff7a53e21 in _PyImport_FindSharedFuncptr
(prefix=prefix@entry=0x7ffff7add326 "PyInit",
shortname=shortname@entry=0x7ffff2d887a8 "lib",
pathname=pathname@entry=0x7ffff6238ae0
"/home/antoine/arrow/python/pyarrow/lib.cpython-36m-x86_64-linux-gnu.so",
fp=fp@entry=0x0)
at ./Python/dynload_shlib.c:95
[...]
{code}
[~cpcloud]
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)