Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
Description
https://github.com/apache/arrow/pull/10608/checks?check_run_id=3068468137
On "AMD64 MacOS 10.15 C++"
Looks like a state wasn't initialized somehow?
[ RUN ] ExecPlanExecution.SourceScalarAggSink Found core dump, printing backtrace: (lldb) target create --core "core.arrow-compute-pl.19192" Core file '/Users/runner/work/arrow/arrow/build/cpp/build/test-work/arrow-compute-plan-test/core.arrow-compute-pl.19192' (x86_64) was loaded.(lldb) thread backtrace all -e true error: exec_plan.cc.o 0x0004f7d7: DW_TAG_inheritance failed to resolve the base class at 0x0004f8fb from enclosing type 0x0004f7ce. Please file a bug and attach the file at the start of this error message * thread #1, stop reason = signal SIGSTOP * frame #0: 0x000000010776df15 libarrow.500.0.0.dylib`std::__1::unique_ptr<arrow::compute::KernelState, std::__1::default_delete<arrow::compute::KernelState> >::get(this=0x0000000000000000) const at memory:2596:19 frame #1: 0x000000010779c268 libarrow.500.0.0.dylib`arrow::compute::ScalarAggregateNode::DoConsume(this=0x00007f8f514731c0, batch=0x00007ffeef01ea38, thread_index=0) at exec_plan.cc:665:51 frame #2: 0x000000010779aae8 libarrow.500.0.0.dylib`arrow::compute::ScalarAggregateNode::InputReceived(this=0x00007f8f514731c0, input=0x00007f8f51470880, seq=1, batch=ExecBatch @ 0x00007ffeef01ea38) at exec_plan.cc:683:17 frame #3: 0x000000010777e65e libarrow.500.0.0.dylib`arrow::compute::SourceNode::StartProducing(this=0x00007f8f51473c78, batch=0x00007f8f514739c8)::'lambda'()::operator()() const::'lambda'(nonstd::optional_lite::optional<arrow::compute::ExecBatch> const&)::operator()(nonstd::optional_lite::optional<arrow::compute::ExecBatch> const&) const at exec_plan.cc:287:38 frame #4: 0x000000010777e383 libarrow.500.0.0.dylib`std::__1::enable_if<((!(std::is_void<nonstd::optional_lite::optional<int> >::value)) && (!(is_future<nonstd::optional_lite::optional<int> >::value))) && ((!(arrow::Future<nonstd::optional_lite::optional<int> >::is_empty)) || (std::is_same<nonstd::optional_lite::optional<int>, arrow::Status>::value)), void>::type arrow::detail::ContinueFuture::operator(this=0x00007ffeef01ec28, next=Future<nonstd::optional_lite::optional<int> > @ 0x00007ffeef01eb68, f=0x00007f8f51473c78, a=0x00007f8f514739c8)<arrow::compute::SourceNode::StartProducing()::'lambda'()::operator()() const::'lambda'(nonstd::optional_lite::optional<arrow::compute::ExecBatch> const&), nonstd::optional_lite::optional<arrow::compute::ExecBatch> const&, nonstd::optional_lite::optional<int>, arrow::Future<nonstd::optional_lite::optional<int> > >(arrow::Future<nonstd::optional_lite::optional<int> >, arrow::compute::SourceNode::StartProducing()::'lambda'()::operator()() const::'lambda'(nonstd::optional_lite::optional<arrow::compute::ExecBatch> const&)&&, nonstd::optional_lite::optional<arrow::compute::ExecBatch> const&) const at future.h:138:23 frame #5: 0x000000010777e199 libarrow.500.0.0.dylib`void arrow::detail::ContinueFuture::IgnoringArgsIf<arrow::compute::SourceNode::StartProducing()::'lambda'()::operator()() const::'lambda'(nonstd::optional_lite::optional<arrow::compute::ExecBatch> const&), arrow::Future<nonstd::optional_lite::optional<int> >, nonstd::optional_lite::optional<arrow::compute::ExecBatch> const&>(this=0x00007ffeef01ec28, (null)=std::__1::false_type @ 0x00007ffeef01eb98, next=0x00007f8f51473c98, f=0x00007f8f51473c78, a=0x00007f8f514739c8)::'lambda'()::operator()() const::'lambda'(nonstd::optional_lite::optional<arrow::compute::ExecBatch> const&)&&, nonstd::optional_lite::optional<arrow::compute::ExecBatch> const&) const at future.h:181:5 frame #6: 0x000000010777e016 libarrow.500.0.0.dylib`arrow::Future<nonstd::optional_lite::optional<arrow::compute::ExecBatch> >::ThenOnComplete<arrow::compute::SourceNode::StartProducing(this=0x00007f8f51473c78, result=0x00007f8f514739c0)::'lambda'()::operator()() const::'lambda'(nonstd::optional_lite::optional<arrow::compute::ExecBatch> const&), arrow::compute::SourceNode::StartProducing()::'lambda'()::operator()() const::'lambda'(arrow::Status const&)>::operator()(arrow::Result<nonstd::optional_lite::optional<arrow::compute::ExecBatch> > const&) && at future.h:589:25 frame #7: 0x000000010777df62 libarrow.500.0.0.dylib`arrow::Future<nonstd::optional_lite::optional<arrow::compute::ExecBatch> >::WrapResultyOnComplete::Callback<arrow::Future<nonstd::optional_lite::optional<arrow::compute::ExecBatch> >::ThenOnComplete<arrow::compute::SourceNode::StartProducing(this=0x00007f8f51473c78, impl=0x00007f8f51474040)::'lambda'()::operator()() const::'lambda'(nonstd::optional_lite::optional<arrow::compute::ExecBatch> const&), arrow::compute::SourceNode::StartProducing()::'lambda'()::operator()() const::'lambda'(arrow::Status const&)> >::operator()(arrow::FutureImpl const&) && at future.h:486:9 frame #8: 0x000000010777decb libarrow.500.0.0.dylib`arrow::internal::FnOnce<void (arrow::FutureImpl const&)>::FnImpl<arrow::Future<nonstd::optional_lite::optional<arrow::compute::ExecBatch> >::WrapResultyOnComplete::Callback<arrow::Future<nonstd::optional_lite::optional<arrow::compute::ExecBatch> >::ThenOnComplete<arrow::compute::SourceNode::StartProducing(this=0x00007f8f51473c70, a=0x00007f8f51474040)::'lambda'()::operator()() const::'lambda'(nonstd::optional_lite::optional<arrow::compute::ExecBatch> const&), arrow::compute::SourceNode::StartProducing()::'lambda'()::operator()() const::'lambda'(arrow::Status const&)> > >::invoke(arrow::FutureImpl const&) at functional.h:152:42 frame #9: 0x0000000107433d55 libarrow.500.0.0.dylib`arrow::internal::FnOnce<void (arrow::FutureImpl const&)>::operator(this=0x00007ffeef01ee30, a=0x00007f8f51474040)(arrow::FutureImpl const&) && at functional.h:140:17 frame #10: 0x0000000107433729 libarrow.500.0.0.dylib`arrow::ConcreteFutureImpl::RunOrScheduleCallback(this=0x00007f8f51474040, callback_record=0x00007ffeef01ee30, in_add_callback=true) at future.cc:295:7 frame #11: 0x000000010742de87 libarrow.500.0.0.dylib`arrow::ConcreteFutureImpl::AddCallback(this=0x00007f8f51474040, callback=arrow::FutureImpl::Callback @ 0x00007ffeef01eec0, opts=(should_schedule = Never, executor = 0x0000000000000000))>, arrow::CallbackOptions) at future.cc:248:7 frame #12: 0x000000010742dd9c libarrow.500.0.0.dylib`arrow::FutureImpl::AddCallback(this=0x00007f8f51474040, callback=arrow::FutureImpl::Callback @ 0x00007ffeef01ef60, opts=(should_schedule = Never, executor = 0x0000000000000000))>, arrow::CallbackOptions) at future.cc:383:28 frame #13: 0x000000010777da47 libarrow.500.0.0.dylib`void arrow::Future<nonstd::optional_lite::optional<arrow::compute::ExecBatch> >::AddCallback<arrow::Future<nonstd::optional_lite::optional<arrow::compute::ExecBatch> >::ThenOnComplete<arrow::compute::SourceNode::StartProducing(this=0x00007ffeef01f0c8, on_complete=ThenOnComplete<(lambda at /Users/runner/work/arrow/arrow/cpp/src/arrow/compute/exec/exec_plan.cc:279:23), (lambda at /Users/runner/work/arrow/arrow/cpp/src/arrow/compute/exec/exec_plan.cc:290:23)> @ 0x00007ffeef01efd8, opts=(should_schedule = Never, executor = 0x0000000000000000))::'lambda'()::operator()() const::'lambda'(nonstd::optional_lite::optional<arrow::compute::ExecBatch> const&), arrow::compute::SourceNode::StartProducing()::'lambda'()::operator()() const::'lambda'(arrow::Status const&)>, arrow::Future<nonstd::optional_lite::optional<arrow::compute::ExecBatch> >::WrapResultyOnComplete::Callback<arrow::Future<nonstd::optional_lite::optional<arrow::compute::ExecBatch> >::ThenOnComplete<arrow::compute::SourceNode::StartProducing()::'lambda'()::operator()() const::'lambda'(nonstd::optional_lite::optional<arrow::compute::ExecBatch> const&), arrow::compute::SourceNode::StartProducing()::'lambda'()::operator()() const::'lambda'(arrow::Status const&)> > >(arrow::Future<nonstd::optional_lite::optional<arrow::compute::ExecBatch> >::ThenOnComplete<arrow::compute::SourceNode::StartProducing()::'lambda'()::operator()() const::'lambda'(nonstd::optional_lite::optional<arrow::compute::ExecBatch> const&), arrow::compute::SourceNode::StartProducing()::'lambda'()::operator()() const::'lambda'(arrow::Status const&)>, arrow::CallbackOptions) const at future.h:537:12 frame #14: 0x000000010777d033 libarrow.500.0.0.dylib`arrow::Future<nonstd::optional_lite::optional<int> > arrow::Future<nonstd::optional_lite::optional<arrow::compute::ExecBatch> >::Then<arrow::compute::SourceNode::StartProducing(this=0x00007ffeef01f0c8, on_success=(anonymous class) @ 0x00007ffeef01f028, on_failure=(anonymous class) @ 0x00007ffeef01f018, options=(should_schedule = Never, executor = 0x0000000000000000))::'lambda'()::operator()() const::'lambda'(nonstd::optional_lite::optional<arrow::compute::ExecBatch> const&), arrow::compute::SourceNode::StartProducing()::'lambda'()::operator()() const::'lambda'(arrow::Status const&), arrow::Future<nonstd::optional_lite::optional<arrow::compute::ExecBatch> >::ThenOnComplete<arrow::compute::SourceNode::StartProducing()::'lambda'()::operator()() const::'lambda'(nonstd::optional_lite::optional<arrow::compute::ExecBatch> const&), arrow::compute::SourceNode::StartProducing()::'lambda'()::operator()() const::'lambda'(arrow::Status const&)>, arrow::Future<nonstd::optional_lite::optional<int> > >(arrow::compute::SourceNode::StartProducing()::'lambda'()::operator()() const::'lambda'(nonstd::optional_lite::optional<arrow::compute::ExecBatch> const&), arrow::compute::SourceNode::StartProducing()::'lambda'()::operator()() const::'lambda'(arrow::Status const&), arrow::CallbackOptions) const at future.h:651:5 frame #15: 0x000000010777cb90 libarrow.500.0.0.dylib`arrow::compute::SourceNode::StartProducing(this=0x00007f8f51472558)::'lambda'()::operator()() const at exec_plan.cc:278:39 frame #16: 0x00000001077800c6 libarrow.500.0.0.dylib`arrow::Future<int> arrow::Loop<arrow::compute::SourceNode::StartProducing(this=0x00007f8f51472558, maybe_control=0x00007f8f5141d520)::'lambda'(), nonstd::optional_lite::optional<int>, int>(arrow::compute::SourceNode::StartProducing()::'lambda'())::Callback::operator()(arrow::Result<nonstd::optional_lite::optional<int> > const&) && at future.h:900:26 frame #17: 0x0000000107780072 libarrow.500.0.0.dylib`arrow::Future<nonstd::optional_lite::optional<int> >::WrapResultyOnComplete::Callback<arrow::Future<int> arrow::Loop<arrow::compute::SourceNode::StartProducing(this=0x00007f8f51472558, impl=0x00007f8f51473a10)::'lambda'(), nonstd::optional_lite::optional<int>, int>(arrow::compute::SourceNode::StartProducing()::'lambda'())::Callback>::operator()(arrow::FutureImpl const&) && at future.h:486:9 frame #18: 0x000000010777ffdb libarrow.500.0.0.dylib`arrow::internal::FnOnce<void (arrow::FutureImpl const&)>::FnImpl<arrow::Future<nonstd::optional_lite::optional<int> >::WrapResultyOnComplete::Callback<arrow::Future<int> arrow::Loop<arrow::compute::SourceNode::StartProducing(this=0x00007f8f51472550, a=0x00007f8f51473a10)::'lambda'(), nonstd::optional_lite::optional<int>, int>(arrow::compute::SourceNode::StartProducing()::'lambda'())::Callback> >::invoke(arrow::FutureImpl const&) at functional.h:152:42 frame #19: 0x0000000107433d55 libarrow.500.0.0.dylib`arrow::internal::FnOnce<void (arrow::FutureImpl const&)>::operator(this=0x00007ffeef01f3c0, a=0x00007f8f51473a10)(arrow::FutureImpl const&) && at functional.h:140:17 frame #20: 0x0000000107433729 libarrow.500.0.0.dylib`arrow::ConcreteFutureImpl::RunOrScheduleCallback(this=0x00007f8f51473a10, callback_record=0x00007ffeef01f3c0, in_add_callback=true) at future.cc:295:7 frame #21: 0x000000010742de87 libarrow.500.0.0.dylib`arrow::ConcreteFutureImpl::AddCallback(this=0x00007f8f51473a10, callback=arrow::FutureImpl::Callback @ 0x00007ffeef01f450, opts=(should_schedule = Never, executor = 0x0000000000000000))>, arrow::CallbackOptions) at future.cc:248:7 frame #22: 0x000000010742dd9c libarrow.500.0.0.dylib`arrow::FutureImpl::AddCallback(this=0x00007f8f51473a10, callback=arrow::FutureImpl::Callback @ 0x00007ffeef01f4f0, opts=(should_schedule = Never, executor = 0x0000000000000000))>, arrow::CallbackOptions) at future.cc:383:28 frame #23: 0x000000010777cc87 libarrow.500.0.0.dylib`void arrow::Future<nonstd::optional_lite::optional<int> >::AddCallback<arrow::Future<int> arrow::Loop<arrow::compute::SourceNode::StartProducing(this=0x00007ffeef01f5a0, on_complete=Callback @ 0x00007ffeef01f560, opts=(should_schedule = Never, executor = 0x0000000000000000))::'lambda'(), nonstd::optional_lite::optional<int>, int>(arrow::compute::SourceNode::StartProducing()::'lambda'())::Callback, arrow::Future<nonstd::optional_lite::optional<int> >::WrapResultyOnComplete::Callback<arrow::Future<int> arrow::Loop<arrow::compute::SourceNode::StartProducing()::'lambda'(), nonstd::optional_lite::optional<int>, int>(arrow::compute::SourceNode::StartProducing()::'lambda'())::Callback> >(arrow::compute::SourceNode::StartProducing()::'lambda'(), arrow::CallbackOptions) const at future.h:537:12 frame #24: 0x000000010777c79a libarrow.500.0.0.dylib`arrow::Future<int> arrow::Loop<arrow::compute::SourceNode::StartProducing(iterate=(anonymous class) @ 0x00007ffeef01f5d0)::'lambda'(), nonstd::optional_lite::optional<int>, int>(arrow::compute::SourceNode::StartProducing()::'lambda'()) at future.h:928:15 frame #25: 0x000000010777c182 libarrow.500.0.0.dylib`arrow::compute::SourceNode::StartProducing(this=0x00007f8f51470880) at exec_plan.cc:270:17 frame #26: 0x0000000107769ab1 libarrow.500.0.0.dylib`arrow::compute::(anonymous namespace)::ExecPlanImpl::StartProducing(this=0x00007f8f51417b50) at exec_plan.cc:96:18 frame #27: 0x0000000107769926 libarrow.500.0.0.dylib`arrow::compute::ExecPlan::StartProducing(this=0x00007f8f51417b50) at exec_plan.cc:198:61 frame #28: 0x0000000100bf1caa arrow-compute-plan-test`arrow::compute::(anonymous namespace)::StartAndCollect(plan=0x00007f8f51417b50, gen=arrow::AsyncGenerator<util::optional<ExecBatch> > @ 0x00007ffeef01ff00)>) at plan_test.cc:241:3 frame #29: 0x0000000100bfaa66 arrow-compute-plan-test`arrow::compute::ExecPlanExecution_SourceScalarAggSink_Test::TestBody(this=0x00007f8f5141cf00) at plan_test.cc:442:3 frame #30: 0x0000000101bd1e44 libgtestd.dylib`void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(object=0x00007f8f5141cf00, method=21 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00, location="the test body")(), char const*) at gtest.cc:2433:10 frame #31: 0x0000000101b9ae2b libgtestd.dylib`void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(object=0x00007f8f5141cf00, method=21 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00, location="the test body")(), char const*) at gtest.cc:2469:14 frame #32: 0x0000000101b9ad63 libgtestd.dylib`testing::Test::Run(this=0x00007f8f5141cf00) at gtest.cc:2508:5 frame #33: 0x0000000101b9bf67 libgtestd.dylib`testing::TestInfo::Run(this=0x00007f8f514179f0) at gtest.cc:2684:11 frame #34: 0x0000000101b9ce4c libgtestd.dylib`testing::TestSuite::Run(this=0x00007f8f51417110) at gtest.cc:2816:28 frame #35: 0x0000000101ba96ed libgtestd.dylib`testing::internal::UnitTestImpl::RunAllTests(this=0x00007f8f514163c0) at gtest.cc:5338:44 frame #36: 0x0000000101bd7504 libgtestd.dylib`bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(object=0x00007f8f514163c0, method=f0 92 ba 01 01 00 00 00 00 00 00 00 00 00 00 00, location="auxiliary test code (environments or event listeners)")(), char const*) at gtest.cc:2433:10 frame #37: 0x0000000101ba908b libgtestd.dylib`bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(object=0x00007f8f514163c0, method=f0 92 ba 01 01 00 00 00 00 00 00 00 00 00 00 00, location="auxiliary test code (environments or event listeners)")(), char const*) at gtest.cc:2469:14 frame #38: 0x0000000101ba8f5d libgtestd.dylib`testing::UnitTest::Run(this=0x0000000101bf0360) at gtest.cc:4925:10 frame #39: 0x0000000101b7eed1 libgtest_maind.dylib`RUN_ALL_TESTS() at gtest.h:2473:46 frame #40: 0x0000000101b7eeb0 libgtest_maind.dylib`main(argc=1, argv=0x00007ffeef0205f8) at gtest_main.cc:45:10 frame #41: 0x00007fff6b0d9cc9 libdyld.dylib`start + 1 frame #42: 0x00007fff6b0d9cc9 libdyld.dylib`start + 1 thread #2, stop reason = signal SIGSTOP frame #0: 0x00007fff6b21d882 libsystem_kernel.dylib`__psynch_cvwait + 10 frame #1: 0x00007fff6b2e2425 libsystem_pthread.dylib`_pthread_cond_wait + 698 frame #2: 0x00007fff683b4592 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 18 frame #3: 0x00000001074a46f2 libarrow.500.0.0.dylib`arrow::internal::WorkerLoop(state=std::__1::shared_ptr<arrow::internal::ThreadPool::State>::element_type @ 0x00007f8f51470d38 strong=5 weak=1, it=std::__1::list<std::__1::thread, std::__1::allocator<std::__1::thread> >::iterator @ 0x000070000d16feb8) at thread_pool.cc:192:16 frame #4: 0x00000001074a41ff libarrow.500.0.0.dylib`arrow::internal::ThreadPool::LaunchWorkersUnlocked(this=0x00007f8f51472418)::$_2::operator()() const at thread_pool.cc:336:7 frame #5: 0x00000001074a414d libarrow.500.0.0.dylib`decltype(__f=0x00007f8f51472418)::$_2>(fp)()) std::__1::__invoke<arrow::internal::ThreadPool::LaunchWorkersUnlocked(int)::$_2>(arrow::internal::ThreadPool::LaunchWorkersUnlocked(int)::$_2&&) at type_traits:3545:1 frame #6: 0x00000001074a40b5 libarrow.500.0.0.dylib`void std::__1::__thread_execute<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, arrow::internal::ThreadPool::LaunchWorkersUnlocked(int)::$_2>(__t=size=2, (null)=__tuple_indices<> @ 0x000070000d16ff58)::$_2>&, std::__1::__tuple_indices<>) at thread:273:5 frame #7: 0x00000001074a3806 libarrow.500.0.0.dylib`void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, arrow::internal::ThreadPool::LaunchWorkersUnlocked(int)::$_2> >(__vp=0x00007f8f51472410) at thread:284:5 frame #8: 0x00007fff6b2e2109 libsystem_pthread.dylib`_pthread_start + 148 frame #9: 0x00007fff6b2ddb8b libsystem_pthread.dylib`thread_start + 15 thread #3, stop reason = signal SIGSTOP frame #0: 0x00007fff6b21d882 libsystem_kernel.dylib`__psynch_cvwait + 10 frame #1: 0x00007fff6b2e2425 libsystem_pthread.dylib`_pthread_cond_wait + 698 frame #2: 0x00007fff683b4592 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 18 frame #3: 0x00000001074a46f2 libarrow.500.0.0.dylib`arrow::internal::WorkerLoop(state=std::__1::shared_ptr<arrow::internal::ThreadPool::State>::element_type @ 0x00007f8f51470d38 strong=5 weak=1, it=std::__1::list<std::__1::thread, std::__1::allocator<std::__1::thread> >::iterator @ 0x000070000d1f2eb8) at thread_pool.cc:192:16 frame #4: 0x00000001074a41ff libarrow.500.0.0.dylib`arrow::internal::ThreadPool::LaunchWorkersUnlocked(this=0x00007f8f51604328)::$_2::operator()() const at thread_pool.cc:336:7 frame #5: 0x00000001074a414d libarrow.500.0.0.dylib`decltype(__f=0x00007f8f51604328)::$_2>(fp)()) std::__1::__invoke<arrow::internal::ThreadPool::LaunchWorkersUnlocked(int)::$_2>(arrow::internal::ThreadPool::LaunchWorkersUnlocked(int)::$_2&&) at type_traits:3545:1 frame #6: 0x00000001074a40b5 libarrow.500.0.0.dylib`void std::__1::__thread_execute<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, arrow::internal::ThreadPool::LaunchWorkersUnlocked(int)::$_2>(__t=size=2, (null)=__tuple_indices<> @ 0x000070000d1f2f58)::$_2>&, std::__1::__tuple_indices<>) at thread:273:5 frame #7: 0x00000001074a3806 libarrow.500.0.0.dylib`void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, arrow::internal::ThreadPool::LaunchWorkersUnlocked(int)::$_2> >(__vp=0x00007f8f51604320) at thread:284:5 frame #8: 0x00007fff6b2e2109 libsystem_pthread.dylib`_pthread_start + 148 frame #9: 0x00007fff6b2ddb8b libsystem_pthread.dylib`thread_start + 15 ~/work/arrow/arrow/build/cpp/src/arrow/compute/exec
Attachments
Issue Links
- links to