Skip to content

Conversation

@HuaHuaY
Copy link
Contributor

@HuaHuaY HuaHuaY commented Nov 21, 2025

No description provided.

GTest::gmock)
target_link_libraries(${test_name} PRIVATE GTest::gtest_main GTest::gmock)

if("${ICEBERG_TEST_LINKAGE}" STREQUAL "shared")
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could we just use ICEBERG_BUILD_SHARED and ICEBERG_BUILD_STATIC to control the linkage behavior? For example:

  • If only ICEBERG_BUILD_SHARED=ON, link against the shared libraries.
  • If only ICEBERG_BUILD_STATIC=ON, link against the static libraries.
  • If both are enabled, default to linking against the shared libraries (as linking time will be shorter).

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I just follow the cmakelist file in arrow https://github.com/apache/arrow/blob/main/cpp/cmake_modules/DefineOptions.cmake#L249

Both are fine for me.

@HuaHuaY HuaHuaY force-pushed the enable_static_when_test branch from 0f5088e to 8ab40c0 Compare November 21, 2025 09:16
@HuaHuaY HuaHuaY requested a review from wgtmac November 21, 2025 09:16
@HuaHuaY HuaHuaY force-pushed the enable_static_when_test branch 5 times, most recently from 223cd47 to 9a9b502 Compare November 23, 2025 15:01
@HuaHuaY HuaHuaY mentioned this pull request Nov 23, 2025
@HuaHuaY HuaHuaY force-pushed the enable_static_when_test branch from 9a9b502 to 02c011d Compare November 24, 2025 08:24
@HuaHuaY HuaHuaY marked this pull request as draft November 24, 2025 08:24
@HuaHuaY
Copy link
Contributor Author

HuaHuaY commented Nov 24, 2025

Convert this PR to a draft.

I have no idea how to fix the ODR violation now. I make sure that header file will not expose Arrow's API but the dynamic_cast in Arrow's function in the unit tests still returns nullptr.

I ran nm -g -C --defined-only build/src/iceberg/libiceberg_bundle.dylib | grep -i typeinfo in my local macOS. We can find that there are many symbols from Arrow/Avro/Parquet which should not be exported in our library.

After discussing this with Gemini, it told me that these symbols might come from templates instantiated in our library (For examples, we instantiate NumericBuilder: public ArrayBuilder, compiler will export arrow::ArrayBuilder). Gemini suggests to use --version-script but it seems that version script only works on linux (Arrow also writes a version script on linux). There are some similar flags on Windows and Apple, but I'm not familiar with them and need some time to learn.

Alternatively, another approach is to convert static dependencies like Arrow/Avro/Parquet into dynamic libraries when we decide to build iceberg-cpp shared library, but I'm unsure whether this method is acceptable. This also requires us to modify the installation script and install these dependent dynamic link libraries.

