diff --git a/src/paimon/common/data/blob_descriptor.h b/include/paimon/data/blob_descriptor.h similarity index 94% rename from src/paimon/common/data/blob_descriptor.h rename to include/paimon/data/blob_descriptor.h index ea41c97de..ce53ea2d5 100644 --- a/src/paimon/common/data/blob_descriptor.h +++ b/include/paimon/data/blob_descriptor.h @@ -26,6 +26,7 @@ #include "paimon/memory/bytes.h" #include "paimon/memory/memory_pool.h" #include "paimon/result.h" +#include "paimon/visibility.h" namespace paimon { /// Blob descriptor to describe a blob reference. @@ -78,9 +79,6 @@ class PAIMON_EXPORT BlobDescriptor { : version_(version), uri_(uri), offset_(offset), length_(length) {} private: - static constexpr int64_t kMagic = 0x424C4F4244455343l; - /// one byte for version, eight bytes for magic number. - static constexpr uint64_t kMinDescriptorLength = 9; static constexpr int8_t kCurrentVersion = 2; const int8_t version_ = kCurrentVersion; diff --git a/src/paimon/common/data/blob.cpp b/src/paimon/common/data/blob.cpp index 0c706aaa4..707dd475d 100644 --- a/src/paimon/common/data/blob.cpp +++ b/src/paimon/common/data/blob.cpp @@ -23,12 +23,12 @@ #include #include "arrow/c/bridge.h" -#include "paimon/common/data/blob_descriptor.h" #include "paimon/common/data/blob_utils.h" #include "paimon/common/io/offset_input_stream.h" #include "paimon/common/utils/arrow/status_utils.h" #include "paimon/common/utils/path_util.h" #include "paimon/common/utils/stream_utils.h" +#include "paimon/data/blob_descriptor.h" #include "paimon/memory/bytes.h" #include "paimon/status.h" diff --git a/src/paimon/common/data/blob_descriptor.cpp b/src/paimon/common/data/blob_descriptor.cpp index c262ebf1f..5a020c9fc 100644 --- a/src/paimon/common/data/blob_descriptor.cpp +++ b/src/paimon/common/data/blob_descriptor.cpp @@ -17,7 +17,7 @@ * under the License. */ -#include "paimon/common/data/blob_descriptor.h" +#include "paimon/data/blob_descriptor.h" #include @@ -31,6 +31,13 @@ #include "paimon/status.h" namespace paimon { +namespace { + +constexpr int64_t kMagic = 0x424C4F4244455343l; +// One byte for version, eight bytes for magic number. +constexpr uint64_t kMinDescriptorLength = 9; + +} // namespace Result> BlobDescriptor::Create(const std::string& uri, int64_t offset, int64_t length) { diff --git a/src/paimon/common/data/blob_descriptor_test.cpp b/src/paimon/common/data/blob_descriptor_test.cpp index 1fbd9de0d..e1a3168f0 100644 --- a/src/paimon/common/data/blob_descriptor_test.cpp +++ b/src/paimon/common/data/blob_descriptor_test.cpp @@ -17,7 +17,7 @@ * under the License. */ -#include "paimon/common/data/blob_descriptor.h" +#include "paimon/data/blob_descriptor.h" #include #include diff --git a/src/paimon/common/data/blob_utils.cpp b/src/paimon/common/data/blob_utils.cpp index d7d8f336c..6c52a9c06 100644 --- a/src/paimon/common/data/blob_utils.cpp +++ b/src/paimon/common/data/blob_utils.cpp @@ -28,12 +28,12 @@ #include "arrow/type.h" #include "fmt/format.h" #include "paimon/common/data/blob_defs.h" -#include "paimon/common/data/blob_descriptor.h" #include "paimon/common/data/blob_view_struct.h" #include "paimon/common/types/data_field.h" #include "paimon/common/utils/arrow/status_utils.h" #include "paimon/common/utils/checked_cast.h" #include "paimon/common/utils/string_utils.h" +#include "paimon/data/blob_descriptor.h" namespace arrow { class Array; } diff --git a/src/paimon/common/data/blob_utils_test.cpp b/src/paimon/common/data/blob_utils_test.cpp index d58206b78..e523e5f76 100644 --- a/src/paimon/common/data/blob_utils_test.cpp +++ b/src/paimon/common/data/blob_utils_test.cpp @@ -24,11 +24,11 @@ #include "gtest/gtest.h" #include "paimon/catalog/identifier.h" #include "paimon/common/data/blob_defs.h" -#include "paimon/common/data/blob_descriptor.h" #include "paimon/common/data/blob_view_struct.h" #include "paimon/common/types/data_field.h" #include "paimon/common/utils/checked_cast.h" #include "paimon/data/blob.h" +#include "paimon/data/blob_descriptor.h" #include "paimon/memory/memory_pool.h" #include "paimon/testing/utils/testharness.h" diff --git a/src/paimon/common/reader/blob_view_resolving_batch_reader_test.cpp b/src/paimon/common/reader/blob_view_resolving_batch_reader_test.cpp index 2e8e147a2..7b257dfab 100644 --- a/src/paimon/common/reader/blob_view_resolving_batch_reader_test.cpp +++ b/src/paimon/common/reader/blob_view_resolving_batch_reader_test.cpp @@ -33,12 +33,12 @@ #include "arrow/c/bridge.h" #include "gtest/gtest.h" #include "paimon/catalog/identifier.h" -#include "paimon/common/data/blob_descriptor.h" #include "paimon/common/data/blob_utils.h" #include "paimon/common/data/blob_view_struct.h" #include "paimon/common/metrics/metrics_impl.h" #include "paimon/common/utils/arrow/mem_utils.h" #include "paimon/common/utils/arrow/status_utils.h" +#include "paimon/data/blob_descriptor.h" #include "paimon/memory/bytes.h" #include "paimon/memory/memory_pool.h" #include "paimon/reader/batch_reader.h" diff --git a/src/paimon/core/append/append_only_writer_test.cpp b/src/paimon/core/append/append_only_writer_test.cpp index f1bf63cec..9e20015a3 100644 --- a/src/paimon/core/append/append_only_writer_test.cpp +++ b/src/paimon/core/append/append_only_writer_test.cpp @@ -37,7 +37,6 @@ #include "arrow/type.h" #include "arrow/util/key_value_metadata.h" #include "gtest/gtest.h" -#include "paimon/common/data/blob_descriptor.h" #include "paimon/common/data/blob_utils.h" #include "paimon/common/data/blob_view_struct.h" #include "paimon/common/data/shredding/map_shared_shredding_utils.h" @@ -55,6 +54,7 @@ #include "paimon/core/manifest/file_source.h" #include "paimon/core/stats/simple_stats.h" #include "paimon/core/utils/commit_increment.h" +#include "paimon/data/blob_descriptor.h" #include "paimon/defs.h" #include "paimon/file_index/file_index_format.h" #include "paimon/format/file_format_factory.h" diff --git a/src/paimon/core/utils/blob_view_lookup.cpp b/src/paimon/core/utils/blob_view_lookup.cpp index d0b2ead7c..99e7dc835 100644 --- a/src/paimon/core/utils/blob_view_lookup.cpp +++ b/src/paimon/core/utils/blob_view_lookup.cpp @@ -28,12 +28,12 @@ #include "arrow/c/bridge.h" #include "fmt/format.h" #include "paimon/catalog/catalog.h" -#include "paimon/common/data/blob_descriptor.h" #include "paimon/common/executor/future.h" #include "paimon/common/table/special_fields.h" #include "paimon/common/utils/arrow/status_utils.h" #include "paimon/common/utils/checked_cast.h" #include "paimon/common/utils/path_util.h" +#include "paimon/data/blob_descriptor.h" #include "paimon/defs.h" #include "paimon/executor.h" #include "paimon/global_index/bitmap_global_index_result.h" diff --git a/src/paimon/format/blob/blob_format_writer.cpp b/src/paimon/format/blob/blob_format_writer.cpp index e02dfb601..215e4c8d0 100644 --- a/src/paimon/format/blob/blob_format_writer.cpp +++ b/src/paimon/format/blob/blob_format_writer.cpp @@ -25,7 +25,6 @@ #include "arrow/api.h" #include "arrow/c/bridge.h" #include "paimon/common/data/blob_defs.h" -#include "paimon/common/data/blob_descriptor.h" #include "paimon/common/data/blob_utils.h" #include "paimon/common/memory/memory_segment_utils.h" #include "paimon/common/metrics/metrics_impl.h" @@ -33,6 +32,7 @@ #include "paimon/common/utils/checked_cast.h" #include "paimon/common/utils/delta_varint_compressor.h" #include "paimon/data/blob.h" +#include "paimon/data/blob_descriptor.h" #include "paimon/fs/file_system.h" #include "paimon/io/byte_array_input_stream.h" #include "paimon/logging.h" diff --git a/src/paimon/format/blob/blob_format_writer_test.cpp b/src/paimon/format/blob/blob_format_writer_test.cpp index b0edbe3be..defee5b59 100644 --- a/src/paimon/format/blob/blob_format_writer_test.cpp +++ b/src/paimon/format/blob/blob_format_writer_test.cpp @@ -24,12 +24,12 @@ #include "arrow/c/bridge.h" #include "gtest/gtest.h" -#include "paimon/common/data/blob_descriptor.h" #include "paimon/common/utils/arrow/mem_utils.h" #include "paimon/common/utils/arrow/status_utils.h" #include "paimon/common/utils/checked_cast.h" #include "paimon/common/utils/stream_utils.h" #include "paimon/data/blob.h" +#include "paimon/data/blob_descriptor.h" #include "paimon/format/blob/blob_file_batch_reader.h" #include "paimon/fs/local/local_file_system.h" #include "paimon/testing/utils/read_result_collector.h" diff --git a/src/paimon/testing/utils/test_helper.h b/src/paimon/testing/utils/test_helper.h index 10aa0a240..2bc1e9bbc 100644 --- a/src/paimon/testing/utils/test_helper.h +++ b/src/paimon/testing/utils/test_helper.h @@ -33,7 +33,6 @@ #include "paimon/api.h" #include "paimon/catalog/catalog.h" #include "paimon/commit_context.h" -#include "paimon/common/data/blob_descriptor.h" #include "paimon/common/data/blob_utils.h" #include "paimon/common/types/data_field.h" #include "paimon/common/utils/arrow/status_utils.h" @@ -47,6 +46,7 @@ #include "paimon/core/utils/file_store_path_factory.h" #include "paimon/core/utils/snapshot_manager.h" #include "paimon/data/blob.h" +#include "paimon/data/blob_descriptor.h" #include "paimon/file_store_commit.h" #include "paimon/file_store_write.h" #include "paimon/fs/file_system_factory.h" diff --git a/test/inte/blob_table_inte_test.cpp b/test/inte/blob_table_inte_test.cpp index 2a3a37d10..40f0625fc 100644 --- a/test/inte/blob_table_inte_test.cpp +++ b/test/inte/blob_table_inte_test.cpp @@ -45,7 +45,6 @@ #include "paimon/common/data/binary_row.h" #include "paimon/common/data/binary_row_writer.h" #include "paimon/common/data/blob_defs.h" -#include "paimon/common/data/blob_descriptor.h" #include "paimon/common/data/blob_utils.h" #include "paimon/common/data/blob_view_struct.h" #include "paimon/common/factories/io_hook.h" @@ -61,6 +60,7 @@ #include "paimon/core/utils/file_utils.h" #include "paimon/core/utils/snapshot_manager.h" #include "paimon/data/blob.h" +#include "paimon/data/blob_descriptor.h" #include "paimon/defs.h" #include "paimon/file_store_write.h" #include "paimon/format/mosaic/mosaic_format_defs.h" diff --git a/test/inte/paimon_read_compat_inte_test.cpp b/test/inte/paimon_read_compat_inte_test.cpp index 5948f0ef7..0af1dd1fe 100644 --- a/test/inte/paimon_read_compat_inte_test.cpp +++ b/test/inte/paimon_read_compat_inte_test.cpp @@ -29,8 +29,8 @@ #include "arrow/api.h" #include "arrow/ipc/json_simple.h" #include "gtest/gtest.h" -#include "paimon/common/data/blob_descriptor.h" #include "paimon/common/data/variant/generic_variant.h" +#include "paimon/data/blob_descriptor.h" #include "paimon/defs.h" #include "paimon/read_context.h" #include "paimon/reader/batch_reader.h"