Skip to content

Commit 401113e

Browse files
committed
fix
1 parent 61bff97 commit 401113e

File tree

2 files changed

+6
-8
lines changed

2 files changed

+6
-8
lines changed

paimon-common/src/main/java/org/apache/paimon/lookup/sort/db/LsmCompactor.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -313,9 +313,9 @@ private MergeResult mergeSortedRuns(
313313
SstFileMetadata singleFile = group.get(0);
314314
boolean canSkip = !dropTombstones || !singleFile.hasTombstones();
315315
if (canSkip) {
316-
singleFile.setLevel(outputLevel);
317-
outputFiles.add(singleFile);
318-
skippedFileSet.add(singleFile.getFile());
316+
SstFileMetadata promoted = singleFile.withLevel(outputLevel);
317+
outputFiles.add(promoted);
318+
skippedFileSet.add(promoted.getFile());
319319
skippedGroupCount++;
320320
continue;
321321
}

paimon-common/src/main/java/org/apache/paimon/lookup/sort/db/SstFileMetadata.java

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,7 @@ public final class SstFileMetadata {
3434
private final MemorySlice maxKey;
3535
private final long fileSize;
3636
private final long tombstoneCount;
37-
38-
/** The level this file belongs to in the LSM tree. Mutable because compaction reassigns it. */
39-
private int level;
37+
private final int level;
4038

4139
public SstFileMetadata(
4240
File file, MemorySlice minKey, MemorySlice maxKey, long tombstoneCount, int level) {
@@ -78,8 +76,8 @@ public int getLevel() {
7876
return level;
7977
}
8078

81-
public void setLevel(int level) {
82-
this.level = level;
79+
public SstFileMetadata withLevel(int newLevel) {
80+
return new SstFileMetadata(file, minKey, maxKey, fileSize, tombstoneCount, newLevel);
8381
}
8482

8583
public boolean hasTombstones() {

0 commit comments

Comments
 (0)