mapleFU opened a new issue, #46724: URL: https://github.com/apache/arrow/issues/46724
### Describe the bug, including details regarding any error messages, version, and platform. ``` 0x5d23381f1b98: note: object is of type 'parquet::(anonymous namespace)::TypedStatisticsImpl<parquet::PhysicalType<(parquet::Type::type)2>>' -- | 00 00 00 00 78 c5 e7 12 23 5d 00 00 40 72 05 38 23 5d 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ^~~~~~~~~~~~~~~~~~~~~~~ | vptr for 'parquet::(anonymous namespace)::TypedStatisticsImpl<parquet::PhysicalType<(parquet::Type::type)2>>' | #0 0x5d2310d9bca6 in static_pointer_cast<parquet::TypedStatistics<parquet::PhysicalType<(parquet::Type::type)5> >, parquet::Statistics> /usr/local/include/c++/v1/__memory/shared_ptr.h:1226:31 | #1 0x5d2310d9bca6 in std::__1::shared_ptr<parquet::TypedStatistics<parquet::PhysicalType<(parquet::Type::type)5>>> parquet::MakeStatistics<parquet::PhysicalType<(parquet::Type::type)5>>(parquet::ColumnDescriptor const*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, long, long, long, bool, bool, bool, arrow::MemoryPool*) arrow/cpp/src/parquet/statistics.h:377:10 | #2 0x5d2310cd2d84 in MakeTypedColumnStats<parquet::PhysicalType<(parquet::Type::type)5> > arrow/cpp/src/parquet/metadata.cc:104:10 | #3 0x5d2310cd2d84 in parquet::MakeColumnStats(parquet::format::ColumnMetaData const&, parquet::ColumnDescriptor const*) arrow/cpp/src/parquet/metadata.cc:135:14 | #4 0x5d2310cd7d19 in parquet::ColumnChunkMetaData::ColumnChunkMetaDataImpl::statistics() const arrow/cpp/src/parquet/metadata.cc:344:27 | #5 0x5d2310cd7c45 in parquet::ColumnChunkMetaData::statistics() const arrow/cpp/src/parquet/metadata.cc:493:17 | #6 0x5d23109a4ee3 in AttachStatistics<arrow::UInt64Type, parquet::PhysicalType<(parquet::Type::type)2> > arrow/cpp/src/parquet/arrow/reader_internal.cc:347:31 | #7 0x5d23109a4ee3 in TransferInt<arrow::UInt64Type, parquet::PhysicalType<(parquet::Type::type)2> > arrow/cpp/src/parquet/arrow/reader_internal.cc:416:3 | #8 0x5d23109a4ee3 in parquet::arrow::TransferColumnData(parquet::internal::RecordReader*, std::__1::unique_ptr<parquet::ColumnChunkMetaData, std::__1::default_delete<parquet::ColumnChunkMetaData>>, std::__1::shared_ptr<arrow::Field> const&, parquet::ColumnDescriptor const*, parquet::arrow::ReaderContext const*, std::__1::shared_ptr<arrow::ChunkedArray>*) arrow/cpp/src/parquet/arrow/reader_internal.cc:875:7 | #9 0x5d2310927bcc in parquet::arrow::(anonymous namespace)::LeafReader::LoadBatch(long) arrow/cpp/src/parquet/arrow/reader.cc:510:5 | #10 0x5d231093a6b9 in parquet::arrow::(anonymous namespace)::StructReader::LoadBatch(long) arrow/cpp/src/parquet/arrow/reader.cc:732:7 | #11 0x5d231092441e in parquet::arrow::ColumnReaderImpl::NextBatch(long, std::__1::shared_ptr<arrow::ChunkedArray>*) arrow/cpp/src/parquet/arrow/reader.cc:110:5 | #12 0x5d2310943ab7 in parquet::arrow::(anonymous namespace)::FileReaderImpl::ReadColumn(int, std::__1::vector<int, std::__1::allocator<int>> const&, parquet::arrow::ColumnReader*, std::__1::shared_ptr<arrow::ChunkedArray>*) arrow/cpp/src/parquet/arrow/reader.cc:286:20 | #13 0x5d2310960d20 in parquet::arrow::(anonymous namespace)::FileReaderImpl::DecodeRowGroups(std::__1::shared_ptr<parquet::arrow::(anonymous namespace)::FileReaderImpl>, std::__1::vector<int, std::__1::allocator<int>> const&, std::__1::vector<int, std::__1::allocator<int>> const&, arrow::internal::Executor*)::$_0::operator()(unsigned long, std::__1::shared_ptr<parquet::arrow::ColumnReaderImpl>) const arrow/cpp/src/parquet/arrow/reader.cc:1282:5 | #14 0x5d231095e6f8 in OptionalParallelForAsync<(lambda at /src/arrow/cpp/src/parquet/arrow/reader.cc:1278:22) &, std::__1::shared_ptr<parquet::arrow::ColumnReaderImpl>, std::__1::shared_ptr<arrow::ChunkedArray> > arrow/cpp/src/arrow/util/parallel.h:97:7 | #15 0x5d231095e6f8 in parquet::arrow::(anonymous namespace)::FileReaderImpl::DecodeRowGroups(std::__1::shared_ptr<parquet::arrow::(anonymous namespace)::FileReaderImpl>, std::__1::vector<int, std::__1::allocator<int>> const&, std::__1::vector<int, std::__1::allocator<int>> const&, arrow::internal::Executor*) arrow/cpp/src/parquet/arrow/reader.cc:1300:10 | #16 0x5d2310915b18 in parquet::arrow::(anonymous namespace)::FileReaderImpl::ReadRowGroups(std::__1::vector<int, std::__1::allocator<int>> const&, std::__1::vector<int, std::__1::allocator<int>> const&, std::__1::shared_ptr<arrow::Table>*) arrow/cpp/src/parquet/arrow/reader.cc:1261:14 | #17 0x5d23109152c6 in parquet::arrow::(anonymous namespace)::FileReaderImpl::ReadRowGroup(int, std::__1::vector<int, std::__1::allocator<int>> const&, std::__1::shared_ptr<arrow::Table>*) arrow/cpp/src/parquet/arrow/reader.cc:323:12 | #18 0x5d2310915509 in parquet::arrow::(anonymous namespace)::FileReaderImpl::ReadRowGroup(int, std::__1::shared_ptr<arrow::Table>*) arrow/cpp/src/parquet/arrow/reader.cc:327:12 | #19 0x5d2310909ee9 in parquet::arrow::internal::FuzzReader(std::__1::unique_ptr<parquet::arrow::FileReader, std::__1::default_delete<parquet::arrow::FileReader>>) arrow/cpp/src/parquet/arrow/reader.cc:1386:37 | #20 0x5d231090aa10 in parquet::arrow::internal::FuzzReader(unsigned char const*, long) arrow/cpp/src/parquet/arrow/reader.cc:1411:11 | #21 0x5d23109062f3 in LLVMFuzzerTestOneInput arrow/cpp/src/parquet/arrow/fuzz.cc:22:17 | #22 0x5d23108688c0 in fuzzer::Fuzzer::ExecuteCallback(unsigned char const*, unsigned long) /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerLoop.cpp:614:13 | #23 0x5d2310853b35 in fuzzer::RunOneTest(fuzzer::Fuzzer*, char const*, unsigned long) /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerDriver.cpp:327:6 | #24 0x5d23108595cf in fuzzer::FuzzerDriver(int*, char***, int (*)(unsigned char const*, unsigned long)) /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerDriver.cpp:862:9 | #25 0x5d2310884872 in main /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerMain.cpp:20:10 | #26 0x7a684efad082 in __libc_start_main /build/glibc-LcI20x/glibc-2.31/csu/libc-start.c:308:16 | #27 0x5d231084bd1d in _start | | SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior /usr/local/bin/../include/c++/v1/__memory/shared_ptr.h:1226:31 | <br class="Apple-interchange-newline">0x5d23381f1b98: note: object is of type 'parquet::(anonymous namespace)::TypedStatisticsImpl<parquet::PhysicalType<(parquet::Type::type)2>>' 00 00 00 00 78 c5 e7 12 23 5d 00 00 40 72 05 38 23 5d 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ^~~~~~~~~~~~~~~~~~~~~~~ vptr for 'parquet::(anonymous namespace)::TypedStatisticsImpl<parquet::PhysicalType<(parquet::Type::type)2>>' #0 0x5d2310d9bca6 in static_pointer_cast<parquet::TypedStatistics<parquet::PhysicalType<(parquet::Type::type)5> >, parquet::Statistics> /usr/local/include/c++/v1/__memory/shared_ptr.h:1226:31 #1 0x5d2310d9bca6 in std::__1::shared_ptr<parquet::TypedStatistics<parquet::PhysicalType<(parquet::Type::type)5>>> parquet::MakeStatistics<parquet::PhysicalType<(parquet::Type::type)5>>(parquet::ColumnDescriptor const*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, long, long, long, bool, bool, bool, arrow::MemoryPool*) [arrow/cpp/src/parquet/statistics.h:377](https://github.com/apache/arrow/blob/acbad2942be80e9a76b888f99fe3b9ebdc4f2941/cpp/src/parquet/statistics.h#L377):10 #2 0x5d2310cd2d84 in MakeTypedColumnStats<parquet::PhysicalType<(parquet::Type::type)5> > [arrow/cpp/src/parquet/metadata.cc:104](https://github.com/apache/arrow/blob/acbad2942be80e9a76b888f99fe3b9ebdc4f2941/cpp/src/parquet/metadata.cc#L104):10 #3 0x5d2310cd2d84 in parquet::MakeColumnStats(parquet::format::ColumnMetaData const&, parquet::ColumnDescriptor const*) [arrow/cpp/src/parquet/metadata.cc:135](https://github.com/apache/arrow/blob/acbad2942be80e9a76b888f99fe3b9ebdc4f2941/cpp/src/parquet/metadata.cc#L135):14 #4 0x5d2310cd7d19 in parquet::ColumnChunkMetaData::ColumnChunkMetaDataImpl::statistics() const [arrow/cpp/src/parquet/metadata.cc:344](https://github.com/apache/arrow/blob/acbad2942be80e9a76b888f99fe3b9ebdc4f2941/cpp/src/parquet/metadata.cc#L344):27 #5 0x5d2310cd7c45 in parquet::ColumnChunkMetaData::statistics() const [arrow/cpp/src/parquet/metadata.cc:493](https://github.com/apache/arrow/blob/acbad2942be80e9a76b888f99fe3b9ebdc4f2941/cpp/src/parquet/metadata.cc#L493):17 #6 0x5d23109a4ee3 in AttachStatistics<arrow::UInt64Type, parquet::PhysicalType<(parquet::Type::type)2> > [arrow/cpp/src/parquet/arrow/reader_internal.cc:347](https://github.com/apache/arrow/blob/acbad2942be80e9a76b888f99fe3b9ebdc4f2941/cpp/src/parquet/arrow/reader_internal.cc#L347):31 #7 0x5d23109a4ee3 in TransferInt<arrow::UInt64Type, parquet::PhysicalType<(parquet::Type::type)2> > [arrow/cpp/src/parquet/arrow/reader_internal.cc:416](https://github.com/apache/arrow/blob/acbad2942be80e9a76b888f99fe3b9ebdc4f2941/cpp/src/parquet/arrow/reader_internal.cc#L416):3 #8 0x5d23109a4ee3 in parquet::arrow::TransferColumnData(parquet::internal::RecordReader*, std::__1::unique_ptr<parquet::ColumnChunkMetaData, std::__1::default_delete<parquet::ColumnChunkMetaData>>, std::__1::shared_ptr<arrow::Field> const&, parquet::ColumnDescriptor const*, parquet::arrow::ReaderContext const*, std::__1::shared_ptr<arrow::ChunkedArray>*) [arrow/cpp/src/parquet/arrow/reader_internal.cc:875](https://github.com/apache/arrow/blob/acbad2942be80e9a76b888f99fe3b9ebdc4f2941/cpp/src/parquet/arrow/reader_internal.cc#L875):7 #9 0x5d2310927bcc in parquet::arrow::(anonymous namespace)::LeafReader::LoadBatch(long) [arrow/cpp/src/parquet/arrow/reader.cc:510](https://github.com/apache/arrow/blob/acbad2942be80e9a76b888f99fe3b9ebdc4f2941/cpp/src/parquet/arrow/reader.cc#L510):5 #10 0x5d231093a6b9 in parquet::arrow::(anonymous namespace)::StructReader::LoadBatch(long) [arrow/cpp/src/parquet/arrow/reader.cc:732](https://github.com/apache/arrow/blob/acbad2942be80e9a76b888f99fe3b9ebdc4f2941/cpp/src/parquet/arrow/reader.cc#L732):7 #11 0x5d231092441e in parquet::arrow::ColumnReaderImpl::NextBatch(long, std::__1::shared_ptr<arrow::ChunkedArray>*) [arrow/cpp/src/parquet/arrow/reader.cc:110](https://github.com/apache/arrow/blob/acbad2942be80e9a76b888f99fe3b9ebdc4f2941/cpp/src/parquet/arrow/reader.cc#L110):5 #12 0x5d2310943ab7 in parquet::arrow::(anonymous namespace)::FileReaderImpl::ReadColumn(int, std::__1::vector<int, std::__1::allocator<int>> const&, parquet::arrow::ColumnReader*, std::__1::shared_ptr<arrow::ChunkedArray>*) [arrow/cpp/src/parquet/arrow/reader.cc:286](https://github.com/apache/arrow/blob/acbad2942be80e9a76b888f99fe3b9ebdc4f2941/cpp/src/parquet/arrow/reader.cc#L286):20 #13 0x5d2310960d20 in parquet::arrow::(anonymous namespace)::FileReaderImpl::DecodeRowGroups(std::__1::shared_ptr<parquet::arrow::(anonymous namespace)::FileReaderImpl>, std::__1::vector<int, std::__1::allocator<int>> const&, std::__1::vector<int, std::__1::allocator<int>> const&, arrow::internal::Executor*)::$_0::operator()(unsigned long, std::__1::shared_ptr<parquet::arrow::ColumnReaderImpl>) const [arrow/cpp/src/parquet/arrow/reader.cc:1282](https://github.com/apache/arrow/blob/acbad2942be80e9a76b888f99fe3b9ebdc4f2941/cpp/src/parquet/arrow/reader.cc#L1282):5 #14 0x5d231095e6f8 in OptionalParallelForAsync<(lambda at /src/arrow/cpp/src/parquet/arrow/reader.cc:1278:22) &, std::__1::shared_ptr<parquet::arrow::ColumnReaderImpl>, std::__1::shared_ptr<arrow::ChunkedArray> > [arrow/cpp/src/arrow/util/parallel.h:97](https://github.com/apache/arrow/blob/acbad2942be80e9a76b888f99fe3b9ebdc4f2941/cpp/src/arrow/util/parallel.h#L97):7 #15 0x5d231095e6f8 in parquet::arrow::(anonymous namespace)::FileReaderImpl::DecodeRowGroups(std::__1::shared_ptr<parquet::arrow::(anonymous namespace)::FileReaderImpl>, std::__1::vector<int, std::__1::allocator<int>> const&, std::__1::vector<int, std::__1::allocator<int>> const&, arrow::internal::Executor*) [arrow/cpp/src/parquet/arrow/reader.cc:1300](https://github.com/apache/arrow/blob/acbad2942be80e9a76b888f99fe3b9ebdc4f2941/cpp/src/parquet/arrow/reader.cc#L1300):10 #16 0x5d2310915b18 in parquet::arrow::(anonymous namespace)::FileReaderImpl::ReadRowGroups(std::__1::vector<int, std::__1::allocator<int>> const&, std::__1::vector<int, std::__1::allocator<int>> const&, std::__1::shared_ptr<arrow::Table>*) [arrow/cpp/src/parquet/arrow/reader.cc:1261](https://github.com/apache/arrow/blob/acbad2942be80e9a76b888f99fe3b9ebdc4f2941/cpp/src/parquet/arrow/reader.cc#L1261):14 #17 0x5d23109152c6 in parquet::arrow::(anonymous namespace)::FileReaderImpl::ReadRowGroup(int, std::__1::vector<int, std::__1::allocator<int>> const&, std::__1::shared_ptr<arrow::Table>*) [arrow/cpp/src/parquet/arrow/reader.cc:323](https://github.com/apache/arrow/blob/acbad2942be80e9a76b888f99fe3b9ebdc4f2941/cpp/src/parquet/arrow/reader.cc#L323):12 #18 0x5d2310915509 in parquet::arrow::(anonymous namespace)::FileReaderImpl::ReadRowGroup(int, std::__1::shared_ptr<arrow::Table>*) [arrow/cpp/src/parquet/arrow/reader.cc:327](https://github.com/apache/arrow/blob/acbad2942be80e9a76b888f99fe3b9ebdc4f2941/cpp/src/parquet/arrow/reader.cc#L327):12 #19 0x5d2310909ee9 in parquet::arrow::internal::FuzzReader(std::__1::unique_ptr<parquet::arrow::FileReader, std::__1::default_delete<parquet::arrow::FileReader>>) [arrow/cpp/src/parquet/arrow/reader.cc:1386](https://github.com/apache/arrow/blob/acbad2942be80e9a76b888f99fe3b9ebdc4f2941/cpp/src/parquet/arrow/reader.cc#L1386):37 #20 0x5d231090aa10 in parquet::arrow::internal::FuzzReader(unsigned char const*, long) [arrow/cpp/src/parquet/arrow/reader.cc:1411](https://github.com/apache/arrow/blob/acbad2942be80e9a76b888f99fe3b9ebdc4f2941/cpp/src/parquet/arrow/reader.cc#L1411):11 #21 0x5d23109062f3 in LLVMFuzzerTestOneInput [arrow/cpp/src/parquet/arrow/fuzz.cc:22](https://github.com/apache/arrow/blob/acbad2942be80e9a76b888f99fe3b9ebdc4f2941/cpp/src/parquet/arrow/fuzz.cc#L22):17 #22 0x5d23108688c0 in fuzzer::Fuzzer::ExecuteCallback(unsigned char const*, unsigned long) /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerLoop.cpp:614:13 #23 0x5d2310853b35 in fuzzer::RunOneTest(fuzzer::Fuzzer*, char const*, unsigned long) /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerDriver.cpp:327:6 #24 0x5d23108595cf in fuzzer::FuzzerDriver(int*, char***, int (*)(unsigned char const*, unsigned long)) /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerDriver.cpp:862:9 #25 0x5d2310884872 in main /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerMain.cpp:20:10 #26 0x7a684efad082 in __libc_start_main /build/glibc-LcI20x/glibc-2.31/csu/libc-start.c:308:16 #27 0x5d231084bd1d in _start SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior /usr/local/bin/../include/c++/v1/__memory/shared_ptr.h:1226:31 ``` ### Component(s) C++, Parquet -- 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