❯ nm -g -C --defined-only build/src/iceberg/libiceberg_bundle.dylib | grep -i typeinfo         
00000000018d6690 S std::__1::__any_imp::__unique_typeinfo<avro::GenericMap>::__id
00000000018d5bc8 S std::__1::__any_imp::__unique_typeinfo<avro::GenericEnum>::__id
00000000018d6fb0 S std::__1::__any_imp::__unique_typeinfo<avro::GenericArray>::__id
00000000018d6680 S std::__1::__any_imp::__unique_typeinfo<avro::GenericFixed>::__id
00000000018d5c00 S std::__1::__any_imp::__unique_typeinfo<avro::GenericUnion>::__id
00000000018d6688 S std::__1::__any_imp::__unique_typeinfo<avro::GenericRecord>::__id
00000000018d74f0 S std::__1::__any_imp::__unique_typeinfo<std::__1::shared_ptr<avro::Node>>::__id
00000000018d7ce4 S std::__1::__any_imp::__unique_typeinfo<std::__1::shared_ptr<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::__id
00000000018d61e0 S std::__1::__any_imp::__unique_typeinfo<std::__1::shared_ptr<std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, avro::json::Entity, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>, std::__1::allocator<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const, avro::json::Entity>>>>>::__id
00000000018d4ac4 S std::__1::__any_imp::__unique_typeinfo<std::__1::shared_ptr<std::__1::vector<avro::json::Entity, std::__1::allocator<avro::json::Entity>>>>::__id
00000000018d732c S std::__1::__any_imp::__unique_typeinfo<std::__1::shared_ptr<std::__1::vector<avro::parsing::Symbol, std::__1::allocator<avro::parsing::Symbol>>>>::__id
00000000018d7928 S std::__1::__any_imp::__unique_typeinfo<std::__1::shared_ptr<std::__1::vector<unsigned char, std::__1::allocator<unsigned char>>>>::__id
00000000018d6658 S std::__1::__any_imp::__unique_typeinfo<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>::__id
00000000018d7764 S std::__1::__any_imp::__unique_typeinfo<std::__1::pair<avro::parsing::Symbol::Kind, avro::parsing::Symbol::Kind>>::__id
00000000018d7aac S std::__1::__any_imp::__unique_typeinfo<std::__1::pair<std::__1::shared_ptr<avro::Node>, std::__1::shared_ptr<avro::Node>>>::__id
00000000018d7bd0 S std::__1::__any_imp::__unique_typeinfo<std::__1::pair<std::__1::vector<int, std::__1::allocator<int>>, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>>>::__id
00000000018d7500 S std::__1::__any_imp::__unique_typeinfo<std::__1::pair<unsigned long, std::__1::shared_ptr<std::__1::vector<avro::parsing::Symbol, std::__1::allocator<avro::parsing::Symbol>>>>>::__id
00000000018d72d4 S std::__1::__any_imp::__unique_typeinfo<std::__1::tuple<std::__1::shared_ptr<std::__1::vector<avro::parsing::Symbol, std::__1::allocator<avro::parsing::Symbol>>>, std::__1::shared_ptr<std::__1::vector<avro::parsing::Symbol, std::__1::allocator<avro::parsing::Symbol>>>>>::__id
00000000018d7958 S std::__1::__any_imp::__unique_typeinfo<std::__1::tuple<std::__1::stack<long, std::__1::deque<long, std::__1::allocator<long>>>, bool, std::__1::shared_ptr<std::__1::vector<avro::parsing::Symbol, std::__1::allocator<avro::parsing::Symbol>>>, std::__1::shared_ptr<std::__1::vector<avro::parsing::Symbol, std::__1::allocator<avro::parsing::Symbol>>>>>::__id
00000000018d7418 S std::__1::__any_imp::__unique_typeinfo<std::__1::vector<std::__1::shared_ptr<std::__1::vector<avro::parsing::Symbol, std::__1::allocator<avro::parsing::Symbol>>>, std::__1::allocator<std::__1::shared_ptr<std::__1::vector<avro::parsing::Symbol, std::__1::allocator<avro::parsing::Symbol>>>>>>::__id
00000000018d6660 S std::__1::__any_imp::__unique_typeinfo<std::__1::vector<unsigned char, std::__1::allocator<unsigned char>>>::__id
00000000018d7950 S std::__1::__any_imp::__unique_typeinfo<std::__1::vector<unsigned long, std::__1::allocator<unsigned long>>>::__id
00000000018d74f8 S std::__1::__any_imp::__unique_typeinfo<std::__1::weak_ptr<std::__1::vector<avro::parsing::Symbol, std::__1::allocator<avro::parsing::Symbol>>>>::__id
00000000018d5bac S std::__1::__any_imp::__unique_typeinfo<bool>::__id
00000000018d5ba8 S std::__1::__any_imp::__unique_typeinfo<double>::__id
00000000018d6650 S std::__1::__any_imp::__unique_typeinfo<float>::__id
00000000018d5ba0 S std::__1::__any_imp::__unique_typeinfo<int>::__id
00000000018d72d8 S std::__1::__any_imp::__unique_typeinfo<unsigned long>::__id
00000000018d7c88 S std::__1::__any_imp::__unique_typeinfo<long long>::__id
0000000001a74f08 S typeinfo for avro::NodeRecord
0000000001a74ef0 S typeinfo for avro::NodeSymbolic
0000000001a756e0 S typeinfo for avro::BinaryDecoder
0000000001a754d8 S typeinfo for avro::BinaryEncoder
0000000001a74df0 S typeinfo for avro::NodePrimitive
0000000001a74b28 S typeinfo for avro::CustomLogicalType
0000000001a74af0 S typeinfo for avro::Node
0000000001a75120 S typeinfo for avro::NodeMap
0000000001a75cb8 S typeinfo for avro::parsing::ValidatingGrammarGenerator
0000000001a75008 S typeinfo for avro::NodeEnum
0000000001a75108 S typeinfo for avro::NodeArray
0000000001a75320 S typeinfo for avro::NodeFixed
0000000001a75220 S typeinfo for avro::NodeUnion
0000000001a58d50 S typeinfo for arrow::BinaryType
0000000001a59b50 S typeinfo for arrow::Date32Type
0000000001a59b68 S typeinfo for arrow::Date64Type
0000000001a59b08 S typeinfo for arrow::DoubleType
0000000001a5e890 S typeinfo for arrow::MapBuilder
0000000001a728e0 S typeinfo for arrow::MemoryPool
0000000001a59218 S typeinfo for arrow::NestedType
0000000001a59840 S typeinfo for arrow::NumberType
0000000001a58f18 S typeinfo for arrow::StringType
0000000001a59c18 S typeinfo for arrow::StructType
0000000001a59bb8 S typeinfo for arrow::Time32Type
0000000001a59bd0 S typeinfo for arrow::Time64Type
0000000001a5a178 S typeinfo for arrow::UInt16Type
0000000001a5a228 S typeinfo for arrow::UInt32Type
0000000001a5a2d8 S typeinfo for arrow::UInt64Type
0000000001a59d88 S typeinfo for arrow::BooleanType
0000000001a591a0 S typeinfo for arrow::DecimalType
0000000001a598c0 S typeinfo for arrow::IntegerType
0000000001a5ea28 S typeinfo for arrow::NullBuilder
0000000001a56ed8 S typeinfo for arrow::RecordBatch
0000000001a57e30 S typeinfo for arrow::SparseIndex
0000000001a5db30 S typeinfo for arrow::ArrayBuilder
0000000001a59250 S typeinfo for arrow::BaseListType
0000000001a59730 S typeinfo for arrow::DurationType
0000000001a59698 S typeinfo for arrow::IntervalType
0000000001a59418 S typeinfo for arrow::ListViewType
0000000001a59580 S typeinfo for arrow::TemporalType
0000000001a59c30 S typeinfo for arrow::Decimal32Type
0000000001a59c48 S typeinfo for arrow::Decimal64Type
0000000001a568c8 S typeinfo for arrow::ExtensionType
0000000001a599d8 S typeinfo for arrow::HalfFloatType
0000000001a593a0 S typeinfo for arrow::LargeListType
0000000001a564c0 S typeinfo for arrow::MemoryManager
0000000001a5e8c0 S typeinfo for arrow::StructBuilder
0000000001a595f8 S typeinfo for arrow::TimestampType
0000000001a58d38 S typeinfo for arrow::BaseBinaryType
0000000001a58e28 S typeinfo for arrow::BinaryViewType
0000000001a5ea50 S typeinfo for arrow::BooleanBuilder
0000000001a59c60 S typeinfo for arrow::Decimal128Type
0000000001a59c78 S typeinfo for arrow::Decimal256Type
0000000001a59c90 S typeinfo for arrow::DictionaryType
0000000001a59080 S typeinfo for arrow::FixedWidthType
0000000001a597c8 S typeinfo for arrow::PrimitiveCType
0000000001a57e88 S typeinfo for arrow::SparseCOOIndex
0000000001a57e58 S typeinfo for arrow::SparseCSFIndex
0000000001a58f90 S typeinfo for arrow::StringViewType
0000000001a5e718 S typeinfo for arrow::BaseListBuilder<arrow::LargeListType>
0000000001a5e668 S typeinfo for arrow::BaseListBuilder<arrow::ListType>
0000000001a58ea0 S typeinfo for arrow::LargeBinaryType
0000000001a59008 S typeinfo for arrow::LargeStringType
0000000001a72978 S typeinfo for arrow::ProxyMemoryPool
0000000001a73b88 S typeinfo for arrow::TimestampParser
0000000001a565e0 S typeinfo for arrow::CPUMemoryManager
0000000001a5dee8 S typeinfo for arrow::Decimal32Builder
0000000001a5df00 S typeinfo for arrow::Decimal64Builder
0000000001a580b8 S typeinfo for arrow::TableBatchReader
0000000001a5eb08 S typeinfo for arrow::BasicUnionBuilder
0000000001a5dc68 S typeinfo for arrow::BinaryViewBuilder
0000000001a5df18 S typeinfo for arrow::Decimal128Builder
0000000001a5df30 S typeinfo for arrow::Decimal256Builder
0000000001a5eba0 S typeinfo for arrow::DenseUnionBuilder
0000000001a59508 S typeinfo for arrow::FixedSizeListType
0000000001a59940 S typeinfo for arrow::FloatingPointType
0000000001a59490 S typeinfo for arrow::LargeListViewType
0000000001a728f0 S typeinfo for arrow::LoggingMemoryPool
0000000001a56ee8 S typeinfo for arrow::RecordBatchReader
0000000001a59c00 S typeinfo for arrow::RunEndEncodedType
0000000001a5da98 S typeinfo for arrow::AdaptiveIntBuilder
0000000001a5ec38 S typeinfo for arrow::SparseUnionBuilder
0000000001a5da80 S typeinfo for arrow::AdaptiveUIntBuilder
0000000001a5e7c8 S typeinfo for arrow::BaseListViewBuilder<arrow::ListViewType>
0000000001a5e878 S typeinfo for arrow::BaseListViewBuilder<arrow::LargeListViewType>
0000000001a59108 S typeinfo for arrow::FixedSizeBinaryType
0000000001a57618 S typeinfo for arrow::RunEndEncodedScalar
0000000001a5e8a8 S typeinfo for arrow::FixedSizeListBuilder
0000000001a5e110 S typeinfo for arrow::RunEndEncodedBuilder
0000000001a5dcd0 S typeinfo for arrow::FixedSizeBinaryBuilder
0000000001a5e5a0 S typeinfo for arrow::VarLengthListLikeBuilder<arrow::ListViewType>
0000000001a5e588 S typeinfo for arrow::VarLengthListLikeBuilder<arrow::LargeListType>
0000000001a5e5b8 S typeinfo for arrow::VarLengthListLikeBuilder<arrow::LargeListViewType>
0000000001a5e570 S typeinfo for arrow::VarLengthListLikeBuilder<arrow::ListType>
0000000001a68d58 S typeinfo for arrow::fs::FileSystem
0000000001a68d98 S typeinfo for arrow::fs::SlowFileSystem
0000000001a69dc0 S typeinfo for arrow::fs::LocalFileSystem
0000000001a68d80 S typeinfo for arrow::fs::SubTreeFileSystem
0000000001a6ade0 S typeinfo for arrow::fs::internal::MockFileSystem
0000000001a6adf8 S typeinfo for arrow::fs::internal::MockAsyncFileSystem
0000000001a6e8b0 S typeinfo for arrow::io::InputStream
0000000001a6fc30 S typeinfo for arrow::io::BufferReader
0000000001a6d068 S typeinfo for arrow::io::ReadableFile
0000000001a6e6e0 S typeinfo for arrow::io::FileInterface
0000000001a70258 S typeinfo for arrow::io::SlowInputStream
0000000001a6d138 S typeinfo for arrow::io::FileOutputStream
0000000001a70030 S typeinfo for arrow::io::LatencyGenerator
0000000001a6d6e0 S typeinfo for arrow::io::MemoryMappedFile
0000000001a6f628 S typeinfo for arrow::io::MockOutputStream
0000000001a6ea18 S typeinfo for arrow::io::RandomAccessFile
0000000001a6f6f8 S typeinfo for arrow::io::BufferOutputStream
0000000001a6c588 S typeinfo for arrow::io::BufferedInputStream
0000000001a6c330 S typeinfo for arrow::io::BufferedOutputStream
0000000001a705d0 S typeinfo for arrow::io::SlowRandomAccessFile
0000000001a6f888 S typeinfo for arrow::io::FixedSizeBufferWriter
0000000001a6e788 S typeinfo for arrow::io::Readable
0000000001a6e740 S typeinfo for arrow::io::Writable
0000000001a70f70 S typeinfo for arrow::ipc::StreamDecoder
0000000001a706f8 S typeinfo for arrow::ipc::MessageDecoder
0000000001a72140 S typeinfo for arrow::ipc::RecordBatchWriter
0000000001a706e8 S typeinfo for arrow::ipc::MessageDecoderListener
0000000001a70b50 S typeinfo for arrow::ipc::Listener
0000000001a72188 S typeinfo for arrow::ipc::internal::IpcPayloadWriter
0000000001a70f58 S typeinfo for arrow::ipc::internal::IoRecordedRandomAccessFile
0000000001a73090 S typeinfo for arrow::util::Codec
0000000001a73718 S typeinfo for arrow::util::ArrowLog
0000000001a58c28 S typeinfo for arrow::Field
0000000001a56478 S typeinfo for arrow::Device
0000000001a59cc8 S typeinfo for arrow::Schema
0000000001a58ba0 S typeinfo for arrow::detail::Fingerprintable
0000000001a59b20 S typeinfo for arrow::MapType
0000000001a64460 S typeinfo for arrow::compute::MetaFunction
0000000001a644c8 S typeinfo for arrow::compute::FunctionOptionsType
0000000001a643e8 S typeinfo for arrow::compute::Function
0000000001a63810 S typeinfo for arrow::compute::internal::CastFunction
0000000001a64700 S typeinfo for arrow::compute::internal::GenericOptionsType
0000000001a58bd0 S typeinfo for arrow::DataType
0000000001a59e38 S typeinfo for arrow::Int8Type
0000000001a59268 S typeinfo for arrow::ListType
0000000001a58cc0 S typeinfo for arrow::NullType
0000000001a59b80 S typeinfo for arrow::TimeType
0000000001a73930 S typeinfo for arrow::internal::ThreadPool
0000000001a73918 S typeinfo for arrow::internal::SerialExecutor
0000000001a5dca8 S typeinfo for arrow::internal::ChunkedBinaryBuilder
0000000001a5dcb8 S typeinfo for arrow::internal::ChunkedStringBuilder
0000000001a5e0f8 S typeinfo for arrow::internal::RunCompressorBuilder
0000000001a5da68 S typeinfo for arrow::internal::AdaptiveIntBuilderBase
0000000001a73908 S typeinfo for arrow::internal::Executor
0000000001a73328 S typeinfo for arrow::internal::SelfPipe
0000000001a56550 S typeinfo for arrow::CPUDevice
0000000001a59a70 S typeinfo for arrow::FloatType
0000000001a59ee8 S typeinfo for arrow::Int16Type
0000000001a59f68 S typeinfo for arrow::Int32Type
0000000001a5a018 S typeinfo for arrow::Int64Type
0000000001a5a0c8 S typeinfo for arrow::UInt8Type
0000000001a59be8 S typeinfo for arrow::UnionType
0000000001a72630 S typeinfo for arrow::extension::OpaqueType
0000000001a56bc8 S typeinfo for arrow::extension::JsonExtensionType
0000000001a724b8 S typeinfo for arrow::extension::FixedShapeTensorType
0000000001a56d08 S typeinfo for arrow::extension::UuidType
0000000001a56a50 S typeinfo for arrow::extension::Bool8Type
0000000001a74160 S typeinfo for apache::thrift::protocol::TProtocolFactory
0000000001a74120 S typeinfo for apache::thrift::protocol::TProtocol
0000000001a743f8 S typeinfo for apache::thrift::transport::TMemoryBuffer
0000000001a74340 S typeinfo for apache::thrift::transport::TFramedTransport
0000000001a74268 S typeinfo for apache::thrift::transport::TBufferedTransport
0000000001a74198 S typeinfo for apache::thrift::transport::TTransportException
0000000001a247c0 S typeinfo for iceberg::avro::AvroReader
0000000001a24c40 S typeinfo for iceberg::avro::AvroWriter
0000000001a23fa0 S typeinfo for iceberg::arrow::ArrowFileSystemFileIO
0000000001a26760 S typeinfo for iceberg::parquet::ParquetReader
0000000001a26f20 S typeinfo for iceberg::parquet::ParquetWriter
0000000001a4a6c0 S typeinfo for parquet::LogicalType::Impl::Int
0000000001a4a628 S typeinfo for parquet::LogicalType::Impl::Time
0000000001a4a5f0 S typeinfo for parquet::LogicalType::Impl::Decimal
0000000001a4a7b8 S typeinfo for parquet::LogicalType::Impl::Variant
0000000001a4a720 S typeinfo for parquet::LogicalType::Impl::Geometry
0000000001a4a758 S typeinfo for parquet::LogicalType::Impl::Geography
0000000001a4a688 S typeinfo for parquet::LogicalType::Impl::Timestamp
0000000001a4a7f0 S typeinfo for parquet::LogicalType
0000000001a45298 S typeinfo for parquet::StringKeyIdRetriever
0000000001a2cde8 S typeinfo for parquet::BlockSplitBloomFilter
0000000001a2dee8 S typeinfo for parquet::RowGroupBloomFilterReaderImpl
0000000001a2cac0 S typeinfo for parquet::arrow::FileWriter
0000000001a2c930 S typeinfo for parquet::arrow::VariantExtensionType
0000000001a47d98 S typeinfo for parquet::format::PageHeader
0000000001a47b68 S typeinfo for parquet::format::Statistics
0000000001a47b78 S typeinfo for parquet::format::StringType
0000000001a47e98 S typeinfo for parquet::format::AesGcmCtrV1
0000000001a47b48 S typeinfo for parquet::format::BoundingBox
0000000001a47e18 S typeinfo for parquet::format::ColumnChunk
0000000001a47e78 S typeinfo for parquet::format::ColumnIndex
0000000001a47e48 S typeinfo for parquet::format::ColumnOrder
0000000001a47bf8 S typeinfo for parquet::format::DecimalType
0000000001a47bd8 S typeinfo for parquet::format::Float16Type
0000000001a47cc8 S typeinfo for parquet::format::LogicalType
0000000001a47c28 S typeinfo for parquet::format::NanoSeconds
0000000001a47e68 S typeinfo for parquet::format::OffsetIndex
0000000001a47c98 S typeinfo for parquet::format::VariantType
0000000001a47eb8 S typeinfo for parquet::format::FileMetaData
0000000001a47ca8 S typeinfo for parquet::format::GeometryType
0000000001a47c18 S typeinfo for parquet::format::MicroSeconds
0000000001a47c08 S typeinfo for parquet::format::MilliSeconds
0000000001a47e58 S typeinfo for parquet::format::PageLocation
0000000001a47d68 S typeinfo for parquet::format::Uncompressed
0000000001a47cb8 S typeinfo for parquet::format::GeographyType
0000000001a47cd8 S typeinfo for parquet::format::SchemaElement
0000000001a47db8 S typeinfo for parquet::format::SortingColumn
0000000001a47c48 S typeinfo for parquet::format::TimestampType
0000000001a47dd8 S typeinfo for parquet::format::ColumnMetaData
0000000001a47ce8 S typeinfo for parquet::format::DataPageHeader
0000000001a47b38 S typeinfo for parquet::format::SizeStatistics
0000000001a47d58 S typeinfo for parquet::format::BloomFilterHash
0000000001a47cf8 S typeinfo for parquet::format::IndexPageHeader
0000000001a47d18 S typeinfo for parquet::format::DataPageHeaderV2
0000000001a47e38 S typeinfo for parquet::format::TypeDefinedOrder
0000000001a47d88 S typeinfo for parquet::format::BloomFilterHeader
0000000001a47dc8 S typeinfo for parquet::format::PageEncodingStats
0000000001a47ec8 S typeinfo for parquet::format::FileCryptoMetaData
0000000001a47ea8 S typeinfo for parquet::format::EncryptionAlgorithm
0000000001a47d28 S typeinfo for parquet::format::SplitBlockAlgorithm
0000000001a47d38 S typeinfo for parquet::format::BloomFilterAlgorithm
0000000001a47e08 S typeinfo for parquet::format::ColumnCryptoMetaData
0000000001a47d08 S typeinfo for parquet::format::DictionaryPageHeader
0000000001a47b58 S typeinfo for parquet::format::GeospatialStatistics
0000000001a47d78 S typeinfo for parquet::format::BloomFilterCompression
0000000001a47df8 S typeinfo for parquet::format::EncryptionWithColumnKey
0000000001a47de8 S typeinfo for parquet::format::EncryptionWithFooterKey
0000000001a47d48 S typeinfo for parquet::format::XxHash
0000000001a47c68 S typeinfo for parquet::format::IntType
0000000001a47b98 S typeinfo for parquet::format::MapType
0000000001a47e88 S typeinfo for parquet::format::AesGcmV1
0000000001a47c88 S typeinfo for parquet::format::BsonType
0000000001a47bc8 S typeinfo for parquet::format::DateType
0000000001a47bb8 S typeinfo for parquet::format::EnumType
0000000001a47c78 S typeinfo for parquet::format::JsonType
0000000001a47da8 S typeinfo for parquet::format::KeyValue
0000000001a47ba8 S typeinfo for parquet::format::ListType
0000000001a47be8 S typeinfo for parquet::format::NullType
0000000001a47e28 S typeinfo for parquet::format::RowGroup
0000000001a47c58 S typeinfo for parquet::format::TimeType
0000000001a47c38 S typeinfo for parquet::format::TimeUnit
0000000001a47b88 S typeinfo for parquet::format::UUIDType
0000000001a47f58 S typeinfo for parquet::schema::PrimitiveNode
0000000001a47f70 S typeinfo for parquet::schema::GroupNode
0000000001a46010 S typeinfo for parquet::XxHasher
00000000018d650e S typeinfo name for avro::NodeRecord
00000000018d64f8 S typeinfo name for avro::NodeSymbolic
00000000018d6a32 S typeinfo name for avro::BinaryDecoder
00000000018d69c0 S typeinfo name for avro::BinaryEncoder
00000000018d64da S typeinfo name for avro::NodePrimitive
00000000018d640a S typeinfo name for avro::CustomLogicalType
00000000018d634a S typeinfo name for avro::Node
00000000018d6545 S typeinfo name for avro::NodeMap
00000000018d724a S typeinfo name for avro::parsing::ValidatingGrammarGenerator
00000000018d6522 S typeinfo name for avro::NodeEnum
00000000018d6533 S typeinfo name for avro::NodeArray
00000000018d6575 S typeinfo name for avro::NodeFixed
00000000018d655c S typeinfo name for avro::NodeUnion
00000000018a8fdc S typeinfo name for arrow::BinaryType
00000000018a92b1 S typeinfo name for arrow::Date32Type
00000000018a92d8 S typeinfo name for arrow::Date64Type
00000000018a9285 S typeinfo name for arrow::DoubleType
00000000018ad1c6 S typeinfo name for arrow::MapBuilder
00000000018c8729 S typeinfo name for arrow::MemoryPool
00000000018a9114 S typeinfo name for arrow::NestedType
00000000018a9206 S typeinfo name for arrow::NumberType
00000000018a903d S typeinfo name for arrow::StringType
00000000018a9358 S typeinfo name for arrow::StructType
00000000018a92ff S typeinfo name for arrow::Time32Type
00000000018a9314 S typeinfo name for arrow::Time64Type
00000000018a964c S typeinfo name for arrow::UInt16Type
00000000018a96b5 S typeinfo name for arrow::UInt32Type
00000000018a971e S typeinfo name for arrow::UInt64Type
00000000018a9457 S typeinfo name for arrow::BooleanType
00000000018a90d5 S typeinfo name for arrow::DecimalType
00000000018a921b S typeinfo name for arrow::IntegerType
00000000018ad278 S typeinfo name for arrow::NullBuilder
00000000018a7030 S typeinfo name for arrow::RecordBatch
00000000018a88f8 S typeinfo name for arrow::SparseIndex
00000000018aca06 S typeinfo name for arrow::ArrayBuilder
00000000018a90fd S typeinfo name for arrow::BaseListType
00000000018a91d6 S typeinfo name for arrow::DurationType
00000000018a91bf S typeinfo name for arrow::IntervalType
00000000018a9141 S typeinfo name for arrow::ListViewType
00000000018a9190 S typeinfo name for arrow::TemporalType
00000000018a936d S typeinfo name for arrow::Decimal32Type
00000000018a9385 S typeinfo name for arrow::Decimal64Type
00000000018a6a1c S typeinfo name for arrow::ExtensionType
00000000018a924d S typeinfo name for arrow::HalfFloatType
00000000018a9129 S typeinfo name for arrow::LargeListType
00000000018a658f S typeinfo name for arrow::MemoryManager
00000000018ad1fa S typeinfo name for arrow::StructBuilder
00000000018a91a7 S typeinfo name for arrow::TimestampType
00000000018a8ff1 S typeinfo name for arrow::BaseBinaryType
00000000018a900a S typeinfo name for arrow::BinaryViewType
00000000018ad28e S typeinfo name for arrow::BooleanBuilder
00000000018a939d S typeinfo name for arrow::Decimal128Type
00000000018a93b6 S typeinfo name for arrow::Decimal256Type
00000000018a93cf S typeinfo name for arrow::DictionaryType
00000000018a9085 S typeinfo name for arrow::FixedWidthType
00000000018a91ed S typeinfo name for arrow::PrimitiveCType
00000000018a8960 S typeinfo name for arrow::SparseCOOIndex
00000000018a890e S typeinfo name for arrow::SparseCSFIndex
00000000018a9052 S typeinfo name for arrow::StringViewType
00000000018ad12e S typeinfo name for arrow::BaseListBuilder<arrow::LargeListType>
00000000018ad105 S typeinfo name for arrow::BaseListBuilder<arrow::ListType>
00000000018a9023 S typeinfo name for arrow::LargeBinaryType
00000000018a906b S typeinfo name for arrow::LargeStringType
00000000018c873e S typeinfo name for arrow::ProxyMemoryPool
00000000018d1120 S typeinfo name for arrow::TimestampParser
00000000018a65f5 S typeinfo name for arrow::CPUMemoryManager
00000000018acb29 S typeinfo name for arrow::Decimal32Builder
00000000018acb44 S typeinfo name for arrow::Decimal64Builder
00000000018a8ae0 S typeinfo name for arrow::TableBatchReader
00000000018ad2f9 S typeinfo name for arrow::BasicUnionBuilder
00000000018aca30 S typeinfo name for arrow::BinaryViewBuilder
00000000018acb5f S typeinfo name for arrow::Decimal128Builder
00000000018acb7b S typeinfo name for arrow::Decimal256Builder
00000000018ad315 S typeinfo name for arrow::DenseUnionBuilder
00000000018a9174 S typeinfo name for arrow::FixedSizeListType
00000000018a9231 S typeinfo name for arrow::FloatingPointType
00000000018a9158 S typeinfo name for arrow::LargeListViewType
00000000018c870d S typeinfo name for arrow::LoggingMemoryPool
00000000018a7046 S typeinfo name for arrow::RecordBatchReader
00000000018a933c S typeinfo name for arrow::RunEndEncodedType
00000000018ac9d8 S typeinfo name for arrow::AdaptiveIntBuilder
00000000018ad331 S typeinfo name for arrow::SparseUnionBuilder
00000000018ac9ba S typeinfo name for arrow::AdaptiveUIntBuilder
00000000018ad15d S typeinfo name for arrow::BaseListViewBuilder<arrow::ListViewType>
00000000018ad18f S typeinfo name for arrow::BaseListViewBuilder<arrow::LargeListViewType>
00000000018a909e S typeinfo name for arrow::FixedSizeBinaryType
00000000018a76e0 S typeinfo name for arrow::RunEndEncodedScalar
00000000018ad1db S typeinfo name for arrow::FixedSizeListBuilder
00000000018acf6d S typeinfo name for arrow::RunEndEncodedBuilder
00000000018aca9c S typeinfo name for arrow::FixedSizeBinaryBuilder
00000000018ad092 S typeinfo name for arrow::VarLengthListLikeBuilder<arrow::ListViewType>
00000000018ad05a S typeinfo name for arrow::VarLengthListLikeBuilder<arrow::LargeListType>
00000000018ad0c9 S typeinfo name for arrow::VarLengthListLikeBuilder<arrow::LargeListViewType>
00000000018ad028 S typeinfo name for arrow::VarLengthListLikeBuilder<arrow::ListType>
00000000018be0b7 S typeinfo name for arrow::fs::FileSystem
00000000018be129 S typeinfo name for arrow::fs::SlowFileSystem
00000000018c0190 S typeinfo name for arrow::fs::LocalFileSystem
00000000018be10a S typeinfo name for arrow::fs::SubTreeFileSystem
00000000018c2a1a S typeinfo name for arrow::fs::internal::MockFileSystem
00000000018c29f0 S typeinfo name for arrow::fs::internal::MockAsyncFileSystem
00000000018c3d0f S typeinfo name for arrow::io::InputStream
00000000018c44d0 S typeinfo name for arrow::io::BufferReader
00000000018c36fa S typeinfo name for arrow::io::ReadableFile
00000000018c3c8c S typeinfo name for arrow::io::FileInterface
00000000018c4663 S typeinfo name for arrow::io::SlowInputStream
00000000018c3714 S typeinfo name for arrow::io::FileOutputStream
00000000018c4610 S typeinfo name for arrow::io::LatencyGenerator
00000000018c3756 S typeinfo name for arrow::io::MemoryMappedFile
00000000018c444a S typeinfo name for arrow::io::MockOutputStream
00000000018c3d28 S typeinfo name for arrow::io::RandomAccessFile
00000000018c4468 S typeinfo name for arrow::io::BufferOutputStream
00000000018c33e2 S typeinfo name for arrow::io::BufferedInputStream
00000000018c3370 S typeinfo name for arrow::io::BufferedOutputStream
00000000018c4680 S typeinfo name for arrow::io::SlowRandomAccessFile
00000000018c44a7 S typeinfo name for arrow::io::FixedSizeBufferWriter
00000000018c3cfa S typeinfo name for arrow::io::Readable
00000000018c3ce5 S typeinfo name for arrow::io::Writable
00000000018c4cfc S typeinfo name for arrow::ipc::StreamDecoder
00000000018c4791 S typeinfo name for arrow::ipc::MessageDecoder
00000000018c78d4 S typeinfo name for arrow::ipc::RecordBatchWriter
00000000018c476c S typeinfo name for arrow::ipc::MessageDecoderListener
00000000018c4cb4 S typeinfo name for arrow::ipc::Listener
00000000018c78f4 S typeinfo name for arrow::ipc::internal::IpcPayloadWriter
00000000018c4cca S typeinfo name for arrow::ipc::internal::IoRecordedRandomAccessFile
00000000018ca875 S typeinfo name for arrow::util::Codec
00000000018d0acb S typeinfo name for arrow::util::ArrowLog
00000000018a8f8d S typeinfo name for arrow::Field
00000000018a651d S typeinfo name for arrow::Device
00000000018a93e8 S typeinfo name for arrow::Schema
00000000018a8ef4 S typeinfo name for arrow::detail::Fingerprintable
00000000018a92a0 S typeinfo name for arrow::MapType
00000000018b6a8a S typeinfo name for arrow::compute::MetaFunction
00000000018b6aa9 S typeinfo name for arrow::compute::FunctionOptionsType
00000000018b6a70 S typeinfo name for arrow::compute::Function
00000000018b5ff8 S typeinfo name for arrow::compute::internal::CastFunction
00000000018b6d8a S typeinfo name for arrow::compute::internal::GenericOptionsType
00000000018a8f15 S typeinfo name for arrow::DataType
00000000018a9470 S typeinfo name for arrow::Int8Type
00000000018a90eb S typeinfo name for arrow::ListType
00000000018a8fca S typeinfo name for arrow::NullType
00000000018a92ed S typeinfo name for arrow::TimeType
00000000018d0c76 S typeinfo name for arrow::internal::ThreadPool
00000000018d0c54 S typeinfo name for arrow::internal::SerialExecutor
00000000018aca74 S typeinfo name for arrow::internal::ChunkedBinaryBuilder
00000000018aca4c S typeinfo name for arrow::internal::ChunkedStringBuilder
00000000018acf45 S typeinfo name for arrow::internal::RunCompressorBuilder
00000000018ac990 S typeinfo name for arrow::internal::AdaptiveIntBuilderBase
00000000018d0c39 S typeinfo name for arrow::internal::Executor
00000000018d05a2 S typeinfo name for arrow::internal::SelfPipe
00000000018a65e2 S typeinfo name for arrow::CPUDevice
00000000018a926e S typeinfo name for arrow::FloatType
00000000018a94d0 S typeinfo name for arrow::Int16Type
00000000018a9533 S typeinfo name for arrow::Int32Type
00000000018a9546 S typeinfo name for arrow::Int64Type
00000000018a95a9 S typeinfo name for arrow::UInt8Type
00000000018a9329 S typeinfo name for arrow::UnionType
00000000018c8628 S typeinfo name for arrow::extension::OpaqueType
00000000018a6bad S typeinfo name for arrow::extension::JsonExtensionType
00000000018c7ee1 S typeinfo name for arrow::extension::FixedShapeTensorType
00000000018a6c78 S typeinfo name for arrow::extension::UuidType
00000000018a6acf S typeinfo name for arrow::extension::Bool8Type
00000000018d48c4 S typeinfo name for apache::thrift::protocol::TProtocolFactory
00000000018d48a0 S typeinfo name for apache::thrift::protocol::TProtocol
00000000018d4a30 S typeinfo name for apache::thrift::transport::TMemoryBuffer
00000000018d49aa S typeinfo name for apache::thrift::transport::TFramedTransport
00000000018d4920 S typeinfo name for apache::thrift::transport::TBufferedTransport
00000000018d48f0 S typeinfo name for apache::thrift::transport::TTransportException
00000000018dac40 S typeinfo name for iceberg::avro::AvroReader
00000000018dc120 S typeinfo name for iceberg::avro::AvroWriter
00000000018d7fa0 S typeinfo name for iceberg::arrow::ArrowFileSystemFileIO
00000000018e1620 S typeinfo name for iceberg::parquet::ParquetReader
00000000018e43e0 S typeinfo name for iceberg::parquet::ParquetWriter
00000000018a1cb4 S typeinfo name for parquet::LogicalType::Impl::Int
00000000018a1c3c S typeinfo name for parquet::LogicalType::Impl::Time
00000000018a1bc5 S typeinfo name for parquet::LogicalType::Impl::Decimal
00000000018a1d4d S typeinfo name for parquet::LogicalType::Impl::Variant
00000000018a1cd5 S typeinfo name for parquet::LogicalType::Impl::Geometry
00000000018a1d26 S typeinfo name for parquet::LogicalType::Impl::Geography
00000000018a1c5e S typeinfo name for parquet::LogicalType::Impl::Timestamp
00000000018a1d9d S typeinfo name for parquet::LogicalType
000000000189c29d S typeinfo name for parquet::StringKeyIdRetriever
0000000001892bdc S typeinfo name for parquet::BlockSplitBloomFilter
000000000189320b S typeinfo name for parquet::RowGroupBloomFilterReaderImpl
00000000018927b0 S typeinfo name for parquet::arrow::FileWriter
00000000018926ba S typeinfo name for parquet::arrow::VariantExtensionType
000000000189fcf8 S typeinfo name for parquet::format::PageHeader
000000000189f8ac S typeinfo name for parquet::format::Statistics
000000000189f8ca S typeinfo name for parquet::format::StringType
000000000189ff0d S typeinfo name for parquet::format::AesGcmCtrV1
000000000189f865 S typeinfo name for parquet::format::BoundingBox
000000000189fe17 S typeinfo name for parquet::format::ColumnChunk
000000000189fed3 S typeinfo name for parquet::format::ColumnIndex
000000000189fe75 S typeinfo name for parquet::format::ColumnOrder
000000000189f9a8 S typeinfo name for parquet::format::DecimalType
000000000189f96e S typeinfo name for parquet::format::Float16Type
000000000189fb2d S typeinfo name for parquet::format::LogicalType
000000000189fa07 S typeinfo name for parquet::format::NanoSeconds
000000000189feb4 S typeinfo name for parquet::format::OffsetIndex
000000000189facd S typeinfo name for parquet::format::VariantType
000000000189ff53 S typeinfo name for parquet::format::FileMetaData
000000000189faec S typeinfo name for parquet::format::GeometryType
000000000189f9e7 S typeinfo name for parquet::format::MicroSeconds
000000000189f9c7 S typeinfo name for parquet::format::MilliSeconds
000000000189fe94 S typeinfo name for parquet::format::PageLocation
000000000189fc89 S typeinfo name for parquet::format::Uncompressed
000000000189fb0c S typeinfo name for parquet::format::GeographyType
000000000189fb4c S typeinfo name for parquet::format::SchemaElement
000000000189fd31 S typeinfo name for parquet::format::SortingColumn
000000000189fa41 S typeinfo name for parquet::format::TimestampType
000000000189fd77 S typeinfo name for parquet::format::ColumnMetaData
000000000189fb6d S typeinfo name for parquet::format::DataPageHeader
000000000189f843 S typeinfo name for parquet::format::SizeStatistics
000000000189fc66 S typeinfo name for parquet::format::BloomFilterHash
000000000189fb8f S typeinfo name for parquet::format::IndexPageHeader
000000000189fbda S typeinfo name for parquet::format::DataPageHeaderV2
000000000189fe51 S typeinfo name for parquet::format::TypeDefinedOrder
000000000189fcd3 S typeinfo name for parquet::format::BloomFilterHeader
000000000189fd52 S typeinfo name for parquet::format::PageEncodingStats
000000000189ff73 S typeinfo name for parquet::format::FileCryptoMetaData
000000000189ff2c S typeinfo name for parquet::format::EncryptionAlgorithm
000000000189fbfe S typeinfo name for parquet::format::SplitBlockAlgorithm
000000000189fc25 S typeinfo name for parquet::format::BloomFilterAlgorithm
000000000189fdef S typeinfo name for parquet::format::ColumnCryptoMetaData
000000000189fbb2 S typeinfo name for parquet::format::DictionaryPageHeader
000000000189f884 S typeinfo name for parquet::format::GeospatialStatistics
000000000189fca9 S typeinfo name for parquet::format::BloomFilterCompression
000000000189fdc4 S typeinfo name for parquet::format::EncryptionWithColumnKey
000000000189fd99 S typeinfo name for parquet::format::EncryptionWithFooterKey
000000000189fc4d S typeinfo name for parquet::format::XxHash
000000000189fa7d S typeinfo name for parquet::format::IntType
000000000189f903 S typeinfo name for parquet::format::MapType
000000000189fef2 S typeinfo name for parquet::format::AesGcmV1
000000000189fab2 S typeinfo name for parquet::format::BsonType
000000000189f953 S typeinfo name for parquet::format::DateType
000000000189f938 S typeinfo name for parquet::format::EnumType
000000000189fa97 S typeinfo name for parquet::format::JsonType
000000000189fd16 S typeinfo name for parquet::format::KeyValue
000000000189f91d S typeinfo name for parquet::format::ListType
000000000189f98d S typeinfo name for parquet::format::NullType
000000000189fe36 S typeinfo name for parquet::format::RowGroup
000000000189fa62 S typeinfo name for parquet::format::TimeType
000000000189fa26 S typeinfo name for parquet::format::TimeUnit
000000000189f8e8 S typeinfo name for parquet::format::UUIDType
000000000189ff99 S typeinfo name for parquet::schema::PrimitiveNode
000000000189ffba S typeinfo name for parquet::schema::GroupNode
000000000189ecdc S typeinfo name for parquet::XxHasher

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants