diff --git a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/compaction/AbstractCompactionTest.java b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/compaction/AbstractCompactionTest.java index a5503bb9e645c..f738eec1a1d94 100644 --- a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/compaction/AbstractCompactionTest.java +++ b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/compaction/AbstractCompactionTest.java @@ -81,9 +81,10 @@ import java.io.File; import java.io.IOException; import java.util.ArrayList; +import java.util.Comparator; import java.util.HashMap; -import java.util.HashSet; import java.util.LinkedHashMap; +import java.util.LinkedHashSet; import java.util.List; import java.util.Map; import java.util.Set; @@ -844,7 +845,7 @@ protected TsFileResource generateSingleAlignedSeriesFile( protected List getPaths(List resources) throws IOException, IllegalPathException { - Set paths = new HashSet<>(); + Set paths = new LinkedHashSet<>(); try (MultiTsFileDeviceIterator deviceIterator = new MultiTsFileDeviceIterator(resources)) { while (deviceIterator.hasNextDevice()) { Pair iDeviceIDBooleanPair = deviceIterator.nextDevice(); @@ -852,7 +853,10 @@ protected List getPaths(List resources) boolean isAlign = iDeviceIDBooleanPair.getRight(); Map schemaMap = deviceIterator.getAllSchemasOfCurrentDevice(); IMeasurementSchema timeSchema = schemaMap.remove(TsFileConstant.TIME_COLUMN_ID); - List measurementSchemas = new ArrayList<>(schemaMap.values()); + List measurementSchemas = + schemaMap.values().stream() + .sorted(Comparator.comparing(IMeasurementSchema::getMeasurementName)) + .collect(Collectors.toList()); if (measurementSchemas.isEmpty()) { continue; }