westonpace commented on PR #39216:
URL: https://github.com/apache/arrow/pull/39216#issuecomment-1865209184
I believe I can reproduce the flaky test failure and get the following
backtrace:
```
Thread 20 "python" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fff59d58640 (LWP 58788)]
0x00007ffff5cc8dc7 in aesni_encrypt () from
/home/pace/miniconda3/envs/conbench3/lib/python3.11/lib-dynload/../../libcrypto.so.3
(gdb) bt
#0 0x00007ffff5cc8dc7 in aesni_encrypt () from
/home/pace/miniconda3/envs/conbench3/lib/python3.11/lib-dynload/../../libcrypto.so.3
#1 0x00007ffff5ecbf4d in CRYPTO_gcm128_decrypt_ctr32 () from
/home/pace/miniconda3/envs/conbench3/lib/python3.11/lib-dynload/../../libcrypto.so.3
#2 0x00007ffff5f7bcf6 in generic_aes_gcm_cipher_update () from
/home/pace/miniconda3/envs/conbench3/lib/python3.11/lib-dynload/../../libcrypto.so.3
#3 0x00007ffff5fc88f9 in gcm_cipher_internal () from
/home/pace/miniconda3/envs/conbench3/lib/python3.11/lib-dynload/../../libcrypto.so.3
#4 0x00007ffff5fc93ac in ossl_gcm_stream_update () from
/home/pace/miniconda3/envs/conbench3/lib/python3.11/lib-dynload/../../libcrypto.so.3
#5 0x00007ffff5de2a6f in EVP_DecryptUpdate () from
/home/pace/miniconda3/envs/conbench3/lib/python3.11/lib-dynload/../../libcrypto.so.3
#6 0x00007fffe5f2fc31 in
parquet::encryption::AesDecryptor::AesDecryptorImpl::GcmDecrypt
(this=0x555556b22fa0, ciphertext=0x7fff4802ac84 "*", ciphertext_len=46,
key=0x555556035d90
"\017\341sn\f\020\332M;٭\266\005\357@k\312\001\205\021\022a]w\367(-ڣ\334",
<incomplete sequence \322>, key_len=32, aad=0x555556c7caa0
"h\320\177\331\325:Vl\004", aad_len=13,
plaintext=0x7fff44001180 "\274") at
/home/pace/dev/arrow/cpp/src/parquet/encryption/encryption_internal.cc:499
#7 0x00007fffe5f30b23 in
parquet::encryption::AesDecryptor::AesDecryptorImpl::Decrypt
(this=0x555556b22fa0, ciphertext=0x7fff4802ac84 "*", ciphertext_len=0,
key=0x555556035d90
"\017\341sn\f\020\332M;٭\266\005\357@k\312\001\205\021\022a]w\367(-ڣ\334",
<incomplete sequence \322>, key_len=32, aad=0x555556c7caa0
"h\320\177\331\325:Vl\004", aad_len=13,
plaintext=0x7fff44001180 "\274") at
/home/pace/dev/arrow/cpp/src/parquet/encryption/encryption_internal.cc:590
#8 0x00007fffe5f2e0f2 in parquet::encryption::AesDecryptor::Decrypt
(this=0x5555569d4720, plaintext=0x7fff4802ac84 "*", plaintext_len=0,
key=0x555556035d90
"\017\341sn\f\020\332M;٭\266\005\357@k\312\001\205\021\022a]w\367(-ڣ\334",
<incomplete sequence \322>, key_len=32, aad=0x555556c7caa0
"h\320\177\331\325:Vl\004", aad_len=13,
ciphertext=0x7fff44001180 "\274") at
/home/pace/dev/arrow/cpp/src/parquet/encryption/encryption_internal.cc:356
#9 0x00007fffe5be6a1b in parquet::Decryptor::Decrypt (this=0x555556c7ca40,
ciphertext=0x7fff4802ac84 "*", ciphertext_len=0, plaintext=0x7fff44001180
"\274")
at
/home/pace/dev/arrow/cpp/src/parquet/encryption/internal_file_decryptor.cc:40
#10 0x00007fffe5921b1f in
parquet::ThriftDeserializer::DeserializeMessage<parquet::format::PageHeader>
(this=0x7fff59d57438, buf=0x7fff4802ac84 "*", len=0x7fff59d573f0,
deserialized_msg=0x7fff4c002688,
decryptor=0x555556c7ca40) at
/home/pace/dev/arrow/cpp/src/parquet/thrift_internal.h:420
#11 0x00007fffe582b25e in parquet::(anonymous
namespace)::SerializedPageReader::NextPage (this=0x7fff4c002620) at
/home/pace/dev/arrow/cpp/src/parquet/column_reader.cc:449
#12 0x00007fffe58d8b57 in parquet::(anonymous
namespace)::ColumnReaderImplBase<parquet::PhysicalType<(parquet::Type::type)2>
>::ReadNewPage (this=0x7fff4c001aa8)
at /home/pace/dev/arrow/cpp/src/parquet/column_reader.cc:720
#13 0x00007fffe58ae61c in parquet::(anonymous
namespace)::ColumnReaderImplBase<parquet::PhysicalType<(parquet::Type::type)2>
>::HasNextInternal (this=0x7fff4c001aa8)
at /home/pace/dev/arrow/cpp/src/parquet/column_reader.cc:700
#14 0x00007fffe5884017 in parquet::internal::(anonymous
namespace)::TypedRecordReader<parquet::PhysicalType<(parquet::Type::type)2>
>::ReadRecords (this=0x7fff4c001aa0, num_records=6)
at /home/pace/dev/arrow/cpp/src/parquet/column_reader.cc:1389
#15 0x00007fffe56185d7 in parquet::arrow::(anonymous
namespace)::LeafReader::LoadBatch (this=0x5555569ede00, records_to_read=6) at
/home/pace/dev/arrow/cpp/src/parquet/arrow/reader.cc:482
#16 0x00007fffe564c33a in parquet::arrow::ColumnReaderImpl::NextBatch
(this=0x5555569ede00, batch_size=6, out=0x7fff59d57a30) at
/home/pace/dev/arrow/cpp/src/parquet/arrow/reader.cc:109
#17 0x00007fffe5614a49 in parquet::arrow::(anonymous
namespace)::FileReaderImpl::ReadColumn (this=0x55555693c2e0, i=0,
row_groups=std::vector of length 1, capacity 1 = {...}, reader=0x5555569ede00,
out=0x7fff59d57a30) at
/home/pace/dev/arrow/cpp/src/parquet/arrow/reader.cc:284
#18 0x00007fffe5624b9a in operator() (__closure=0x7fff4c004ce8, i=0,
reader=std::shared_ptr<parquet::arrow::ColumnReaderImpl> (use count 2, weak
count 0) = {...})
at /home/pace/dev/arrow/cpp/src/parquet/arrow/reader.cc:1252
#19 0x00007fffe5644a41 in
arrow::detail::ContinueFuture::operator()<parquet::arrow::(anonymous
namespace)::FileReaderImpl::DecodeRowGroups(std::shared_ptr<parquet::arrow::(anonymous
namespace)::FileReaderImpl>, const std::vector<int>&, const std::vector<int>&,
arrow::internal::Executor*)::<lambda(size_t,
std::shared_ptr<parquet::arrow::ColumnReaderImpl>)>&, long unsigned int&,
std::shared_ptr<parquet::arrow::ColumnReaderImpl>&>(arrow::Future<std::shared_ptr<arrow::ChunkedArray>
>, struct {...} &) const (this=0x7fff4c004cc8, next=..., f=...) at
/home/pace/dev/arrow/cpp/src/arrow/util/future.h:150
#20 0x00007fffe5644167 in std::__invoke_impl<void,
arrow::detail::ContinueFuture&,
arrow::Future<std::shared_ptr<arrow::ChunkedArray> >&,
parquet::arrow::(anonymous
namespace)::FileReaderImpl::DecodeRowGroups(std::shared_ptr<parquet::arrow::(anonymous
namespace)::FileReaderImpl>, const std::vector<int>&, const std::vector<int>&,
arrow::internal::Executor*)::<lambda(size_t,
std::shared_ptr<parquet::arrow::ColumnReaderImpl>)>&, long unsigned int&,
std::shared_ptr<parquet::arrow::ColumnReaderImpl>&>(std::__invoke_other,
arrow::detail::ContinueFuture &) (__f=...) at
/usr/include/c++/11/bits/invoke.h:61
#21 0x00007fffe564334f in std::__invoke<arrow::detail::ContinueFuture&,
arrow::Future<std::shared_ptr<arrow::ChunkedArray> >&,
parquet::arrow::(anonymous
namespace)::FileReaderImpl::DecodeRowGroups(std::shared_ptr<parquet::arrow::(anonymous
namespace)::FileReaderImpl>, const std::vector<int>&, const std::vector<int>&,
arrow::internal::Executor*)::<lambda(size_t,
std::shared_ptr<parquet::arrow::ColumnReaderImpl>)>&, long unsigned int&,
std::shared_ptr<parquet::arrow::ColumnReaderImpl>&>(arrow::detail::ContinueFuture
&) (__fn=...) at /usr/include/c++/11/bits/invoke.h:96
#22 0x00007fffe5641dbf in
std::_Bind<arrow::detail::ContinueFuture(arrow::Future<std::shared_ptr<arrow::ChunkedArray>
>, parquet::arrow::(anonymous
namespace)::FileReaderImpl::DecodeRowGroups(std::shared_ptr<parquet::arrow::(anonymous
namespace)::FileReaderImpl>, const std::vector<int>&, const std::vector<int>&,
arrow::internal::Executor*)::<lambda(size_t,
std::shared_ptr<parquet::arrow::ColumnReaderImpl>)>, long unsigned int,
std::shared_ptr<parquet::arrow::ColumnReaderImpl>)>::__call<void, 0, 1, 2,
3>(std::tuple<> &&, std::_Index_tuple<0, 1, 2, 3>) (this=0x7fff4c004cc8,
__args=...) at /usr/include/c++/11/functional:420
#23 0x00007fffe5641320 in
std::_Bind<arrow::detail::ContinueFuture(arrow::Future<std::shared_ptr<arrow::ChunkedArray>
>, parquet::arrow::(anonymous
namespace)::FileReaderImpl::DecodeRowGroups(std::shared_ptr<parquet::arrow::(anonymous
namespace)::FileReaderImpl>, const std::vector<int>&, const std::vector<int>&,
arrow::internal::Executor*)::<lambda(size_t,
std::shared_ptr<parquet::arrow::ColumnReaderImpl>)>, long unsigned int,
std::shared_ptr<parquet::arrow::ColumnReaderImpl>)>::operator()<>(void)
(this=0x7fff4c004cc8) at /usr/include/c++/11/functional:503
#24 0x00007fffe563c20f in
arrow::internal::FnOnce<void()>::FnImpl<std::_Bind<arrow::detail::ContinueFuture(arrow::Future<std::shared_ptr<arrow::ChunkedArray>
>, parquet::arrow::(anonymous
namespace)::FileReaderImpl::DecodeRowGroups(std::shared_ptr<parquet::arrow::(anonymous
namespace)::FileReaderImpl>, const std::vector<int>&, const std::vector<int>&,
arrow::internal::Executor*)::<lambda(size_t,
std::shared_ptr<parquet::arrow::ColumnReaderImpl>)>, long unsigned int,
std::shared_ptr<parquet::arrow::ColumnReaderImpl>)> >::invoke(void)
(this=0x7fff4c004cc0) at
/home/pace/dev/arrow/cpp/src/arrow/util/functional.h:152
#25 0x00007fffed99223d in arrow::internal::FnOnce<void ()>::operator()() &&
(this=0x7fff59d57cf0) at
/home/pace/dev/arrow/cpp/src/arrow/util/functional.h:140
#26 0x00007fffed984007 in arrow::internal::WorkerLoop
(state=std::shared_ptr<arrow::internal::ThreadPool::State> (use count 9, weak
count 1) = {...}, it={_M_id = {_M_thread = 140734700553792}})
at /home/pace/dev/arrow/cpp/src/arrow/util/thread_pool.cc:457
#27 0x00007fffed98693d in operator() (__closure=0x7fff4c001458) at
/home/pace/dev/arrow/cpp/src/arrow/util/thread_pool.cc:618
#28 0x00007fffed9902b4 in std::__invoke_impl<void,
arrow::internal::ThreadPool::LaunchWorkersUnlocked(int)::<lambda()>
>(std::__invoke_other, struct {...} &&) (__f=...) at
/usr/include/c++/11/bits/invoke.h:61
#29 0x00007fffed990243 in
std::__invoke<arrow::internal::ThreadPool::LaunchWorkersUnlocked(int)::<lambda()>
>(struct {...} &&) (__fn=...) at /usr/include/c++/11/bits/invoke.h:96
#30 0x00007fffed990150 in
std::thread::_Invoker<std::tuple<arrow::internal::ThreadPool::LaunchWorkersUnlocked(int)::<lambda()>
> >::_M_invoke<0>(std::_Index_tuple<0>) (this=0x7fff4c001458)
at /usr/include/c++/11/bits/std_thread.h:259
--Type <RET> for more, q to quit, c to continue without paging--
#31 0x00007fffed9900bf in
std::thread::_Invoker<std::tuple<arrow::internal::ThreadPool::LaunchWorkersUnlocked(int)::<lambda()>
> >::operator()(void) (this=0x7fff4c001458)
at /usr/include/c++/11/bits/std_thread.h:266
#32 0x00007fffed990088 in
std::thread::_State_impl<std::thread::_Invoker<std::tuple<arrow::internal::ThreadPool::LaunchWorkersUnlocked(int)::<lambda()>
> > >::_M_run(void) (this=0x7fff4c001450)
at /usr/include/c++/11/bits/std_thread.h:211
#33 0x00007ffff582ea93 in std::execute_native_thread_routine (__p=<optimized
out>) at ../../../../../libstdc++-v3/src/c++11/thread.cc:82
#34 0x00007ffff7c94ac3 in start_thread (arg=<optimized out>) at
./nptl/pthread_create.c:442
#35 0x00007ffff7d26660 in clone3 () at
../sysdeps/unix/sysv/linux/x86_64/clone3.S:81
```
--
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]