amoeba opened a new issue, #46713:
URL: https://github.com/apache/arrow/issues/46713

   ### Describe the bug, including details regarding any error messages, 
version, and platform.
   
   While looking at https://github.com/apache/arrow/issues/45235, we found what 
looks like a latent ASAN issue in `dataset-writer-test`. The issue was only 
detectable once the original ASAN issue, 
https://github.com/apache/arrow/issues/45235, was fixed in 
https://github.com/apache/arrow/pull/46711.
   
   On my x86_64 debian sid mechine, with Arrow C++ built with 
`DARROW_USE_ASAN=ON` and the change in 
https://github.com/apache/arrow/pull/46711 applied, I can get ASAN to fail if I 
run the test in a continuous loop after about 5 minutes:
   
   ```text
   $ while true; LSAN_OPTIONS=verbosity=1:log_thread=1 
ASAN_OPTIONS=detect_leaks=1 debug/arrow-dataset-dataset-writer-test || break; 
end;
   $ # let it run for about 5 minutes, then
   ...>8...
   [  FAILED  ] 1 test, listed below:
   [  FAILED  ] DatasetWriterTestFixture.MaxRowsOneWriteBackpresure
   
    1 FAILED TEST
   ==161922==T5 TSDDtor
   ==161922==T1 TSDDtor
   ==161922==T5 exited
   ==161922==T6 TSDDtor
   ==161922==T2 TSDDtor
   ==161922==T8 TSDDtor
   ==161922==T2 exited
   ==161922==T4 TSDDtor
   ==161922==T8 exited
   ==161922==T4 exited
   ==161922==T3 TSDDtor
   ==161922==T7 TSDDtor
   ==161922==T6 exited
   ==161922==T1 exited
   ==161922==T3 exited
   ==161922==T7 exited
   ==161922==LeakSanitizer: checking for leaks
   =================================================================
   ==161922==ERROR: LeakSanitizer: detected memory leaks
   
   Indirect leak of 160 byte(s) in 1 object(s) allocated from:
       #0 0x7fa1ac6f5778 in operator new(unsigned long) 
../../../../src/libsanitizer/asan/asan_new_delete.cpp:95
       #1 0x7fa1a6f2ae99 in 
std::__detail::_MakeUniq<arrow::ConcreteFutureImpl>::__single_object 
std::make_unique<arrow::ConcreteFutureImpl>() 
/usr/include/c++/14/bits/unique_ptr.h:1077
       #2 0x7fa1a6f2481a in arrow::FutureImpl::Make() 
/home/bryce/src/apache/arrow/cpp/src/arrow/util/future.cc:209
       #3 0x55e3d567f02c in arrow::Future<arrow::internal::Empty>::Make() 
/home/bryce/src/apache/arrow/cpp/src/arrow/util/future.h:420
       #4 0x7fa1a6e26c66 in AsyncTaskSchedulerImpl 
/home/bryce/src/apache/arrow/cpp/src/arrow/util/async_util.cc:157
       #5 0x7fa1a6e2d97c in make_unique<arrow::util::(anonymous 
namespace)::AsyncTaskSchedulerImpl, arrow::StopToken, 
arrow::internal::FnOnce<void(const arrow::Status&)> > 
/usr/include/c++/14/bits/unique_ptr.h:1077
       #6 0x7fa1a6e2b359 in 
arrow::util::AsyncTaskScheduler::Make(arrow::internal::FnOnce<arrow::Status 
(arrow::util::AsyncTaskScheduler*)>, arrow::internal::FnOnce<void 
(arrow::Status const&)>, arrow::StopToken) 
/home/bryce/src/apache/arrow/cpp/src/arrow/util/async_util.cc:468
       #7 0x55e3d5746071 in 
arrow::dataset::internal::DatasetWriterTestFixture::SetUp() 
/home/bryce/src/apache/arrow/cpp/src/arrow/dataset/dataset_writer_test.cc:88
       #8 0x7fa1ac56594d in void 
testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, 
void>(testing::Test*, void (testing::Test::*)(), char const*) 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2653
       #9 0x7fa1ac55dd4a in void 
testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, 
void>(testing::Test*, void (testing::Test::*)(), char const*) 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2689
       #10 0x7fa1ac538564 in testing::Test::Run() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2723
       #11 0x7fa1ac538fd5 in testing::TestInfo::Run() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2874
       #12 0x7fa1ac5398c3 in testing::TestSuite::Run() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:3052
       #13 0x7fa1ac549a81 in testing::internal::UnitTestImpl::RunAllTests() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:6004
       #14 0x7fa1ac566a03 in bool 
testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl,
 bool>(testing::internal::UnitTestImpl*, bool 
(testing::internal::UnitTestImpl::*)(), char const*) 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2653
       #15 0x7fa1ac55ef32 in bool 
testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl,
 bool>(testing::internal::UnitTestImpl*, bool 
(testing::internal::UnitTestImpl::*)(), char const*) 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2689
       #16 0x7fa1ac54820d in testing::UnitTest::Run() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:5583
       #17 0x7fa1accfc1a1 in RUN_ALL_TESTS() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/include/gtest/gtest.h:2334
       #18 0x7fa1accfc18d in main 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest_main.cc:64
       #19 0x7fa1a0433ca7  (/lib/x86_64-linux-gnu/libc.so.6+0x29ca7) (BuildId: 
b46a78e7229ed6fe08549e2bc7ca64155cc5cf1e)
   
   Indirect leak of 160 byte(s) in 1 object(s) allocated from:
       #0 0x7fa1ac6f5778 in operator new(unsigned long) 
../../../../src/libsanitizer/asan/asan_new_delete.cpp:95
       #1 0x7fa1a6f2ae99 in 
std::__detail::_MakeUniq<arrow::ConcreteFutureImpl>::__single_object 
std::make_unique<arrow::ConcreteFutureImpl>() 
/usr/include/c++/14/bits/unique_ptr.h:1077
       #2 0x7fa1a6f2481a in arrow::FutureImpl::Make() 
/home/bryce/src/apache/arrow/cpp/src/arrow/util/future.cc:209
       #3 0x55e3d567f02c in arrow::Future<arrow::internal::Empty>::Make() 
/home/bryce/src/apache/arrow/cpp/src/arrow/util/future.h:420
       #4 0x7fa1a6e2de16 in 
Then<arrow::util::AsyncTaskScheduler::Make(arrow::internal::FnOnce<arrow::Status(arrow::util::AsyncTaskScheduler*)>,
 arrow::internal::FnOnce<void(const arrow::Status&)>, 
arrow::StopToken)::<lambda()> > 
/home/bryce/src/apache/arrow/cpp/src/arrow/util/future.h:606
       #5 0x7fa1a6e2b419 in 
arrow::util::AsyncTaskScheduler::Make(arrow::internal::FnOnce<arrow::Status 
(arrow::util::AsyncTaskScheduler*)>, arrow::internal::FnOnce<void 
(arrow::Status const&)>, arrow::StopToken) 
/home/bryce/src/apache/arrow/cpp/src/arrow/util/async_util.cc:472
       #6 0x55e3d5746071 in 
arrow::dataset::internal::DatasetWriterTestFixture::SetUp() 
/home/bryce/src/apache/arrow/cpp/src/arrow/dataset/dataset_writer_test.cc:88
       #7 0x7fa1ac56594d in void 
testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, 
void>(testing::Test*, void (testing::Test::*)(), char const*) 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2653
       #8 0x7fa1ac55dd4a in void 
testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, 
void>(testing::Test*, void (testing::Test::*)(), char const*) 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2689
       #9 0x7fa1ac538564 in testing::Test::Run() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2723
       #10 0x7fa1ac538fd5 in testing::TestInfo::Run() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2874
       #11 0x7fa1ac5398c3 in testing::TestSuite::Run() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:3052
       #12 0x7fa1ac549a81 in testing::internal::UnitTestImpl::RunAllTests() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:6004
       #13 0x7fa1ac566a03 in bool 
testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl,
 bool>(testing::internal::UnitTestImpl*, bool 
(testing::internal::UnitTestImpl::*)(), char const*) 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2653
       #14 0x7fa1ac55ef32 in bool 
testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl,
 bool>(testing::internal::UnitTestImpl*, bool 
(testing::internal::UnitTestImpl::*)(), char const*) 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2689
       #15 0x7fa1ac54820d in testing::UnitTest::Run() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:5583
       #16 0x7fa1accfc1a1 in RUN_ALL_TESTS() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/include/gtest/gtest.h:2334
       #17 0x7fa1accfc18d in main 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest_main.cc:64
       #18 0x7fa1a0433ca7  (/lib/x86_64-linux-gnu/libc.so.6+0x29ca7) (BuildId: 
b46a78e7229ed6fe08549e2bc7ca64155cc5cf1e)
   
   Indirect leak of 112 byte(s) in 1 object(s) allocated from:
       #0 0x7fa1ac6f5778 in operator new(unsigned long) 
../../../../src/libsanitizer/asan/asan_new_delete.cpp:95
       #1 0x7fa1a6e2d91e in make_unique<arrow::util::(anonymous 
namespace)::AsyncTaskSchedulerImpl, arrow::StopToken, 
arrow::internal::FnOnce<void(const arrow::Status&)> > 
/usr/include/c++/14/bits/unique_ptr.h:1077
       #2 0x7fa1a6e2b359 in 
arrow::util::AsyncTaskScheduler::Make(arrow::internal::FnOnce<arrow::Status 
(arrow::util::AsyncTaskScheduler*)>, arrow::internal::FnOnce<void 
(arrow::Status const&)>, arrow::StopToken) 
/home/bryce/src/apache/arrow/cpp/src/arrow/util/async_util.cc:468
       #3 0x55e3d5746071 in 
arrow::dataset::internal::DatasetWriterTestFixture::SetUp() 
/home/bryce/src/apache/arrow/cpp/src/arrow/dataset/dataset_writer_test.cc:88
       #4 0x7fa1ac56594d in void 
testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, 
void>(testing::Test*, void (testing::Test::*)(), char const*) 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2653
       #5 0x7fa1ac55dd4a in void 
testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, 
void>(testing::Test*, void (testing::Test::*)(), char const*) 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2689
       #6 0x7fa1ac538564 in testing::Test::Run() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2723
       #7 0x7fa1ac538fd5 in testing::TestInfo::Run() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2874
       #8 0x7fa1ac5398c3 in testing::TestSuite::Run() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:3052
       #9 0x7fa1ac549a81 in testing::internal::UnitTestImpl::RunAllTests() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:6004
       #10 0x7fa1ac566a03 in bool 
testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl,
 bool>(testing::internal::UnitTestImpl*, bool 
(testing::internal::UnitTestImpl::*)(), char const*) 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2653
       #11 0x7fa1ac55ef32 in bool 
testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl,
 bool>(testing::internal::UnitTestImpl*, bool 
(testing::internal::UnitTestImpl::*)(), char const*) 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2689
       #12 0x7fa1ac54820d in testing::UnitTest::Run() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:5583
       #13 0x7fa1accfc1a1 in RUN_ALL_TESTS() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/include/gtest/gtest.h:2334
       #14 0x7fa1accfc18d in main 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest_main.cc:64
       #15 0x7fa1a0433ca7  (/lib/x86_64-linux-gnu/libc.so.6+0x29ca7) (BuildId: 
b46a78e7229ed6fe08549e2bc7ca64155cc5cf1e)
   
   Indirect leak of 40 byte(s) in 1 object(s) allocated from:
       #0 0x7fa1ac6f5778 in operator new(unsigned long) 
../../../../src/libsanitizer/asan/asan_new_delete.cpp:95
       #1 0x7fa1a6e323e7 in 
FnOnce<arrow::Future<>::WrapResultOnComplete::Callback<arrow::Future<>::ThenOnComplete<arrow::util::AsyncTaskScheduler::Make(arrow::internal::FnOnce<arrow::Status(arrow::util::AsyncTaskScheduler*)>,
 arrow::internal::FnOnce<void(const arrow::Status&)>, 
arrow::StopToken)::<lambda()>, 
arrow::Future<>::PassthruOnFailure<arrow::util::AsyncTaskScheduler::Make(arrow::internal::FnOnce<arrow::Status(arrow::util::AsyncTaskScheduler*)>,
 arrow::internal::FnOnce<void(const arrow::Status&)>, 
arrow::StopToken)::<lambda()> > > > > 
/home/bryce/src/apache/arrow/cpp/src/arrow/util/functional.h:133
       #2 0x7fa1a6e303ca in 
AddCallback<arrow::Future<>::ThenOnComplete<arrow::util::AsyncTaskScheduler::Make(arrow::internal::FnOnce<arrow::Status(arrow::util::AsyncTaskScheduler*)>,
 arrow::internal::FnOnce<void(const arrow::Status&)>, 
arrow::StopToken)::<lambda()>, 
arrow::Future<>::PassthruOnFailure<arrow::util::AsyncTaskScheduler::Make(arrow::internal::FnOnce<arrow::Status(arrow::util::AsyncTaskScheduler*)>,
 arrow::internal::FnOnce<void(const arrow::Status&)>, 
arrow::StopToken)::<lambda()> > > > 
/home/bryce/src/apache/arrow/cpp/src/arrow/util/future.h:493
       #3 0x7fa1a6e2dee1 in 
Then<arrow::util::AsyncTaskScheduler::Make(arrow::internal::FnOnce<arrow::Status(arrow::util::AsyncTaskScheduler*)>,
 arrow::internal::FnOnce<void(const arrow::Status&)>, 
arrow::StopToken)::<lambda()> > 
/home/bryce/src/apache/arrow/cpp/src/arrow/util/future.h:607
       #4 0x7fa1a6e2b419 in 
arrow::util::AsyncTaskScheduler::Make(arrow::internal::FnOnce<arrow::Status 
(arrow::util::AsyncTaskScheduler*)>, arrow::internal::FnOnce<void 
(arrow::Status const&)>, arrow::StopToken) 
/home/bryce/src/apache/arrow/cpp/src/arrow/util/async_util.cc:472
       #5 0x55e3d5746071 in 
arrow::dataset::internal::DatasetWriterTestFixture::SetUp() 
/home/bryce/src/apache/arrow/cpp/src/arrow/dataset/dataset_writer_test.cc:88
       #6 0x7fa1ac56594d in void 
testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, 
void>(testing::Test*, void (testing::Test::*)(), char const*) 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2653
       #7 0x7fa1ac55dd4a in void 
testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, 
void>(testing::Test*, void (testing::Test::*)(), char const*) 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2689
       #8 0x7fa1ac538564 in testing::Test::Run() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2723
       #9 0x7fa1ac538fd5 in testing::TestInfo::Run() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2874
       #10 0x7fa1ac5398c3 in testing::TestSuite::Run() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:3052
       #11 0x7fa1ac549a81 in testing::internal::UnitTestImpl::RunAllTests() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:6004
       #12 0x7fa1ac566a03 in bool 
testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl,
 bool>(testing::internal::UnitTestImpl*, bool 
(testing::internal::UnitTestImpl::*)(), char const*) 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2653
       #13 0x7fa1ac55ef32 in bool 
testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl,
 bool>(testing::internal::UnitTestImpl*, bool 
(testing::internal::UnitTestImpl::*)(), char const*) 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2689
       #14 0x7fa1ac54820d in testing::UnitTest::Run() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:5583
       #15 0x7fa1accfc1a1 in RUN_ALL_TESTS() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/include/gtest/gtest.h:2334
       #16 0x7fa1accfc18d in main 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest_main.cc:64
       #17 0x7fa1a0433ca7  (/lib/x86_64-linux-gnu/libc.so.6+0x29ca7) (BuildId: 
b46a78e7229ed6fe08549e2bc7ca64155cc5cf1e)
   
   Indirect leak of 24 byte(s) in 1 object(s) allocated from:
       #0 0x7fa1ac6f5778 in operator new(unsigned long) 
../../../../src/libsanitizer/asan/asan_new_delete.cpp:95
       #1 0x55e3d569441c in 
std::__new_allocator<std::_Sp_counted_deleter<arrow::FutureImpl*, 
std::default_delete<arrow::FutureImpl>, std::allocator<void>, 
(__gnu_cxx::_Lock_policy)2> >::allocate(unsigned long, void const*) 
/usr/include/c++/14/bits/new_allocator.h:151
       #2 0x55e3d568f305 in 
std::allocator_traits<std::allocator<std::_Sp_counted_deleter<arrow::FutureImpl*,
 std::default_delete<arrow::FutureImpl>, std::allocator<void>, 
(__gnu_cxx::_Lock_policy)2> > 
>::allocate(std::allocator<std::_Sp_counted_deleter<arrow::FutureImpl*, 
std::default_delete<arrow::FutureImpl>, std::allocator<void>, 
(__gnu_cxx::_Lock_policy)2> >&, unsigned long) 
/usr/include/c++/14/bits/alloc_traits.h:515
       #3 0x55e3d568f305 in 
std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<arrow::FutureImpl,
 std::default_delete<arrow::FutureImpl> >(std::unique_ptr<arrow::FutureImpl, 
std::default_delete<arrow::FutureImpl> >&&) 
/usr/include/c++/14/bits/shared_ptr_base.h:1050
       #4 0x55e3d568bd5a in std::__shared_ptr<arrow::FutureImpl, 
(__gnu_cxx::_Lock_policy)2>::__shared_ptr<arrow::FutureImpl, 
std::default_delete<arrow::FutureImpl>, 
void>(std::unique_ptr<arrow::FutureImpl, std::default_delete<arrow::FutureImpl> 
>&&) /usr/include/c++/14/bits/shared_ptr_base.h:1563
       #5 0x55e3d5687480 in 
std::enable_if<std::__and_<std::__sp_compatible_with<arrow::FutureImpl*, 
arrow::FutureImpl*>, std::is_convertible<std::unique_ptr<arrow::FutureImpl, 
std::default_delete<arrow::FutureImpl> >::pointer, arrow::FutureImpl*>, 
std::is_move_constructible<std::default_delete<arrow::FutureImpl> > >::value, 
std::__shared_ptr<arrow::FutureImpl, (__gnu_cxx::_Lock_policy)2>&>::type 
std::__shared_ptr<arrow::FutureImpl, 
(__gnu_cxx::_Lock_policy)2>::operator=<arrow::FutureImpl, 
std::default_delete<arrow::FutureImpl> >(std::unique_ptr<arrow::FutureImpl, 
std::default_delete<arrow::FutureImpl> >&&) 
/usr/include/c++/14/bits/shared_ptr_base.h:1637
       #6 0x55e3d5681c71 in 
std::enable_if<std::is_assignable<std::__shared_ptr<arrow::FutureImpl, 
(__gnu_cxx::_Lock_policy)2>&, std::unique_ptr<arrow::FutureImpl, 
std::default_delete<arrow::FutureImpl> > >::value, 
std::shared_ptr<arrow::FutureImpl>&>::type 
std::shared_ptr<arrow::FutureImpl>::operator=<arrow::FutureImpl, 
std::default_delete<arrow::FutureImpl> >(std::unique_ptr<arrow::FutureImpl, 
std::default_delete<arrow::FutureImpl> >&&) 
/usr/include/c++/14/bits/shared_ptr.h:455
       #7 0x55e3d567f03f in arrow::Future<arrow::internal::Empty>::Make() 
/home/bryce/src/apache/arrow/cpp/src/arrow/util/future.h:420
       #8 0x7fa1a6e2de16 in 
Then<arrow::util::AsyncTaskScheduler::Make(arrow::internal::FnOnce<arrow::Status(arrow::util::AsyncTaskScheduler*)>,
 arrow::internal::FnOnce<void(const arrow::Status&)>, 
arrow::StopToken)::<lambda()> > 
/home/bryce/src/apache/arrow/cpp/src/arrow/util/future.h:606
       #9 0x7fa1a6e2b419 in 
arrow::util::AsyncTaskScheduler::Make(arrow::internal::FnOnce<arrow::Status 
(arrow::util::AsyncTaskScheduler*)>, arrow::internal::FnOnce<void 
(arrow::Status const&)>, arrow::StopToken) 
/home/bryce/src/apache/arrow/cpp/src/arrow/util/async_util.cc:472
       #10 0x55e3d5746071 in 
arrow::dataset::internal::DatasetWriterTestFixture::SetUp() 
/home/bryce/src/apache/arrow/cpp/src/arrow/dataset/dataset_writer_test.cc:88
       #11 0x7fa1ac56594d in void 
testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, 
void>(testing::Test*, void (testing::Test::*)(), char const*) 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2653
       #12 0x7fa1ac55dd4a in void 
testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, 
void>(testing::Test*, void (testing::Test::*)(), char const*) 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2689
       #13 0x7fa1ac538564 in testing::Test::Run() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2723
       #14 0x7fa1ac538fd5 in testing::TestInfo::Run() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2874
       #15 0x7fa1ac5398c3 in testing::TestSuite::Run() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:3052
       #16 0x7fa1ac549a81 in testing::internal::UnitTestImpl::RunAllTests() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:6004
       #17 0x7fa1ac566a03 in bool 
testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl,
 bool>(testing::internal::UnitTestImpl*, bool 
(testing::internal::UnitTestImpl::*)(), char const*) 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2653
       #18 0x7fa1ac55ef32 in bool 
testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl,
 bool>(testing::internal::UnitTestImpl*, bool 
(testing::internal::UnitTestImpl::*)(), char const*) 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2689
       #19 0x7fa1ac54820d in testing::UnitTest::Run() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:5583
       #20 0x7fa1accfc1a1 in RUN_ALL_TESTS() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/include/gtest/gtest.h:2334
       #21 0x7fa1accfc18d in main 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest_main.cc:64
       #22 0x7fa1a0433ca7  (/lib/x86_64-linux-gnu/libc.so.6+0x29ca7) (BuildId: 
b46a78e7229ed6fe08549e2bc7ca64155cc5cf1e)
   
   Indirect leak of 24 byte(s) in 1 object(s) allocated from:
       #0 0x7fa1ac6f5778 in operator new(unsigned long) 
../../../../src/libsanitizer/asan/asan_new_delete.cpp:95
       #1 0x7fa1a6f317ca in 
std::__new_allocator<arrow::FutureImpl::CallbackRecord>::allocate(unsigned 
long, void const*) /usr/include/c++/14/bits/new_allocator.h:151
       #2 0x7fa1a6f3013e in 
std::allocator_traits<std::allocator<arrow::FutureImpl::CallbackRecord> 
>::allocate(std::allocator<arrow::FutureImpl::CallbackRecord>&, unsigned long) 
/usr/include/c++/14/bits/alloc_traits.h:515
       #3 0x7fa1a6f3013e in 
std::_Vector_base<arrow::FutureImpl::CallbackRecord, 
std::allocator<arrow::FutureImpl::CallbackRecord> >::_M_allocate(unsigned long) 
/usr/include/c++/14/bits/stl_vector.h:380
       #4 0x7fa1a6f2e6f2 in void std::vector<arrow::FutureImpl::CallbackRecord, 
std::allocator<arrow::FutureImpl::CallbackRecord> 
>::_M_realloc_append<arrow::FutureImpl::CallbackRecord>(arrow::FutureImpl::CallbackRecord&&)
 /usr/include/c++/14/bits/vector.tcc:596
       #5 0x7fa1a6f2c374 in arrow::FutureImpl::CallbackRecord& 
std::vector<arrow::FutureImpl::CallbackRecord, 
std::allocator<arrow::FutureImpl::CallbackRecord> 
>::emplace_back<arrow::FutureImpl::CallbackRecord>(arrow::FutureImpl::CallbackRecord&&)
 /usr/include/c++/14/bits/vector.tcc:123
       #6 0x7fa1a6f29ec9 in std::vector<arrow::FutureImpl::CallbackRecord, 
std::allocator<arrow::FutureImpl::CallbackRecord> 
>::push_back(arrow::FutureImpl::CallbackRecord&&) 
/usr/include/c++/14/bits/stl_vector.h:1301
       #7 0x7fa1a6f28578 in 
arrow::ConcreteFutureImpl::AddCallback(arrow::internal::FnOnce<void 
(arrow::FutureImpl const&)>, arrow::CallbackOptions) 
/home/bryce/src/apache/arrow/cpp/src/arrow/util/future.cc:67
       #8 0x7fa1a6f24d5b in 
arrow::FutureImpl::AddCallback(arrow::internal::FnOnce<void (arrow::FutureImpl 
const&)>, arrow::CallbackOptions) 
/home/bryce/src/apache/arrow/cpp/src/arrow/util/future.cc:229
       #9 0x7fa1a6e303e0 in 
AddCallback<arrow::Future<>::ThenOnComplete<arrow::util::AsyncTaskScheduler::Make(arrow::internal::FnOnce<arrow::Status(arrow::util::AsyncTaskScheduler*)>,
 arrow::internal::FnOnce<void(const arrow::Status&)>, 
arrow::StopToken)::<lambda()>, 
arrow::Future<>::PassthruOnFailure<arrow::util::AsyncTaskScheduler::Make(arrow::internal::FnOnce<arrow::Status(arrow::util::AsyncTaskScheduler*)>,
 arrow::internal::FnOnce<void(const arrow::Status&)>, 
arrow::StopToken)::<lambda()> > > > 
/home/bryce/src/apache/arrow/cpp/src/arrow/util/future.h:493
       #10 0x7fa1a6e2dee1 in 
Then<arrow::util::AsyncTaskScheduler::Make(arrow::internal::FnOnce<arrow::Status(arrow::util::AsyncTaskScheduler*)>,
 arrow::internal::FnOnce<void(const arrow::Status&)>, 
arrow::StopToken)::<lambda()> > 
/home/bryce/src/apache/arrow/cpp/src/arrow/util/future.h:607
       #11 0x7fa1a6e2b419 in 
arrow::util::AsyncTaskScheduler::Make(arrow::internal::FnOnce<arrow::Status 
(arrow::util::AsyncTaskScheduler*)>, arrow::internal::FnOnce<void 
(arrow::Status const&)>, arrow::StopToken) 
/home/bryce/src/apache/arrow/cpp/src/arrow/util/async_util.cc:472
       #12 0x55e3d5746071 in 
arrow::dataset::internal::DatasetWriterTestFixture::SetUp() 
/home/bryce/src/apache/arrow/cpp/src/arrow/dataset/dataset_writer_test.cc:88
       #13 0x7fa1ac56594d in void 
testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, 
void>(testing::Test*, void (testing::Test::*)(), char const*) 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2653
       #14 0x7fa1ac55dd4a in void 
testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, 
void>(testing::Test*, void (testing::Test::*)(), char const*) 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2689
       #15 0x7fa1ac538564 in testing::Test::Run() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2723
       #16 0x7fa1ac538fd5 in testing::TestInfo::Run() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2874
       #17 0x7fa1ac5398c3 in testing::TestSuite::Run() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:3052
       #18 0x7fa1ac549a81 in testing::internal::UnitTestImpl::RunAllTests() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:6004
       #19 0x7fa1ac566a03 in bool 
testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl,
 bool>(testing::internal::UnitTestImpl*, bool 
(testing::internal::UnitTestImpl::*)(), char const*) 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2653
       #20 0x7fa1ac55ef32 in bool 
testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl,
 bool>(testing::internal::UnitTestImpl*, bool 
(testing::internal::UnitTestImpl::*)(), char const*) 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2689
       #21 0x7fa1ac54820d in testing::UnitTest::Run() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:5583
       #22 0x7fa1accfc1a1 in RUN_ALL_TESTS() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/include/gtest/gtest.h:2334
       #23 0x7fa1accfc18d in main 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest_main.cc:64
       #24 0x7fa1a0433ca7  (/lib/x86_64-linux-gnu/libc.so.6+0x29ca7) (BuildId: 
b46a78e7229ed6fe08549e2bc7ca64155cc5cf1e)
   
   Indirect leak of 24 byte(s) in 1 object(s) allocated from:
       #0 0x7fa1ac6f5778 in operator new(unsigned long) 
../../../../src/libsanitizer/asan/asan_new_delete.cpp:95
       #1 0x55e3d569441c in 
std::__new_allocator<std::_Sp_counted_deleter<arrow::FutureImpl*, 
std::default_delete<arrow::FutureImpl>, std::allocator<void>, 
(__gnu_cxx::_Lock_policy)2> >::allocate(unsigned long, void const*) 
/usr/include/c++/14/bits/new_allocator.h:151
       #2 0x55e3d568f305 in 
std::allocator_traits<std::allocator<std::_Sp_counted_deleter<arrow::FutureImpl*,
 std::default_delete<arrow::FutureImpl>, std::allocator<void>, 
(__gnu_cxx::_Lock_policy)2> > 
>::allocate(std::allocator<std::_Sp_counted_deleter<arrow::FutureImpl*, 
std::default_delete<arrow::FutureImpl>, std::allocator<void>, 
(__gnu_cxx::_Lock_policy)2> >&, unsigned long) 
/usr/include/c++/14/bits/alloc_traits.h:515
       #3 0x55e3d568f305 in 
std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<arrow::FutureImpl,
 std::default_delete<arrow::FutureImpl> >(std::unique_ptr<arrow::FutureImpl, 
std::default_delete<arrow::FutureImpl> >&&) 
/usr/include/c++/14/bits/shared_ptr_base.h:1050
       #4 0x55e3d568bd5a in std::__shared_ptr<arrow::FutureImpl, 
(__gnu_cxx::_Lock_policy)2>::__shared_ptr<arrow::FutureImpl, 
std::default_delete<arrow::FutureImpl>, 
void>(std::unique_ptr<arrow::FutureImpl, std::default_delete<arrow::FutureImpl> 
>&&) /usr/include/c++/14/bits/shared_ptr_base.h:1563
       #5 0x55e3d5687480 in 
std::enable_if<std::__and_<std::__sp_compatible_with<arrow::FutureImpl*, 
arrow::FutureImpl*>, std::is_convertible<std::unique_ptr<arrow::FutureImpl, 
std::default_delete<arrow::FutureImpl> >::pointer, arrow::FutureImpl*>, 
std::is_move_constructible<std::default_delete<arrow::FutureImpl> > >::value, 
std::__shared_ptr<arrow::FutureImpl, (__gnu_cxx::_Lock_policy)2>&>::type 
std::__shared_ptr<arrow::FutureImpl, 
(__gnu_cxx::_Lock_policy)2>::operator=<arrow::FutureImpl, 
std::default_delete<arrow::FutureImpl> >(std::unique_ptr<arrow::FutureImpl, 
std::default_delete<arrow::FutureImpl> >&&) 
/usr/include/c++/14/bits/shared_ptr_base.h:1637
       #6 0x55e3d5681c71 in 
std::enable_if<std::is_assignable<std::__shared_ptr<arrow::FutureImpl, 
(__gnu_cxx::_Lock_policy)2>&, std::unique_ptr<arrow::FutureImpl, 
std::default_delete<arrow::FutureImpl> > >::value, 
std::shared_ptr<arrow::FutureImpl>&>::type 
std::shared_ptr<arrow::FutureImpl>::operator=<arrow::FutureImpl, 
std::default_delete<arrow::FutureImpl> >(std::unique_ptr<arrow::FutureImpl, 
std::default_delete<arrow::FutureImpl> >&&) 
/usr/include/c++/14/bits/shared_ptr.h:455
       #7 0x55e3d567f03f in arrow::Future<arrow::internal::Empty>::Make() 
/home/bryce/src/apache/arrow/cpp/src/arrow/util/future.h:420
       #8 0x7fa1a6e26c66 in AsyncTaskSchedulerImpl 
/home/bryce/src/apache/arrow/cpp/src/arrow/util/async_util.cc:157
       #9 0x7fa1a6e2d97c in make_unique<arrow::util::(anonymous 
namespace)::AsyncTaskSchedulerImpl, arrow::StopToken, 
arrow::internal::FnOnce<void(const arrow::Status&)> > 
/usr/include/c++/14/bits/unique_ptr.h:1077
       #10 0x7fa1a6e2b359 in 
arrow::util::AsyncTaskScheduler::Make(arrow::internal::FnOnce<arrow::Status 
(arrow::util::AsyncTaskScheduler*)>, arrow::internal::FnOnce<void 
(arrow::Status const&)>, arrow::StopToken) 
/home/bryce/src/apache/arrow/cpp/src/arrow/util/async_util.cc:468
       #11 0x55e3d5746071 in 
arrow::dataset::internal::DatasetWriterTestFixture::SetUp() 
/home/bryce/src/apache/arrow/cpp/src/arrow/dataset/dataset_writer_test.cc:88
       #12 0x7fa1ac56594d in void 
testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, 
void>(testing::Test*, void (testing::Test::*)(), char const*) 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2653
       #13 0x7fa1ac55dd4a in void 
testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, 
void>(testing::Test*, void (testing::Test::*)(), char const*) 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2689
       #14 0x7fa1ac538564 in testing::Test::Run() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2723
       #15 0x7fa1ac538fd5 in testing::TestInfo::Run() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2874
       #16 0x7fa1ac5398c3 in testing::TestSuite::Run() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:3052
       #17 0x7fa1ac549a81 in testing::internal::UnitTestImpl::RunAllTests() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:6004
       #18 0x7fa1ac566a03 in bool 
testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl,
 bool>(testing::internal::UnitTestImpl*, bool 
(testing::internal::UnitTestImpl::*)(), char const*) 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2653
       #19 0x7fa1ac55ef32 in bool 
testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl,
 bool>(testing::internal::UnitTestImpl*, bool 
(testing::internal::UnitTestImpl::*)(), char const*) 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2689
       #20 0x7fa1ac54820d in testing::UnitTest::Run() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:5583
       #21 0x7fa1accfc1a1 in RUN_ALL_TESTS() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/include/gtest/gtest.h:2334
       #22 0x7fa1accfc18d in main 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest_main.cc:64
       #23 0x7fa1a0433ca7  (/lib/x86_64-linux-gnu/libc.so.6+0x29ca7) (BuildId: 
b46a78e7229ed6fe08549e2bc7ca64155cc5cf1e)
   
   Indirect leak of 16 byte(s) in 1 object(s) allocated from:
       #0 0x7fa1ac6f5778 in operator new(unsigned long) 
../../../../src/libsanitizer/asan/asan_new_delete.cpp:95
       #1 0x55e3d5750f90 in arrow::internal::FnOnce<void (arrow::Status 
const&)>::FnOnce<arrow::util::AsyncTaskScheduler::Make(arrow::internal::FnOnce<arrow::Status
 (arrow::util::AsyncTaskScheduler*)>, arrow::internal::FnOnce<void 
(arrow::Status const&)>, arrow::StopToken)::{default 
arg#2}::{lambda(arrow::Status const&)#1}, 
void>(arrow::util::AsyncTaskScheduler::Make(arrow::internal::FnOnce<arrow::Status
 (arrow::util::AsyncTaskScheduler*)>, arrow::internal::FnOnce<void 
(arrow::Status const&)>, arrow::StopToken)::{default 
arg#2}::{lambda(arrow::Status const&)#1}) 
/home/bryce/src/apache/arrow/cpp/src/arrow/util/functional.h:133
       #2 0x55e3d5746020 in 
arrow::dataset::internal::DatasetWriterTestFixture::SetUp() 
/home/bryce/src/apache/arrow/cpp/src/arrow/dataset/dataset_writer_test.cc:88
       #3 0x7fa1ac56594d in void 
testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, 
void>(testing::Test*, void (testing::Test::*)(), char const*) 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2653
       #4 0x7fa1ac55dd4a in void 
testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, 
void>(testing::Test*, void (testing::Test::*)(), char const*) 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2689
       #5 0x7fa1ac538564 in testing::Test::Run() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2723
       #6 0x7fa1ac538fd5 in testing::TestInfo::Run() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2874
       #7 0x7fa1ac5398c3 in testing::TestSuite::Run() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:3052
       #8 0x7fa1ac549a81 in testing::internal::UnitTestImpl::RunAllTests() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:6004
       #9 0x7fa1ac566a03 in bool 
testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl,
 bool>(testing::internal::UnitTestImpl*, bool 
(testing::internal::UnitTestImpl::*)(), char const*) 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2653
       #10 0x7fa1ac55ef32 in bool 
testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl,
 bool>(testing::internal::UnitTestImpl*, bool 
(testing::internal::UnitTestImpl::*)(), char const*) 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:2689
       #11 0x7fa1ac54820d in testing::UnitTest::Run() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest.cc:5583
       #12 0x7fa1accfc1a1 in RUN_ALL_TESTS() 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/include/gtest/gtest.h:2334
       #13 0x7fa1accfc18d in main 
/home/bryce/src/apache/arrow/cpp/build/_deps/googletest-src/googletest/src/gtest_main.cc:64
       #14 0x7fa1a0433ca7  (/lib/x86_64-linux-gnu/libc.so.6+0x29ca7) (BuildId: 
b46a78e7229ed6fe08549e2bc7ca64155cc5cf1e)
   
   SUMMARY: AddressSanitizer: 560 byte(s) leaked in 8 allocation(s).
   ```
   
   ### Component(s)
   
   C++


-- 
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: issues-unsubscr...@arrow.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to