This is an automated email from the ASF dual-hosted git repository. jackietien pushed a commit to branch force_ci/object_type in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 60e8c6352c325d67c15c56164405f2f76e03a193 Author: Jiang Tian <[email protected]> AuthorDate: Tue Nov 25 18:12:44 2025 +0800 Fix that settle compaction may lgnore some newly incoming deletions (#16799) * Fix that settle compaction may lgnore some newly incoming deletions * spotless * fix order (cherry picked from commit 0c23da2551fc86f726a99e6d7376b3239c4d389d) --- .../org/apache/iotdb/relational/it/db/it/IoTDBDeletionTableIT.java | 6 +++++- .../dataregion/compaction/execute/task/SettleCompactionTask.java | 4 ++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/integration-test/src/test/java/org/apache/iotdb/relational/it/db/it/IoTDBDeletionTableIT.java b/integration-test/src/test/java/org/apache/iotdb/relational/it/db/it/IoTDBDeletionTableIT.java index d08e26be4f0..3d61b64e71a 100644 --- a/integration-test/src/test/java/org/apache/iotdb/relational/it/db/it/IoTDBDeletionTableIT.java +++ b/integration-test/src/test/java/org/apache/iotdb/relational/it/db/it/IoTDBDeletionTableIT.java @@ -1741,7 +1741,11 @@ public class IoTDBDeletionTableIT { List<TimeRange> ranges = new ArrayList<>(); try (ResultSet set = statement.executeQuery( - "select time from table" + testNum + " where time <= " + timeUpperBound)) { + "select time from table" + + testNum + + " where time <= " + + timeUpperBound + + " order by time")) { while (set.next()) { long time = set.getLong(1); if (ranges.isEmpty()) { diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/compaction/execute/task/SettleCompactionTask.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/compaction/execute/task/SettleCompactionTask.java index 79d6a41025b..7543d56ce80 100644 --- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/compaction/execute/task/SettleCompactionTask.java +++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/compaction/execute/task/SettleCompactionTask.java @@ -138,8 +138,12 @@ public class SettleCompactionTask extends InnerSpaceCompactionTask { new File( allSourceFiles.get(0).getTsFile().getAbsolutePath() + CompactionLogger.SETTLE_COMPACTION_LOG_NAME_SUFFIX); + try (SimpleCompactionLogger compactionLogger = new SimpleCompactionLogger(logFile)) { calculateSourceFilesAndTargetFiles(); + CompactionUtils.prepareCompactionModFiles( + filesView.targetFilesInPerformer, filesView.sourceFilesInCompactionPerformer); + isHoldingWriteLock = new boolean[this.filesView.sourceFilesInLog.size()]; Arrays.fill(isHoldingWriteLock, false); compactionLogger.logSourceFiles(fullyDirtyFiles);
