From c3485d39c992d582c01b184aabf009dff18e4b5f Mon Sep 17 00:00:00 2001 From: Zhuo Wang Date: Tue, 9 Jun 2026 22:29:02 +0800 Subject: [PATCH] fix: Assign UUID when creating table metadata --- src/iceberg/table_metadata.cc | 3 ++- src/iceberg/test/table_metadata_builder_test.cc | 2 ++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/iceberg/table_metadata.cc b/src/iceberg/table_metadata.cc index 658681573..30f99f259 100644 --- a/src/iceberg/table_metadata.cc +++ b/src/iceberg/table_metadata.cc @@ -224,7 +224,8 @@ Result> TableMetadata::Make( ICEBERG_RETURN_UNEXPECTED(PropertyUtil::ValidateCommitProperties(properties)); return TableMetadataBuilder::BuildFromEmpty(format_version) - ->SetLocation(location) + ->AssignUUID() + .SetLocation(location) .SetCurrentSchema(std::move(fresh_schema), last_column_id) .SetDefaultPartitionSpec(std::move(fresh_spec)) .SetDefaultSortOrder(std::move(fresh_order)) diff --git a/src/iceberg/test/table_metadata_builder_test.cc b/src/iceberg/test/table_metadata_builder_test.cc index 4146cb01f..68a980b9a 100644 --- a/src/iceberg/test/table_metadata_builder_test.cc +++ b/src/iceberg/test/table_metadata_builder_test.cc @@ -36,6 +36,7 @@ #include "iceberg/test/matchers.h" #include "iceberg/transform.h" #include "iceberg/type.h" +#include "iceberg/util/uuid.h" namespace iceberg { @@ -102,6 +103,7 @@ TEST(TableMetadataTest, Make) { ICEBERG_UNWRAP_OR_FAIL( auto metadata, TableMetadata::Make(*Schema, *spec, *order, "s3://bucket/test", {})); + EXPECT_THAT(Uuid::FromString(metadata->table_uuid), IsOk()); // Check schema fields ASSERT_EQ(1, metadata->schemas.size()); auto fields = metadata->schemas[0]->fields() | std::ranges::to();