Skip to content

Commit 143126e

Browse files
committed
[test] Assert file_size propagation in iceberg delete file FE/BE tests
1 parent ac67fc4 commit 143126e

3 files changed

Lines changed: 10 additions & 6 deletions

File tree

be/test/format/table/iceberg/iceberg_delete_file_reader_helper_test.cpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -219,6 +219,9 @@ TEST(IcebergDeleteFileReaderHelperTest, BuildDeleteFileRange) {
219219
EXPECT_EQ(range.start_offset, 0);
220220
EXPECT_EQ(range.size, -1);
221221
EXPECT_EQ(range.file_size, -1);
222+
223+
auto range2 = build_iceberg_delete_file_range("s3://bucket/delete.parquet", 1024);
224+
EXPECT_EQ(range2.file_size, 1024);
222225
}
223226

224227
TEST(IcebergDeleteFileReaderHelperTest, IsDeletionVector) {

fe/fe-connector/fe-connector-iceberg/src/test/java/org/apache/doris/connector/iceberg/IcebergScanPlanProviderTest.java

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4200,14 +4200,11 @@ public void deleteFile(String path) {
42004200

42014201
@Test
42024202
public void deleteFileSizePropagatedFromIcebergManifest() {
4203-
// E2E: iceberg DeleteFile.fileSizeInBytes (482) → IcebergScanPlanProvider →
4204-
// IcebergScanRange.DeleteFile.fileSize → toThrift → TIcebergDeleteFileDesc.file_size
42054203
Table table = createTable("t_filesize", SCHEMA, PartitionSpec.unpartitioned(),
42064204
Collections.singletonMap("format-version", "2"));
42074205
table.newAppend()
42084206
.appendFile(dataFile(table.spec(), "s3://b/db/t_filesize/f1.parquet", 512, null, null))
42094207
.commit();
4210-
// Position delete with fileSizeInBytes=128 (rewritableDeleteDescs includes position deletes)
42114208
DeleteFile posDelete = FileMetadata.deleteFileBuilder(table.spec())
42124209
.ofPositionDeletes()
42134210
.withPath("s3://b/db/t_filesize/pos-delete.parquet")
@@ -4227,9 +4224,6 @@ public void deleteFileSizePropagatedFromIcebergManifest() {
42274224
Assertions.assertEquals(1, ranges.size());
42284225
IcebergScanRange range = (IcebergScanRange) ranges.get(0);
42294226

4230-
// Use rewritableDeleteDescs() (returns TIcebergDeleteFileDesc via toThrift)
4231-
// to verify file_size propagated from iceberg manifest → DeleteFile → toThrift.
4232-
// Note: equality deletes are excluded from rewritableDeleteDescs, so use position delete instead.
42334227
List<TIcebergDeleteFileDesc> descs = range.rewritableDeleteDescs();
42344228
Assertions.assertFalse(descs.isEmpty());
42354229
TIcebergDeleteFileDesc desc = descs.get(0);

fe/fe-connector/fe-connector-iceberg/src/test/java/org/apache/doris/connector/iceberg/IcebergScanRangeTest.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -207,6 +207,9 @@ public void populateRangeParamsV2EmitsPositionDeleteFile() {
207207
Assertions.assertEquals(10L, d.getPositionLowerBound());
208208
Assertions.assertTrue(d.isSetPositionUpperBound());
209209
Assertions.assertEquals(99L, d.getPositionUpperBound());
210+
// file_size is propagated from DeleteFile to TIcebergDeleteFileDesc.
211+
Assertions.assertTrue(d.isSetFileSize());
212+
Assertions.assertEquals(100L, d.getFileSize());
210213
// A position delete carries neither equality field-ids nor a deletion-vector blob ref.
211214
Assertions.assertFalse(d.isSetFieldIds());
212215
Assertions.assertFalse(d.isSetContentOffset());
@@ -255,13 +258,17 @@ public void populateRangeParamsV2EmitsDeletionVectorAndEqualityDelete() {
255258
Assertions.assertEquals(64L, dvDesc.getContentSizeInBytes());
256259
Assertions.assertEquals(5L, dvDesc.getPositionLowerBound());
257260
Assertions.assertEquals(42L, dvDesc.getPositionUpperBound());
261+
Assertions.assertTrue(dvDesc.isSetFileSize());
262+
Assertions.assertEquals(100L, dvDesc.getFileSize());
258263

259264
TIcebergDeleteFileDesc eqDesc = deletes.get(1);
260265
Assertions.assertEquals(2, eqDesc.getContent());
261266
Assertions.assertEquals(Arrays.asList(3, 7), eqDesc.getFieldIds());
262267
Assertions.assertEquals(TFileFormatType.FORMAT_PARQUET, eqDesc.getFileFormat());
263268
Assertions.assertFalse(eqDesc.isSetContentOffset());
264269
Assertions.assertFalse(eqDesc.isSetPositionLowerBound());
270+
Assertions.assertTrue(eqDesc.isSetFileSize());
271+
Assertions.assertEquals(100L, eqDesc.getFileSize());
265272
}
266273

267274
@Test

0 commit comments

Comments
 (0)