jorisvandenbossche commented on issue #38626:
URL: https://github.com/apache/arrow/issues/38626#issuecomment-1801519523
I can confirm the segfault, both with pyarrow 13.0 and main from a few days
ago. The gdb bactrace:
```
Thread 1 "python" received signal SIGSEGV, Segmentation fault.
0x0000555555737cdc in new_threadstate (interp=0x0, init=init@entry=1) at
/usr/local/src/conda/python-3.10.6/Python/pystate.c:616
616 /usr/local/src/conda/python-3.10.6/Python/pystate.c: No such file or
directory.
(gdb) bt
#0 0x0000555555737cdc in new_threadstate (interp=0x0, init=init@entry=1) at
/usr/local/src/conda/python-3.10.6/Python/pystate.c:616
#1 0x00005555555fa7ce in PyThreadState_New (interp=<optimized out>) at
/usr/local/src/conda/python-3.10.6/Python/pystate.c:684
#2 PyGILState_Ensure () at
/usr/local/src/conda/python-3.10.6/Python/pystate.c:1504
#3 0x00007ffff6d183f7 in arrow::py::PyAcquireGIL::acquire (this=<synthetic
pointer>) at
/home/joris/scipy/repos/arrow/python/pyarrow/src/arrow/python/common.h:115
#4 arrow::py::PyAcquireGIL::acquire (this=<synthetic pointer>) at
/home/joris/scipy/repos/arrow/python/pyarrow/src/arrow/python/common.h:113
#5 arrow::py::PyAcquireGIL::PyAcquireGIL (this=<synthetic pointer>) at
/home/joris/scipy/repos/arrow/python/pyarrow/src/arrow/python/common.h:109
#6 arrow::py::OwnedRefNoGIL::~OwnedRefNoGIL (this=0x555555e35b38,
__in_chrg=<optimized out>) at
/home/joris/scipy/repos/arrow/python/pyarrow/src/arrow/python/common.h:233
#7 arrow::py::OwnedRefNoGIL::~OwnedRefNoGIL (this=0x555555e35b38,
__in_chrg=<optimized out>) at
/home/joris/scipy/repos/arrow/python/pyarrow/src/arrow/python/common.h:227
#8 arrow::py::PyExtensionType::~PyExtensionType (this=0x555555e35ac0,
__in_chrg=<optimized out>) at
/home/joris/scipy/repos/arrow/python/pyarrow/src/arrow/python/extension_type.h:31
#9 arrow::py::PyExtensionType::~PyExtensionType (this=0x555555e35ac0,
__in_chrg=<optimized out>) at
/home/joris/scipy/repos/arrow/python/pyarrow/src/arrow/python/extension_type.h:31
#10 0x00007ffff5684815 in
std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release
(this=0x555555e79bc0)
at
/home/joris/miniconda3/envs/arrow-dev/x86_64-conda-linux-gnu/include/c++/10.4.0/bits/shared_ptr_base.h:158
#11 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count
(this=0x555555e62a20, __in_chrg=<optimized out>)
at
/home/joris/miniconda3/envs/arrow-dev/x86_64-conda-linux-gnu/include/c++/10.4.0/bits/shared_ptr_base.h:736
#12 std::__shared_ptr<arrow::ExtensionType,
(__gnu_cxx::_Lock_policy)2>::~__shared_ptr (this=0x555555e62a18,
__in_chrg=<optimized out>)
at
/home/joris/miniconda3/envs/arrow-dev/x86_64-conda-linux-gnu/include/c++/10.4.0/bits/shared_ptr_base.h:1188
#13 std::shared_ptr<arrow::ExtensionType>::~shared_ptr (this=0x555555e62a18,
__in_chrg=<optimized out>) at
/home/joris/miniconda3/envs/arrow-dev/x86_64-conda-linux-gnu/include/c++/10.4.0/bits/shared_ptr.h:121
#14 std::pair<std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > const, std::shared_ptr<arrow::ExtensionType> >::~pair
(this=0x555555e629f8, __in_chrg=<optimized out>)
at
/home/joris/miniconda3/envs/arrow-dev/x86_64-conda-linux-gnu/include/c++/10.4.0/bits/stl_pair.h:211
#15
__gnu_cxx::new_allocator<std::__detail::_Hash_node<std::pair<std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const,
std::shared_ptr<arrow::ExtensionType> >, true>
>::destroy<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > const, std::shared_ptr<arrow::ExtensionType> > >
(__p=0x555555e629f8, this=<optimized out>)
at
/home/joris/miniconda3/envs/arrow-dev/x86_64-conda-linux-gnu/include/c++/10.4.0/ext/new_allocator.h:162
#16
std::allocator_traits<std::allocator<std::__detail::_Hash_node<std::pair<std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const,
std::shared_ptr<arrow::ExtensionType> >, true> >
>::destroy<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > const, std::shared_ptr<arrow::ExtensionType> > >
(__p=0x555555e629f8, __a=...)
at
/home/joris/miniconda3/envs/arrow-dev/x86_64-conda-linux-gnu/include/c++/10.4.0/bits/alloc_traits.h:531
#17
std::__detail::_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const,
std::shared_ptr<arrow::ExtensionType> >, true> > >::_M_deallocate_node
(__n=0x555555e629f0, this=<optimized out>) at
/home/joris/miniconda3/envs/arrow-dev/x86_64-conda-linux-gnu/include/c++/10.4.0/bits/hashtable_policy.h:2054
#18
std::__detail::_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const,
std::shared_ptr<arrow::ExtensionType> >, true> > >::_M_deallocate_nodes
(this=<optimized out>, __n=0x555555d68f00) at
/home/joris/miniconda3/envs/arrow-dev/x86_64-conda-linux-gnu/include/c++/10.4.0/bits/hashtable_policy.h:2076
#19 std::_Hashtable<std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> >, std::pair<std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const,
std::shared_ptr<arrow::ExtensionType> >,
std::allocator<std::pair<std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const,
std::shared_ptr<arrow::ExtensionType> > >, std::__detail::_Select1st,
std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > >, std::hash<std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > >,
std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash,
std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true,
false, true> >::clear (this=0x555555e58450)
at
/home/joris/miniconda3/envs/arrow-dev/x86_64-conda-linux-gnu/include/c++/10.4.0/bits/hashtable.h:2085
#20 std::_Hashtable<std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> >, std::pair<std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const,
std::shared_ptr<arrow::ExtensionType> >,
std::allocator<std::pair<std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const,
std::shared_ptr<arrow::ExtensionType> > >, std::__detail::_Select1st,
std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > >, std::hash<std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > >,
std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash,
std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true,
false, true> >::~_Hashtable (this=0x555555e58450, __in_chrg=<optimized out>)
at
/home/joris/miniconda3/envs/arrow-dev/x86_64-conda-linux-gnu/include/c++/10.4.0/bits/hashtable.h:1442
#21 std::unordered_map<std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> >,
std::shared_ptr<arrow::ExtensionType>,
std::hash<std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > >,
std::allocator<std::pair<std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const,
std::shared_ptr<arrow::ExtensionType> > > >::~unordered_map
(this=0x555555e58450, __in_chrg=<optimized out>)
at
/home/joris/miniconda3/envs/arrow-dev/x86_64-conda-linux-gnu/include/c++/10.4.0/bits/unordered_map.h:102
#22 arrow::ExtensionTypeRegistryImpl::~ExtensionTypeRegistryImpl
(this=0x555555e58420, __in_chrg=<optimized out>) at
/home/joris/scipy/repos/arrow/cpp/src/arrow/extension_type.cc:97
#23 0x00007ffff5684a5a in
std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release
(this=0x555555e58410)
at
/home/joris/miniconda3/envs/arrow-dev/x86_64-conda-linux-gnu/include/c++/10.4.0/bits/shared_ptr_base.h:158
#24 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count
(this=<optimized out>, __in_chrg=<optimized out>)
at
/home/joris/miniconda3/envs/arrow-dev/x86_64-conda-linux-gnu/include/c++/10.4.0/bits/shared_ptr_base.h:736
#25 std::__shared_ptr<arrow::ExtensionTypeRegistry,
(__gnu_cxx::_Lock_policy)2>::~__shared_ptr (this=<optimized out>,
__in_chrg=<optimized out>)
at
/home/joris/miniconda3/envs/arrow-dev/x86_64-conda-linux-gnu/include/c++/10.4.0/bits/shared_ptr_base.h:1188
#26 std::shared_ptr<arrow::ExtensionTypeRegistry>::~shared_ptr
(this=<optimized out>, __in_chrg=<optimized out>)
at
/home/joris/miniconda3/envs/arrow-dev/x86_64-conda-linux-gnu/include/c++/10.4.0/bits/shared_ptr.h:121
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]