This is an automated email from the ASF dual-hosted git repository. jackietien pushed a commit to branch ty/TableModelGrammar in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit a6ca9254f3c6c9c66d96397f286f51d3d2fca115 Merge: ba75cf3c06f 9465ac242ef Author: JackieTien97 <[email protected]> AuthorDate: Thu May 30 12:41:54 2024 +0800 resolve conflicts .github/workflows/cluster-it-1c1d.yml | 5 +- .github/workflows/pipe-it-2cluster.yml | 7 +- .github/workflows/unit-test.yml | 2 +- .../it/database/IoTDBDatabaseSetAndDeleteIT.java | 8 +- .../org/apache/iotdb/db/it/IoTDBRestServiceIT.java | 16 +- .../iotdb/db/it/auth/IoTDBSeriesPermissionIT.java | 10 +- .../apache/iotdb/db/it/query/IoTDBResultSetIT.java | 2 + .../iotdb/db/it/schema/IoTDBMetadataFetchIT.java | 35 +- .../pipe/it/autocreate/IoTDBPipeExtractorIT.java | 22 +- .../java/org/apache/iotdb/rpc/TSStatusCode.java | 2 + .../org/apache/iotdb/db/qp/sql/IdentifierParser.g4 | 1 + .../org/apache/iotdb/db/qp/sql/IoTDBSqlParser.g4 | 9 +- .../antlr4/org/apache/iotdb/db/qp/sql/SqlLexer.g4 | 4 + .../confignode/client/DataNodeRequestType.java | 1 + .../consensus/request/ConfigPhysicalPlanType.java | 1 + .../consensus/request/read/ttl/ShowTTLPlan.java} | 34 +- .../request/write/database/SetTTLPlan.java | 52 +- .../consensus/response/ttl/ShowTTLResp.java | 61 + .../iotdb/confignode/manager/ConfigManager.java | 35 +- .../apache/iotdb/confignode/manager/IManager.java | 10 + .../iotdb/confignode/manager/ProcedureManager.java | 15 + .../iotdb/confignode/manager/TTLManager.java | 150 +++ .../iotdb/confignode/manager/node/NodeManager.java | 7 +- .../manager/partition/PartitionManager.java | 5 +- .../pipe/event/PipeConfigRegionSnapshotEvent.java | 9 +- .../PipeConfigPhysicalPlanPatternParseVisitor.java | 8 +- .../receiver/protocol/IoTDBConfigNodeReceiver.java | 6 +- .../manager/schema/ClusterSchemaManager.java | 92 +- .../iotdb/confignode/persistence/TTLInfo.java | 200 ++++ .../persistence/executor/ConfigPlanExecutor.java | 18 +- .../partition/maintainer/RegionCreateTask.java | 29 +- .../schema/CNPhysicalPlanGenerator.java | 35 +- .../persistence/schema/CNSnapshotFileType.java | 3 +- .../persistence/schema/ClusterSchemaInfo.java | 25 - .../confignode/persistence/schema/ConfigMTree.java | 2 - .../schema/ConfignodeSnapshotParser.java | 9 + .../schema/mnode/factory/ConfigMNodeFactory.java | 10 +- .../schema/mnode/info/ConfigDatabaseInfo.java | 10 - .../procedure/env/ConfigNodeProcedureEnv.java | 26 +- .../procedure/env/RegionMaintainHandler.java | 10 - .../impl/region/CreateRegionGroupsProcedure.java | 9 - .../procedure/impl/schema/SetTTLProcedure.java | 189 ++++ .../procedure/state/schema/SetTTLState.java} | 11 +- .../procedure/store/ProcedureFactory.java | 9 + .../confignode/procedure/store/ProcedureType.java | 4 + .../iotdb/confignode/service/ConfigNode.java | 16 +- .../thrift/ConfigNodeRPCServiceProcessor.java | 15 +- .../request/ConfigPhysicalPlanSerDeTest.java | 4 +- ...eConfigPhysicalPlanPatternParseVisitorTest.java | 2 +- .../persistence/CNPhysicalPlanGeneratorTest.java | 117 +- .../confignode/persistence/PartitionInfoTest.java | 2 +- .../iotdb/confignode/persistence/TTLInfoTest.java | 256 +++++ .../persistence/schema/ClusterSchemaInfoTest.java | 1 - .../persistence/schema/ConfigMTreeTest.java | 2 - .../pipe/receiver/PipeEnrichedProcedureTest.java | 33 + .../procedure/impl/schema/SetTTLProcedureTest.java | 68 ++ .../java/org/apache/iotdb/db/conf/IoTDBConfig.java | 46 + .../org/apache/iotdb/db/conf/IoTDBDescriptor.java | 14 + .../iotdb/db/protocol/client/ConfigNodeClient.java | 6 + .../impl/DataNodeInternalRPCServiceImpl.java | 9 +- .../thrift/impl/DataNodeRegionManager.java | 9 +- .../common/header/ColumnHeaderConstant.java | 13 +- .../execution/fragment/QueryContext.java | 15 - .../operator/schema/source/DeviceSchemaSource.java | 7 + .../execution/operator/source/SeriesScanUtil.java | 3 +- .../queryengine/plan/analyze/AnalyzeVisitor.java | 6 + .../plan/analyze/ExpressionAnalyzer.java | 6 +- .../plan/analyze/GroupByLevelHelper.java | 3 +- .../analyze/cache/schema/DataNodeTTLCache.java | 112 ++ .../config/executor/ClusterConfigTaskExecutor.java | 37 +- .../execution/config/metadata/ShowTTLTask.java | 9 +- .../visitor/ExpressionNormalizeVisitor.java | 17 +- .../db/queryengine/plan/parser/ASTVisitor.java | 22 +- .../plan/planner/LocalExecutionPlanContext.java | 10 - .../plan/planner/OperatorTreeGenerator.java | 9 +- .../plan/planner/distribution/SourceRewriter.java | 25 +- .../plan/parameter/AggregationDescriptor.java | 2 +- .../CrossSeriesAggregationDescriptor.java | 4 + .../plan/statement/metadata/SetTTLStatement.java | 14 +- .../statement/metadata/ShowDatabaseStatement.java | 22 +- .../plan/statement/metadata/UnSetTTLStatement.java | 3 +- .../schemaregion/mtree/impl/mem/MemMTreeStore.java | 9 +- .../impl/mem/mnode/factory/MemMNodeFactory.java | 10 +- .../mtree/impl/mem/mnode/impl/DatabaseMNode.java | 6 - .../impl/mem/mnode/info/DatabaseDeviceInfo.java | 16 +- .../mtree/impl/mem/mnode/info/DatabaseInfo.java | 15 +- .../impl/mem/snapshot/MemMTreeSnapshotUtil.java | 2 +- .../pbtree/mnode/factory/CacheMNodeFactory.java | 10 +- .../pbtree/mnode/impl/CachedDatabaseMNode.java | 6 - .../impl/pbtree/schemafile/MockSchemaFile.java | 16 +- .../mtree/impl/pbtree/schemafile/SchemaFile.java | 8 +- .../schemaregion/utils/ResourceByPathUtils.java | 19 +- .../java/org/apache/iotdb/db/service/DataNode.java | 19 +- .../db/service/metrics/CompactionMetrics.java | 151 +++ .../metrics/file/CompactionFileMetrics.java | 2 +- .../iotdb/db/storageengine/StorageEngine.java | 99 +- .../db/storageengine/dataregion/DataRegion.java | 298 +++-- .../dataregion/IDataRegionForQuery.java | 3 - .../dataregion/VirtualDataRegion.java | 5 - .../compaction/constant/CompactionTaskType.java | 4 +- .../performer/impl/FastCompactionPerformer.java | 49 +- .../execute/recover/CompactionRecoverManager.java | 129 ++- .../execute/task/AbstractCompactionTask.java | 68 +- .../execute/task/CrossSpaceCompactionTask.java | 139 ++- .../execute/task/InnerSpaceCompactionTask.java | 320 +++--- .../task/InsertionCrossSpaceCompactionTask.java | 9 +- .../task/RepairUnsortedFileCompactionTask.java | 21 +- .../execute/task/SettleCompactionTask.java | 387 +++++++ .../subtask/FastCompactionPerformerSubTask.java | 23 +- .../execute/utils/CompactionPathUtils.java | 15 +- .../compaction/execute/utils/CompactionUtils.java | 33 +- .../execute/utils/MultiTsFileDeviceIterator.java | 65 +- .../fast/AlignedSeriesCompactionExecutor.java | 5 +- .../fast/NonAlignedSeriesCompactionExecutor.java | 5 +- .../executor/fast/SeriesCompactionExecutor.java | 31 +- .../fast/element/NonAlignedPageElement.java | 2 +- .../execute/utils/log/CompactionLogger.java | 34 + .../execute/utils/log/SimpleCompactionLogger.java | 4 + .../schedule/CompactionScheduleSummary.java | 46 + .../schedule/CompactionScheduleTaskManager.java | 29 +- .../schedule/CompactionScheduleTaskWorker.java | 4 +- .../compaction/schedule/CompactionScheduler.java | 63 +- .../compaction/schedule/CompactionTaskManager.java | 49 +- ...cheduleTaskWorker.java => TTLScheduleTask.java} | 33 +- .../DefaultCompactionTaskComparatorImpl.java | 56 +- .../compaction/selector/ICompactionSelector.java | 6 +- .../ISettleSelector.java} | 16 +- .../selector/impl/SettleSelectorImpl.java | 327 ++++++ .../impl/SizeTieredCompactionSelector.java | 46 +- .../dataregion/memtable/TsFileProcessor.java | 40 +- .../dataregion/read/IQueryDataSource.java | 2 - .../dataregion/read/QueryDataSource.java | 13 - .../read/QueryDataSourceForRegionScan.java | 12 - .../dataregion/tsfile/TsFileResource.java | 98 +- .../tsfile/generator/TsFileNameGenerator.java | 45 + .../tsfile/timeindex/ArrayDeviceTimeIndex.java | 6 + .../dataregion/tsfile/timeindex/FileTimeIndex.java | 6 + .../dataregion/tsfile/timeindex/ITimeIndex.java | 2 + .../dataregion/utils/TsFileResourceUtils.java | 13 + .../utils/validate/TsFileResourceValidator.java | 3 +- .../db/storageengine/rescon/memory/SystemInfo.java | 14 + .../mtree/schemafile/SchemaFileLogTest.java | 2 +- .../metadata/mtree/schemafile/SchemaFileTest.java | 29 +- .../schemaRegion/SchemaStatisticsTest.java | 37 +- .../schema/SchemaQueryScanOperatorTest.java | 7 +- .../builder/EvaluationDAGBuilderTest.java | 1 - .../db/storageengine/dataregion/TTLQueryTest.java | 149 +++ .../iotdb/db/storageengine/dataregion/TTLTest.java | 114 +- .../compaction/AbstractCompactionTest.java | 44 +- .../compaction/CompactionTaskComparatorTest.java | 81 +- .../FastCrossCompactionPerformerTest.java | 47 +- .../ReadPointCompactionPerformerTest.java | 98 +- .../cross/CrossSpaceCompactionExceptionTest.java | 13 +- ...eCompactionWithFastPerformerValidationTest.java | 7 +- ...actionWithReadPointPerformerValidationTest.java | 4 +- .../RewriteCrossSpaceCompactionRecoverTest.java | 15 +- .../inner/FastCompactionPerformerAlignedTest.java | 28 +- .../FastCompactionPerformerNoAlignedTest.java | 28 +- .../InnerSeqCompactionWithFastPerformerTest.java | 13 +- ...nerSeqCompactionWithReadChunkPerformerTest.java | 13 +- .../inner/InnerSpaceCompactionExceptionTest.java | 35 +- .../inner/InnerSpaceCompactionSelectorTest.java | 2 +- .../InnerUnseqCompactionWithFastPerformerTest.java | 5 +- ...rUnseqCompactionWithReadPointPerformerTest.java | 5 +- ...nkCompactionPerformerWithAlignedSeriesTest.java | 49 +- .../ReadChunkCompactionPerformerAlignedTest.java | 28 +- .../ReadChunkCompactionPerformerNoAlignedTest.java | 40 +- .../inner/ReadChunkCompactionPerformerOldTest.java | 5 +- .../SizeTieredCompactionRecoverTest.java | 38 +- .../recover/SizeTieredCompactionRecoverTest.java | 65 +- .../settle/SettleCompactionRecoverTest.java | 1138 +++++++++++++++++++ .../settle/SettleCompactionSelectorTest.java | 1169 ++++++++++++++++++++ .../settle/SettleCompactionTaskTest.java | 478 ++++++++ .../compaction/utils/CompactionConfigRestorer.java | 2 +- .../utils/MultiTsFileDeviceIteratorTest.java | 19 +- .../compaction/utils/TsFileGeneratorUtils.java | 20 +- .../iotdb/db/tools/PBTreeFileSketchTest.java | 2 +- .../resources/conf/iotdb-common.properties | 19 + .../iotdb/commons/concurrent/ThreadName.java | 2 - .../apache/iotdb/commons/conf/CommonConfig.java | 11 + .../iotdb/commons/conf/CommonDescriptor.java | 7 + .../apache/iotdb/commons/conf/IoTDBConstant.java | 2 + .../org/apache/iotdb/commons/path/PartialPath.java | 13 + .../schema/node/common/AbstractDatabaseMNode.java | 10 - .../commons/schema/node/info/IDatabaseInfo.java | 4 - .../commons/schema/node/role/IDatabaseMNode.java | 4 +- .../commons/schema/node/utils/IMNodeFactory.java | 4 +- .../apache/iotdb/commons/schema/ttl/TTLCache.java | 279 +++++ .../utils/ThriftConfigNodeSerDeUtilsTest.java | 1 - .../thrift-commons/src/main/thrift/common.thrift | 3 +- .../src/main/thrift/confignode.thrift | 33 +- .../src/main/thrift/datanode.thrift | 8 +- 192 files changed, 7492 insertions(+), 1851 deletions(-) diff --cc iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/ConfigManager.java index 8e484aa8d5e,8238598e651..5b6caf403af --- a/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/ConfigManager.java +++ b/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/ConfigManager.java @@@ -44,8 -44,7 +44,9 @@@ import org.apache.iotdb.commons.path.Pa import org.apache.iotdb.commons.path.PathPatternUtil; import org.apache.iotdb.commons.pipe.connector.payload.airgap.AirGapPseudoTPipeTransferRequest; import org.apache.iotdb.commons.schema.SchemaConstant; +import org.apache.iotdb.commons.schema.table.TsTable; +import org.apache.iotdb.commons.schema.table.TsTableInternalRPCUtil; + import org.apache.iotdb.commons.schema.ttl.TTLCache; import org.apache.iotdb.commons.service.metric.MetricService; import org.apache.iotdb.commons.utils.AuthUtils; import org.apache.iotdb.commons.utils.PathUtils; diff --cc iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/ProcedureManager.java index aae91b47a48,2a14d9445ad..1df15ebb0e7 --- a/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/ProcedureManager.java +++ b/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/ProcedureManager.java @@@ -74,9 -74,9 +75,10 @@@ import org.apache.iotdb.confignode.proc import org.apache.iotdb.confignode.procedure.impl.schema.DeleteDatabaseProcedure; import org.apache.iotdb.confignode.procedure.impl.schema.DeleteLogicalViewProcedure; import org.apache.iotdb.confignode.procedure.impl.schema.DeleteTimeSeriesProcedure; + import org.apache.iotdb.confignode.procedure.impl.schema.SetTTLProcedure; import org.apache.iotdb.confignode.procedure.impl.schema.SetTemplateProcedure; import org.apache.iotdb.confignode.procedure.impl.schema.UnsetTemplateProcedure; +import org.apache.iotdb.confignode.procedure.impl.schema.table.CreateTableProcedure; import org.apache.iotdb.confignode.procedure.impl.subscription.consumer.CreateConsumerProcedure; import org.apache.iotdb.confignode.procedure.impl.subscription.consumer.DropConsumerProcedure; import org.apache.iotdb.confignode.procedure.impl.subscription.consumer.runtime.ConsumerGroupMetaSyncProcedure; diff --cc iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/node/NodeManager.java index 965ca1e8146,3c3c9358f81..664fd6b2cd5 --- a/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/node/NodeManager.java +++ b/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/node/NodeManager.java @@@ -241,9 -242,7 +242,9 @@@ public class NodeManager runtimeConfiguration.setAllPipeInformation( getPipeManager().getPipePluginCoordinator().getPipePluginTable().getAllPipePluginMeta()); runtimeConfiguration.setAllTTLInformation( - DataNodeRegisterResp.convertAllTTLInformation(getClusterSchemaManager().getAllTTLInfo())); + DataNodeRegisterResp.convertAllTTLInformation(getTTLManager().getAllTTL())); + runtimeConfiguration.setTableInfo( + getClusterSchemaManager().getAllTableInfoForDataNodeActivation()); return runtimeConfiguration; } finally { getTriggerManager().getTriggerInfo().releaseTriggerTableLock(); diff --cc iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/schema/ClusterSchemaManager.java index 31e5400ce2e,181c132032b..8faf8595ab0 --- a/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/schema/ClusterSchemaManager.java +++ b/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/schema/ClusterSchemaManager.java @@@ -28,8 -28,8 +28,9 @@@ import org.apache.iotdb.commons.excepti import org.apache.iotdb.commons.path.PartialPath; import org.apache.iotdb.commons.path.PathPatternTree; import org.apache.iotdb.commons.schema.SchemaConstant; +import org.apache.iotdb.commons.schema.table.TsTableInternalRPCUtil; import org.apache.iotdb.commons.service.metric.MetricService; + import org.apache.iotdb.commons.utils.CommonDateTimeUtils; import org.apache.iotdb.commons.utils.PathUtils; import org.apache.iotdb.commons.utils.StatusUtils; import org.apache.iotdb.confignode.client.DataNodeRequestType; diff --cc iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/persistence/schema/ClusterSchemaInfo.java index 68eab16f576,90dbf1a08e4..db3487c8344 --- a/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/persistence/schema/ClusterSchemaInfo.java +++ b/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/persistence/schema/ClusterSchemaInfo.java @@@ -43,11 -42,7 +43,10 @@@ import org.apache.iotdb.confignode.cons import org.apache.iotdb.confignode.consensus.request.write.database.DeleteDatabasePlan; import org.apache.iotdb.confignode.consensus.request.write.database.SetDataReplicationFactorPlan; import org.apache.iotdb.confignode.consensus.request.write.database.SetSchemaReplicationFactorPlan; - import org.apache.iotdb.confignode.consensus.request.write.database.SetTTLPlan; import org.apache.iotdb.confignode.consensus.request.write.database.SetTimePartitionIntervalPlan; +import org.apache.iotdb.confignode.consensus.request.write.table.CommitCreateTablePlan; +import org.apache.iotdb.confignode.consensus.request.write.table.PreCreateTablePlan; +import org.apache.iotdb.confignode.consensus.request.write.table.RollbackCreateTablePlan; import org.apache.iotdb.confignode.consensus.request.write.template.CommitSetSchemaTemplatePlan; import org.apache.iotdb.confignode.consensus.request.write.template.CreateSchemaTemplatePlan; import org.apache.iotdb.confignode.consensus.request.write.template.DropSchemaTemplatePlan; diff --cc iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/procedure/store/ProcedureFactory.java index 394a76a802d,804f6dcc2a1..30caa199e03 --- a/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/procedure/store/ProcedureFactory.java +++ b/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/procedure/store/ProcedureFactory.java @@@ -43,9 -43,9 +43,10 @@@ import org.apache.iotdb.confignode.proc import org.apache.iotdb.confignode.procedure.impl.schema.DeleteDatabaseProcedure; import org.apache.iotdb.confignode.procedure.impl.schema.DeleteLogicalViewProcedure; import org.apache.iotdb.confignode.procedure.impl.schema.DeleteTimeSeriesProcedure; + import org.apache.iotdb.confignode.procedure.impl.schema.SetTTLProcedure; import org.apache.iotdb.confignode.procedure.impl.schema.SetTemplateProcedure; import org.apache.iotdb.confignode.procedure.impl.schema.UnsetTemplateProcedure; +import org.apache.iotdb.confignode.procedure.impl.schema.table.CreateTableProcedure; import org.apache.iotdb.confignode.procedure.impl.subscription.consumer.AlterConsumerGroupProcedure; import org.apache.iotdb.confignode.procedure.impl.subscription.consumer.CreateConsumerProcedure; import org.apache.iotdb.confignode.procedure.impl.subscription.consumer.DropConsumerProcedure; diff --cc iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/executor/ClusterConfigTaskExecutor.java index a252b3feade,d2e2c1c10b8..2e38747370d --- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/executor/ClusterConfigTaskExecutor.java +++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/executor/ClusterConfigTaskExecutor.java @@@ -255,16 -243,12 +255,16 @@@ import java.nio.file.Paths import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; - import java.util.HashMap; import java.util.List; import java.util.Map; + import java.util.TreeMap; import java.util.stream.Collectors; +import static org.apache.iotdb.commons.schema.SchemaConstant.ALL_MATCH_SCOPE; +import static org.apache.iotdb.commons.schema.SchemaConstant.ALL_RESULT_NODES; import static org.apache.iotdb.db.protocol.client.ConfigNodeClient.MSG_RECONNECTION_FAIL; +import static org.apache.iotdb.db.utils.constant.SqlConstant.ROOT; +import static org.apache.tsfile.common.constant.TsFileConstant.PATH_SEPARATOR_CHAR; public class ClusterConfigTaskExecutor implements IConfigTaskExecutor { diff --cc iotdb-core/datanode/src/main/java/org/apache/iotdb/db/schemaengine/schemaregion/utils/ResourceByPathUtils.java index 5eda80c43c7,d25248af44b..b04421b97e1 --- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/schemaengine/schemaregion/utils/ResourceByPathUtils.java +++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/schemaengine/schemaregion/utils/ResourceByPathUtils.java @@@ -238,10 -237,12 +241,13 @@@ class AlignedResourceByPathUtils extend @Override public List<IChunkMetadata> getVisibleMetadataListFromWriter( - RestorableTsFileIOWriter writer, TsFileResource tsFileResource, QueryContext context) { + RestorableTsFileIOWriter writer, + TsFileResource tsFileResource, + QueryContext context, + long timeLowerBound) { List<List<Modification>> modifications = - context.getPathModifications(tsFileResource, partialPath); + context.getPathModifications( + tsFileResource, alignedFullPath.getDeviceId(), alignedFullPath.getMeasurementList()); List<AlignedChunkMetadata> chunkMetadataList = new ArrayList<>(); List<ChunkMetadata> timeChunkMetadataList = @@@ -362,20 -358,21 +368,23 @@@ class MeasurementResourceByPathUtils ex @Override public List<IChunkMetadata> getVisibleMetadataListFromWriter( - RestorableTsFileIOWriter writer, TsFileResource tsFileResource, QueryContext context) { + RestorableTsFileIOWriter writer, + TsFileResource tsFileResource, + QueryContext context, + long timeLowerBound) { - List<Modification> modifications = context.getPathModifications(tsFileResource, partialPath); + List<Modification> modifications = + context.getPathModifications( + tsFileResource, fullPath.getDeviceId(), fullPath.getMeasurement()); List<IChunkMetadata> chunkMetadataList = new ArrayList<>( writer.getVisibleMetadataList( - partialPath.getIDeviceID(), - partialPath.getMeasurement(), - partialPath.getSeriesType())); + fullPath.getDeviceId(), + fullPath.getMeasurement(), + fullPath.getMeasurementSchema().getType())); ModificationUtils.modifyChunkMetaData(chunkMetadataList, modifications); - chunkMetadataList.removeIf(context::chunkNotSatisfy); + chunkMetadataList.removeIf(x -> x.getEndTime() < timeLowerBound); return chunkMetadataList; } } diff --cc iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/DataRegion.java index 0842be7a970,70a2b308b5d..24d60d3736e --- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/DataRegion.java +++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/DataRegion.java @@@ -1861,58 -1805,9 +1805,9 @@@ public class DataRegion implements IDat } } - /** - * @param tsFileResources includes sealed and unsealed tsfile resources - * @return fill unsealed tsfile resources with memory data and ChunkMetadataList of data in disk - */ - private List<TsFileResource> getFileResourceListForQuery( - Collection<TsFileResource> tsFileResources, - List<IFullPath> pathList, - IDeviceID singleDeviceId, - QueryContext context, - Filter globalTimeFilter, - boolean isSeq) - throws MetadataException { - - if (context.isDebug()) { - DEBUG_LOGGER.info( - "Path: {}, get tsfile list: {} isSeq: {} timefilter: {}", - pathList, - tsFileResources, - isSeq, - (globalTimeFilter == null ? "null" : globalTimeFilter)); - } - - List<TsFileResource> tsFileResourcesForQuery = new ArrayList<>(); - - long timeLowerBound = - dataTTL != Long.MAX_VALUE ? CommonDateTimeUtils.currentTime() - dataTTL : Long.MIN_VALUE; - context.setQueryTimeLowerBound(timeLowerBound); - - for (TsFileResource tsFileResource : tsFileResources) { - if (!tsFileResource.isSatisfied( - singleDeviceId, globalTimeFilter, isSeq, dataTTL, context.isDebug())) { - continue; - } - closeQueryLock.readLock().lock(); - try { - if (tsFileResource.isClosed()) { - tsFileResourcesForQuery.add(tsFileResource); - } else { - tsFileResource.getProcessor().query(pathList, context, tsFileResourcesForQuery); - } - } catch (IOException e) { - throw new MetadataException(e); - } finally { - closeQueryLock.readLock().unlock(); - } - } - return tsFileResourcesForQuery; - } - @Override public IQueryDataSource queryForSeriesRegionScan( - List<PartialPath> pathList, + List<IFullPath> pathList, QueryContext queryContext, Filter globalTimeFilter, List<Long> timePartitions) @@@ -2078,6 -1961,54 +1961,50 @@@ insertLock.writeLock().unlock(); } + /** + * @param tsFileResources includes sealed and unsealed tsfile resources + * @return fill unsealed tsfile resources with memory data and ChunkMetadataList of data in disk + */ + private List<TsFileResource> getFileResourceListForQuery( + Collection<TsFileResource> tsFileResources, - List<PartialPath> pathList, - String singleDeviceId, ++ List<IFullPath> pathList, ++ IDeviceID singleDeviceId, + QueryContext context, + Filter globalTimeFilter, + boolean isSeq) + throws MetadataException { + + if (context.isDebug()) { + DEBUG_LOGGER.info( + "Path: {}, get tsfile list: {} isSeq: {} timefilter: {}", + pathList, + tsFileResources, + isSeq, + (globalTimeFilter == null ? "null" : globalTimeFilter)); + } + + List<TsFileResource> tsfileResourcesForQuery = new ArrayList<>(); + + for (TsFileResource tsFileResource : tsFileResources) { - if (!tsFileResource.isSatisfied( - singleDeviceId == null ? null : new PlainDeviceID(singleDeviceId), - globalTimeFilter, - isSeq, - context.isDebug())) { ++ if (!tsFileResource.isSatisfied(singleDeviceId, globalTimeFilter, isSeq, context.isDebug())) { + continue; + } + closeQueryLock.readLock().lock(); + try { + if (tsFileResource.isClosed()) { + tsfileResourcesForQuery.add(tsFileResource); + } else { + tsFileResource.getProcessor().query(pathList, context, tsfileResourcesForQuery); + } + } catch (IOException e) { + throw new MetadataException(e); + } finally { + closeQueryLock.readLock().unlock(); + } + } + return tsfileResourcesForQuery; + } + /** Seperate tsfiles in TsFileManager to sealedList and unsealedList. */ private void separateTsFile( List<TsFileResource> sealedResource, diff --cc iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/compaction/execute/performer/impl/FastCompactionPerformer.java index ccf5c4438ab,09d24e45f20..d4f0bdad39b --- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/compaction/execute/performer/impl/FastCompactionPerformer.java +++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/compaction/execute/performer/impl/FastCompactionPerformer.java @@@ -114,9 -118,8 +120,11 @@@ public class FastCompactionPerforme isCrossCompaction ? new FastCrossCompactionWriter(targetFiles, seqFiles, readerCacheMap) : new FastInnerCompactionWriter(targetFiles.get(0))) { + List<Schema> schemas = + CompactionTableSchemaCollector.collectSchema(seqFiles, unseqFiles, readerCacheMap); + compactionWriter.setSchemaForAllTargetFile(schemas); + readModification(seqFiles); + readModification(unseqFiles); while (deviceIterator.hasNextDevice()) { checkThreadInterrupted(); Pair<IDeviceID, Boolean> deviceInfo = deviceIterator.nextDevice(); diff --cc iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/compaction/execute/utils/CompactionPathUtils.java index af135faa715,20de56d10fd..53ba6680c24 --- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/compaction/execute/utils/CompactionPathUtils.java +++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/compaction/execute/utils/CompactionPathUtils.java @@@ -25,7 -25,10 +25,9 @@@ import org.apache.iotdb.db.queryengine. import org.apache.tsfile.common.constant.TsFileConstant; import org.apache.tsfile.file.metadata.IDeviceID; -import org.apache.tsfile.file.metadata.PlainDeviceID; + import static org.apache.tsfile.common.constant.TsFileConstant.PATH_SEPARATER_NO_REGEX; + public class CompactionPathUtils { private CompactionPathUtils() {} @@@ -37,8 -40,19 +39,19 @@@ if (plainDeviceId.contains(TsFileConstant.BACK_QUOTE_STRING)) { path = DataNodeDevicePathCache.getInstance().getPartialPath(plainDeviceId); } else { - path = new PartialPath(device.toString().split("\\.")); - path = new PartialPath(((PlainDeviceID) device).toStringID().split(PATH_SEPARATER_NO_REGEX)); ++ path = new PartialPath(device.toString().split(PATH_SEPARATER_NO_REGEX)); } return path.concatNode(measurement); } + + public static PartialPath getPath(IDeviceID device) throws IllegalPathException { + PartialPath path; - String plainDeviceId = ((PlainDeviceID) device).toStringID(); ++ String plainDeviceId = device.toString(); + if (plainDeviceId.contains(TsFileConstant.BACK_QUOTE_STRING)) { + path = DataNodeDevicePathCache.getInstance().getPartialPath(plainDeviceId); + } else { - path = new PartialPath(((PlainDeviceID) device).toStringID().split(PATH_SEPARATER_NO_REGEX)); ++ path = new PartialPath(device.toString().split(PATH_SEPARATER_NO_REGEX)); + } + return path; + } } diff --cc iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/TsFileProcessor.java index 98f4f528fd8,29187978710..1e7d3c58002 --- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/TsFileProcessor.java +++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/TsFileProcessor.java @@@ -24,9 -24,9 +24,10 @@@ import org.apache.iotdb.commons.conf.Co import org.apache.iotdb.commons.exception.IllegalPathException; import org.apache.iotdb.commons.exception.MetadataException; import org.apache.iotdb.commons.path.AlignedPath; +import org.apache.iotdb.commons.path.IFullPath; import org.apache.iotdb.commons.path.PartialPath; import org.apache.iotdb.commons.service.metric.PerformanceOverviewMetrics; + import org.apache.iotdb.commons.utils.CommonDateTimeUtils; import org.apache.iotdb.commons.utils.TestOnly; import org.apache.iotdb.db.conf.IoTDBConfig; import org.apache.iotdb.db.conf.IoTDBDescriptor; @@@ -1776,9 -1783,10 +1779,10 @@@ public class TsFileProcessor new HashMap<>(); flushQueryLock.readLock().lock(); try { - for (PartialPath seriesPath : pathList) { + for (IFullPath seriesPath : pathList) { Map<String, List<IChunkMetadata>> measurementToChunkMetaList = new HashMap<>(); Map<String, List<IChunkHandle>> measurementToChunkHandleList = new HashMap<>(); + long timeLowerBound = getQueryTimeLowerBound(seriesPath.getDevice()); for (IMemTable flushingMemTable : flushingMemTables) { if (flushingMemTable.isSignalMemTable()) { continue; @@@ -1948,8 -1959,9 +1954,9 @@@ flushQueryLock.readLock().lock(); try { - for (PartialPath seriesPath : seriesPaths) { + for (IFullPath seriesPath : seriesPaths) { List<ReadOnlyMemChunk> readOnlyMemChunks = new ArrayList<>(); + long timeLowerBound = getQueryTimeLowerBound(seriesPath.getDevice()); for (IMemTable flushingMemTable : flushingMemTables) { if (flushingMemTable.isSignalMemTable()) { continue; diff --cc iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/tsfile/timeindex/ArrayDeviceTimeIndex.java index 9b105b0bf20,6b36f9ae56e..86a610063d7 --- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/tsfile/timeindex/ArrayDeviceTimeIndex.java +++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/tsfile/timeindex/ArrayDeviceTimeIndex.java @@@ -21,8 -21,10 +21,9 @@@ package org.apache.iotdb.db.storageengi import org.apache.iotdb.commons.exception.IllegalPathException; import org.apache.iotdb.commons.path.PartialPath; + import org.apache.iotdb.commons.utils.CommonDateTimeUtils; import org.apache.iotdb.commons.utils.TimePartitionUtils; import org.apache.iotdb.db.exception.PartitionViolationException; -import org.apache.iotdb.db.queryengine.plan.analyze.cache.schema.DataNodeDevicePathCache; import org.apache.iotdb.db.storageengine.dataregion.tsfile.TsFileResource; import org.apache.tsfile.file.metadata.IDeviceID; diff --cc iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/TTLTest.java index 36476af4b41,51334eb92b2..37fb0870328 --- a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/TTLTest.java +++ b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/TTLTest.java @@@ -25,8 -25,9 +25,9 @@@ import org.apache.iotdb.commons.conf.Io import org.apache.iotdb.commons.consensus.DataRegionId; import org.apache.iotdb.commons.exception.IllegalPathException; import org.apache.iotdb.commons.exception.MetadataException; -import org.apache.iotdb.commons.path.MeasurementPath; +import org.apache.iotdb.commons.path.NonAlignedFullPath; import org.apache.iotdb.commons.path.PartialPath; + import org.apache.iotdb.commons.schema.ttl.TTLCache; import org.apache.iotdb.db.conf.IoTDBDescriptor; import org.apache.iotdb.db.exception.DataRegionException; import org.apache.iotdb.db.exception.StorageEngineException; @@@ -200,9 -205,9 +206,10 @@@ public class TTLTest null); seqResource = dataSource.getSeqResources(); unseqResource = dataSource.getUnseqResources(); - assertTrue(seqResource.size() < 4); - assertEquals(0, unseqResource.size()); ++ + assertEquals(4, seqResource.size()); + assertEquals(4, unseqResource.size()); - MeasurementPath path = mockMeasurementPath(); + NonAlignedFullPath path = mockMeasurementPath(); IDataBlockReader reader = new SeriesDataBlockReader( @@@ -231,13 -236,30 +238,30 @@@ null); seqResource = dataSource.getSeqResources(); unseqResource = dataSource.getUnseqResources(); - assertEquals(0, seqResource.size()); - assertEquals(0, unseqResource.size()); + assertEquals(4, seqResource.size()); + assertEquals(4, unseqResource.size()); + + reader = + new SeriesDataBlockReader( + path, + FragmentInstanceContext.createFragmentInstanceContextForCompaction(TEST_QUERY_JOB_ID), + seqResource, + unseqResource, + true); + + cnt = 0; + while (reader.hasNextBatch()) { + TsBlock tsblock = reader.nextBatch(); + cnt += tsblock.getPositionCount(); + } + reader.close(); + // we cannot offer the exact number since when exactly ttl will be checked is unknown + assertTrue(cnt == 0); } - private MeasurementPath mockMeasurementPath() throws MetadataException { - return new MeasurementPath( - new PartialPath(sg1 + TsFileConstant.PATH_SEPARATOR + s1), + private NonAlignedFullPath mockMeasurementPath() { + return new NonAlignedFullPath( + IDeviceID.Factory.DEFAULT_FACTORY.create(sg1), new MeasurementSchema( s1, TSDataType.INT64, diff --cc iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/compaction/FastCrossCompactionPerformerTest.java index 369c22f0cfc,483363f6ec5..cc9978a8717 --- a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/compaction/FastCrossCompactionPerformerTest.java +++ b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/compaction/FastCrossCompactionPerformerTest.java @@@ -267,13 -270,11 +268,13 @@@ public class FastCrossCompactionPerform performer.perform(); Assert.assertEquals(0, FileReaderManager.getInstance().getClosedFileReaderMap().size()); Assert.assertEquals(0, FileReaderManager.getInstance().getUnclosedFileReaderMap().size()); - CompactionUtils.moveTargetFile(targetResources, false, COMPACTION_TEST_SG); + CompactionUtils.moveTargetFile(targetResources, CompactionTaskType.CROSS, COMPACTION_TEST_SG); List<IDeviceID> deviceIdList = new ArrayList<>(); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d0")); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d1")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d0")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d1")); for (int i = 0; i < 2; i++) { Assert.assertTrue( targetResources @@@ -499,13 -482,11 +500,13 @@@ performer.perform(); Assert.assertEquals(0, FileReaderManager.getInstance().getClosedFileReaderMap().size()); Assert.assertEquals(0, FileReaderManager.getInstance().getUnclosedFileReaderMap().size()); - CompactionUtils.moveTargetFile(targetResources, false, COMPACTION_TEST_SG); + CompactionUtils.moveTargetFile(targetResources, CompactionTaskType.CROSS, COMPACTION_TEST_SG); List<IDeviceID> deviceIdList = new ArrayList<>(); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d0")); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d1")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d0")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d1")); for (int i = 0; i < 2; i++) { Assert.assertTrue( targetResources @@@ -728,11 -691,10 +729,11 @@@ performer.perform(); Assert.assertEquals(0, FileReaderManager.getInstance().getClosedFileReaderMap().size()); Assert.assertEquals(0, FileReaderManager.getInstance().getUnclosedFileReaderMap().size()); - CompactionUtils.moveTargetFile(targetResources, false, COMPACTION_TEST_SG); + CompactionUtils.moveTargetFile(targetResources, CompactionTaskType.CROSS, COMPACTION_TEST_SG); List<IDeviceID> deviceIdList = new ArrayList<>(); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d1")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d1")); for (int i = 0; i < 2; i++) { Assert.assertFalse( targetResources @@@ -2531,19 -2335,14 +2532,19 @@@ performer.perform(); Assert.assertEquals(0, FileReaderManager.getInstance().getClosedFileReaderMap().size()); Assert.assertEquals(0, FileReaderManager.getInstance().getUnclosedFileReaderMap().size()); - CompactionUtils.moveTargetFile(targetResources, false, COMPACTION_TEST_SG); + CompactionUtils.moveTargetFile(targetResources, CompactionTaskType.CROSS, COMPACTION_TEST_SG); List<IDeviceID> deviceIdList = new ArrayList<>(); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d0")); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d1")); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d2")); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d3")); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d4")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d0")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d1")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d2")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d3")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d4")); for (int i = 0; i < 3; i++) { if (i == 0) { Assert.assertTrue( @@@ -2737,19 -2506,14 +2738,19 @@@ performer.perform(); Assert.assertEquals(0, FileReaderManager.getInstance().getClosedFileReaderMap().size()); Assert.assertEquals(0, FileReaderManager.getInstance().getUnclosedFileReaderMap().size()); - CompactionUtils.moveTargetFile(targetResources, false, COMPACTION_TEST_SG); + CompactionUtils.moveTargetFile(targetResources, CompactionTaskType.CROSS, COMPACTION_TEST_SG); List<IDeviceID> deviceIdList = new ArrayList<>(); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d0")); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d1")); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d2")); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d3")); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d4")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d0")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d1")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d2")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d3")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d4")); for (int i = 0; i < 3; i++) { Assert.assertTrue( targetResources @@@ -2882,17 -2636,13 +2883,17 @@@ performer.perform(); Assert.assertEquals(0, FileReaderManager.getInstance().getClosedFileReaderMap().size()); Assert.assertEquals(0, FileReaderManager.getInstance().getUnclosedFileReaderMap().size()); - CompactionUtils.moveTargetFile(targetResources, false, COMPACTION_TEST_SG); + CompactionUtils.moveTargetFile(targetResources, CompactionTaskType.CROSS, COMPACTION_TEST_SG); List<IDeviceID> deviceIdList = new ArrayList<>(); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d0")); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d1")); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d2")); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d3")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d0")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d1")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d2")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d3")); for (int i = 0; i < 3; i++) { if (i < 2) { Assert.assertTrue( @@@ -3057,17 -2791,13 +3058,17 @@@ performer.perform(); Assert.assertEquals(0, FileReaderManager.getInstance().getClosedFileReaderMap().size()); Assert.assertEquals(0, FileReaderManager.getInstance().getUnclosedFileReaderMap().size()); - CompactionUtils.moveTargetFile(targetResources, false, COMPACTION_TEST_SG); + CompactionUtils.moveTargetFile(targetResources, CompactionTaskType.CROSS, COMPACTION_TEST_SG); List<IDeviceID> deviceIdList = new ArrayList<>(); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d0")); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d1")); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d2")); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d3")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d0")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d1")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d2")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d3")); for (int i = 0; i < 3; i++) { if (i < 2) { Assert.assertTrue( diff --cc iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/compaction/ReadPointCompactionPerformerTest.java index c7b0075da66,f46813aada0..a4f461a397c --- a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/compaction/ReadPointCompactionPerformerTest.java +++ b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/compaction/ReadPointCompactionPerformerTest.java @@@ -2096,13 -2072,11 +2112,13 @@@ public class ReadPointCompactionPerform performer.perform(); Assert.assertEquals(0, FileReaderManager.getInstance().getClosedFileReaderMap().size()); Assert.assertEquals(0, FileReaderManager.getInstance().getUnclosedFileReaderMap().size()); - CompactionUtils.moveTargetFile(targetResources, false, COMPACTION_TEST_SG); + CompactionUtils.moveTargetFile(targetResources, CompactionTaskType.CROSS, COMPACTION_TEST_SG); List<IDeviceID> deviceIdList = new ArrayList<>(); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d0")); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d1")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d0")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d1")); for (int i = 0; i < 2; i++) { Assert.assertTrue( targetResources @@@ -2322,13 -2278,11 +2338,13 @@@ performer.perform(); Assert.assertEquals(0, FileReaderManager.getInstance().getClosedFileReaderMap().size()); Assert.assertEquals(0, FileReaderManager.getInstance().getUnclosedFileReaderMap().size()); - CompactionUtils.moveTargetFile(targetResources, false, COMPACTION_TEST_SG); + CompactionUtils.moveTargetFile(targetResources, CompactionTaskType.CROSS, COMPACTION_TEST_SG); List<IDeviceID> deviceIdList = new ArrayList<>(); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d0")); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d1")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d0")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d1")); for (int i = 0; i < 2; i++) { Assert.assertTrue( targetResources @@@ -2554,13 -2490,11 +2570,13 @@@ performer.perform(); Assert.assertEquals(0, FileReaderManager.getInstance().getClosedFileReaderMap().size()); Assert.assertEquals(0, FileReaderManager.getInstance().getUnclosedFileReaderMap().size()); - CompactionUtils.moveTargetFile(targetResources, false, COMPACTION_TEST_SG); + CompactionUtils.moveTargetFile(targetResources, CompactionTaskType.CROSS, COMPACTION_TEST_SG); List<IDeviceID> deviceIdList = new ArrayList<>(); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d0")); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d1")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d0")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d1")); for (int i = 0; i < 2; i++) { Assert.assertTrue( targetResources @@@ -2783,11 -2699,10 +2799,11 @@@ performer.perform(); Assert.assertEquals(0, FileReaderManager.getInstance().getClosedFileReaderMap().size()); Assert.assertEquals(0, FileReaderManager.getInstance().getUnclosedFileReaderMap().size()); - CompactionUtils.moveTargetFile(targetResources, false, COMPACTION_TEST_SG); + CompactionUtils.moveTargetFile(targetResources, CompactionTaskType.CROSS, COMPACTION_TEST_SG); List<IDeviceID> deviceIdList = new ArrayList<>(); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d1")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d1")); for (int i = 0; i < 2; i++) { Assert.assertFalse( targetResources @@@ -4312,19 -4125,14 +4328,19 @@@ performer.perform(); Assert.assertEquals(0, FileReaderManager.getInstance().getClosedFileReaderMap().size()); Assert.assertEquals(0, FileReaderManager.getInstance().getUnclosedFileReaderMap().size()); - CompactionUtils.moveTargetFile(targetResources, false, COMPACTION_TEST_SG); + CompactionUtils.moveTargetFile(targetResources, CompactionTaskType.CROSS, COMPACTION_TEST_SG); List<IDeviceID> deviceIdList = new ArrayList<>(); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d0")); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d1")); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d2")); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d3")); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d4")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d0")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d1")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d2")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d3")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d4")); for (int i = 0; i < 3; i++) { if (i == 0) { Assert.assertTrue( @@@ -4517,19 -4295,14 +4533,19 @@@ performer.perform(); Assert.assertEquals(0, FileReaderManager.getInstance().getClosedFileReaderMap().size()); Assert.assertEquals(0, FileReaderManager.getInstance().getUnclosedFileReaderMap().size()); - CompactionUtils.moveTargetFile(targetResources, false, COMPACTION_TEST_SG); + CompactionUtils.moveTargetFile(targetResources, CompactionTaskType.CROSS, COMPACTION_TEST_SG); List<IDeviceID> deviceIdList = new ArrayList<>(); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d0")); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d1")); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d2")); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d3")); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d4")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d0")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d1")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d2")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d3")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d4")); for (int i = 0; i < 3; i++) { Assert.assertTrue( targetResources @@@ -4662,17 -4425,13 +4678,17 @@@ performer.perform(); Assert.assertEquals(0, FileReaderManager.getInstance().getClosedFileReaderMap().size()); Assert.assertEquals(0, FileReaderManager.getInstance().getUnclosedFileReaderMap().size()); - CompactionUtils.moveTargetFile(targetResources, false, COMPACTION_TEST_SG); + CompactionUtils.moveTargetFile(targetResources, CompactionTaskType.CROSS, COMPACTION_TEST_SG); List<IDeviceID> deviceIdList = new ArrayList<>(); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d0")); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d1")); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d2")); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d3")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d0")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d1")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d2")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d3")); for (int i = 0; i < 3; i++) { if (i < 2) { Assert.assertTrue( @@@ -4838,17 -4581,13 +4854,17 @@@ performer.perform(); Assert.assertEquals(0, FileReaderManager.getInstance().getClosedFileReaderMap().size()); Assert.assertEquals(0, FileReaderManager.getInstance().getUnclosedFileReaderMap().size()); - CompactionUtils.moveTargetFile(targetResources, false, COMPACTION_TEST_SG); + CompactionUtils.moveTargetFile(targetResources, CompactionTaskType.CROSS, COMPACTION_TEST_SG); List<IDeviceID> deviceIdList = new ArrayList<>(); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d0")); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d1")); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d2")); - deviceIdList.add(new PlainDeviceID(COMPACTION_TEST_SG + PATH_SEPARATOR + "d3")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d0")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d1")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d2")); + deviceIdList.add( + IDeviceID.Factory.DEFAULT_FACTORY.create(COMPACTION_TEST_SG + PATH_SEPARATOR + "d3")); for (int i = 0; i < 3; i++) { if (i < 2) { Assert.assertTrue( diff --cc iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/compaction/inner/FastCompactionPerformerAlignedTest.java index f1034c195dc,4d6d09e60c3..72a97966a5f --- a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/compaction/inner/FastCompactionPerformerAlignedTest.java +++ b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/compaction/inner/FastCompactionPerformerAlignedTest.java @@@ -147,9 -145,11 +148,11 @@@ public class FastCompactionPerformerAli performer.setTargetFiles(Collections.singletonList(targetResource)); performer.setSummary(new FastCompactionTaskSummary()); performer.perform(); - CompactionUtils.moveTargetFile(Collections.singletonList(targetResource), true, storageGroup); - CompactionUtils.moveTargetFile(Collections.singletonList(targetResource), true, storageGroup); + CompactionUtils.moveTargetFile( + Collections.singletonList(targetResource), CompactionTaskType.INNER_SEQ, storageGroup); + CompactionUtils.moveTargetFile( + Collections.singletonList(targetResource), CompactionTaskType.INNER_SEQ, storageGroup); - Map<PartialPath, List<TimeValuePair>> compactedData = + Map<IFullPath, List<TimeValuePair>> compactedData = CompactionCheckerUtils.getDataByQuery( fullPaths, iMeasurementSchemas, @@@ -223,8 -221,9 +226,9 @@@ performer.setTargetFiles(Collections.singletonList(targetResource)); performer.setSummary(new FastCompactionTaskSummary()); performer.perform(); - CompactionUtils.moveTargetFile(Collections.singletonList(targetResource), true, storageGroup); + CompactionUtils.moveTargetFile( + Collections.singletonList(targetResource), CompactionTaskType.INNER_SEQ, storageGroup); - Map<PartialPath, List<TimeValuePair>> compactedData = + Map<IFullPath, List<TimeValuePair>> compactedData = CompactionCheckerUtils.getDataByQuery( fullPaths, iMeasurementSchemas, @@@ -292,8 -289,9 +296,9 @@@ performer.setTargetFiles(Collections.singletonList(targetResource)); performer.setSummary(new FastCompactionTaskSummary()); performer.perform(); - CompactionUtils.moveTargetFile(Collections.singletonList(targetResource), true, storageGroup); + CompactionUtils.moveTargetFile( + Collections.singletonList(targetResource), CompactionTaskType.INNER_SEQ, storageGroup); - Map<PartialPath, List<TimeValuePair>> compactedData = + Map<IFullPath, List<TimeValuePair>> compactedData = CompactionCheckerUtils.getDataByQuery( fullPaths, iMeasurementSchemas, @@@ -364,8 -360,9 +369,9 @@@ performer.setTargetFiles(Collections.singletonList(targetResource)); performer.setSummary(new FastCompactionTaskSummary()); performer.perform(); - CompactionUtils.moveTargetFile(Collections.singletonList(targetResource), true, storageGroup); + CompactionUtils.moveTargetFile( + Collections.singletonList(targetResource), CompactionTaskType.INNER_SEQ, storageGroup); - Map<PartialPath, List<TimeValuePair>> compactedData = + Map<IFullPath, List<TimeValuePair>> compactedData = CompactionCheckerUtils.getDataByQuery( fullPaths, iMeasurementSchemas, @@@ -434,8 -429,9 +440,9 @@@ performer.setTargetFiles(Collections.singletonList(targetResource)); performer.setSummary(new FastCompactionTaskSummary()); performer.perform(); - CompactionUtils.moveTargetFile(Collections.singletonList(targetResource), true, storageGroup); + CompactionUtils.moveTargetFile( + Collections.singletonList(targetResource), CompactionTaskType.INNER_SEQ, storageGroup); - Map<PartialPath, List<TimeValuePair>> compactedData = + Map<IFullPath, List<TimeValuePair>> compactedData = CompactionCheckerUtils.getDataByQuery( fullPaths, iMeasurementSchemas, @@@ -506,8 -500,9 +513,9 @@@ performer.setTargetFiles(Collections.singletonList(targetResource)); performer.setSummary(new FastCompactionTaskSummary()); performer.perform(); - CompactionUtils.moveTargetFile(Collections.singletonList(targetResource), true, storageGroup); + CompactionUtils.moveTargetFile( + Collections.singletonList(targetResource), CompactionTaskType.INNER_SEQ, storageGroup); - Map<PartialPath, List<TimeValuePair>> compactedData = + Map<IFullPath, List<TimeValuePair>> compactedData = CompactionCheckerUtils.getDataByQuery( fullPaths, iMeasurementSchemas, @@@ -579,8 -572,9 +587,9 @@@ performer.setTargetFiles(Collections.singletonList(targetResource)); performer.setSummary(new FastCompactionTaskSummary()); performer.perform(); - CompactionUtils.moveTargetFile(Collections.singletonList(targetResource), true, storageGroup); + CompactionUtils.moveTargetFile( + Collections.singletonList(targetResource), CompactionTaskType.INNER_SEQ, storageGroup); - Map<PartialPath, List<TimeValuePair>> compactedData = + Map<IFullPath, List<TimeValuePair>> compactedData = CompactionCheckerUtils.getDataByQuery( fullPaths, iMeasurementSchemas, @@@ -663,8 -655,9 +672,9 @@@ performer.setTargetFiles(Collections.singletonList(targetResource)); performer.setSummary(new FastCompactionTaskSummary()); performer.perform(); - CompactionUtils.moveTargetFile(Collections.singletonList(targetResource), true, storageGroup); + CompactionUtils.moveTargetFile( + Collections.singletonList(targetResource), CompactionTaskType.INNER_SEQ, storageGroup); - Map<PartialPath, List<TimeValuePair>> compactedData = + Map<IFullPath, List<TimeValuePair>> compactedData = CompactionCheckerUtils.getDataByQuery( fullPaths, iMeasurementSchemas, diff --cc iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/compaction/inner/ReadChunkCompactionPerformerAlignedTest.java index cb6ee91c14e,03a313f3ea7..65956b9d23d --- a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/compaction/inner/ReadChunkCompactionPerformerAlignedTest.java +++ b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/compaction/inner/ReadChunkCompactionPerformerAlignedTest.java @@@ -153,9 -151,11 +154,11 @@@ public class ReadChunkCompactionPerform performer.setTargetFiles(Collections.singletonList(targetResource)); performer.setSummary(new CompactionTaskSummary()); performer.perform(); - CompactionUtils.moveTargetFile(Collections.singletonList(targetResource), true, storageGroup); - CompactionUtils.moveTargetFile(Collections.singletonList(targetResource), true, storageGroup); + CompactionUtils.moveTargetFile( + Collections.singletonList(targetResource), CompactionTaskType.INNER_SEQ, storageGroup); + CompactionUtils.moveTargetFile( + Collections.singletonList(targetResource), CompactionTaskType.INNER_SEQ, storageGroup); - Map<PartialPath, List<TimeValuePair>> compactedData = + Map<IFullPath, List<TimeValuePair>> compactedData = CompactionCheckerUtils.getDataByQuery( fullPaths, iMeasurementSchemas, @@@ -229,8 -227,9 +232,9 @@@ performer.setTargetFiles(Collections.singletonList(targetResource)); performer.setSummary(new CompactionTaskSummary()); performer.perform(); - CompactionUtils.moveTargetFile(Collections.singletonList(targetResource), true, storageGroup); + CompactionUtils.moveTargetFile( + Collections.singletonList(targetResource), CompactionTaskType.INNER_SEQ, storageGroup); - Map<PartialPath, List<TimeValuePair>> compactedData = + Map<IFullPath, List<TimeValuePair>> compactedData = CompactionCheckerUtils.getDataByQuery( fullPaths, iMeasurementSchemas, @@@ -298,8 -295,9 +302,9 @@@ performer.setTargetFiles(Collections.singletonList(targetResource)); performer.setSummary(new CompactionTaskSummary()); performer.perform(); - CompactionUtils.moveTargetFile(Collections.singletonList(targetResource), true, storageGroup); + CompactionUtils.moveTargetFile( + Collections.singletonList(targetResource), CompactionTaskType.INNER_SEQ, storageGroup); - Map<PartialPath, List<TimeValuePair>> compactedData = + Map<IFullPath, List<TimeValuePair>> compactedData = CompactionCheckerUtils.getDataByQuery( fullPaths, iMeasurementSchemas, @@@ -370,8 -366,9 +375,9 @@@ performer.setTargetFiles(Collections.singletonList(targetResource)); performer.setSummary(new CompactionTaskSummary()); performer.perform(); - CompactionUtils.moveTargetFile(Collections.singletonList(targetResource), true, storageGroup); + CompactionUtils.moveTargetFile( + Collections.singletonList(targetResource), CompactionTaskType.INNER_SEQ, storageGroup); - Map<PartialPath, List<TimeValuePair>> compactedData = + Map<IFullPath, List<TimeValuePair>> compactedData = CompactionCheckerUtils.getDataByQuery( fullPaths, iMeasurementSchemas, @@@ -440,8 -435,9 +446,9 @@@ performer.setTargetFiles(Collections.singletonList(targetResource)); performer.setSummary(new CompactionTaskSummary()); performer.perform(); - CompactionUtils.moveTargetFile(Collections.singletonList(targetResource), true, storageGroup); + CompactionUtils.moveTargetFile( + Collections.singletonList(targetResource), CompactionTaskType.INNER_SEQ, storageGroup); - Map<PartialPath, List<TimeValuePair>> compactedData = + Map<IFullPath, List<TimeValuePair>> compactedData = CompactionCheckerUtils.getDataByQuery( fullPaths, iMeasurementSchemas, @@@ -512,8 -506,9 +519,9 @@@ performer.setTargetFiles(Collections.singletonList(targetResource)); performer.setSummary(new CompactionTaskSummary()); performer.perform(); - CompactionUtils.moveTargetFile(Collections.singletonList(targetResource), true, storageGroup); + CompactionUtils.moveTargetFile( + Collections.singletonList(targetResource), CompactionTaskType.INNER_SEQ, storageGroup); - Map<PartialPath, List<TimeValuePair>> compactedData = + Map<IFullPath, List<TimeValuePair>> compactedData = CompactionCheckerUtils.getDataByQuery( fullPaths, iMeasurementSchemas, @@@ -585,8 -578,9 +593,9 @@@ performer.setTargetFiles(Collections.singletonList(targetResource)); performer.setSummary(new CompactionTaskSummary()); performer.perform(); - CompactionUtils.moveTargetFile(Collections.singletonList(targetResource), true, storageGroup); + CompactionUtils.moveTargetFile( + Collections.singletonList(targetResource), CompactionTaskType.INNER_SEQ, storageGroup); - Map<PartialPath, List<TimeValuePair>> compactedData = + Map<IFullPath, List<TimeValuePair>> compactedData = CompactionCheckerUtils.getDataByQuery( fullPaths, iMeasurementSchemas, @@@ -669,8 -661,9 +678,9 @@@ performer.setTargetFiles(Collections.singletonList(targetResource)); performer.setSummary(new CompactionTaskSummary()); performer.perform(); - CompactionUtils.moveTargetFile(Collections.singletonList(targetResource), true, storageGroup); + CompactionUtils.moveTargetFile( + Collections.singletonList(targetResource), CompactionTaskType.INNER_SEQ, storageGroup); - Map<PartialPath, List<TimeValuePair>> compactedData = + Map<IFullPath, List<TimeValuePair>> compactedData = CompactionCheckerUtils.getDataByQuery( fullPaths, iMeasurementSchemas, diff --cc iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/compaction/inner/ReadChunkCompactionPerformerNoAlignedTest.java index 189fac0a866,ba5e67a2a7c..f3eaeada76d --- a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/compaction/inner/ReadChunkCompactionPerformerNoAlignedTest.java +++ b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/compaction/inner/ReadChunkCompactionPerformerNoAlignedTest.java @@@ -951,8 -962,10 +961,10 @@@ public class ReadChunkCompactionPerform } chunkPagePointsNumMerged.put(deletedPath, null); CompactionUtils.moveTargetFile( - Collections.singletonList(targetResource), true, "root.compactionTest"); + Collections.singletonList(targetResource), + CompactionTaskType.INNER_SEQ, + "root.compactionTest"); - Map<PartialPath, List<TimeValuePair>> compactedData = + Map<IFullPath, List<TimeValuePair>> compactedData = CompactionCheckerUtils.getDataByQuery( paths, schemaList, Collections.singletonList(targetResource), new ArrayList<>()); CompactionCheckerUtils.validDataByValueList(originData, compactedData); @@@ -1040,8 -1053,10 +1052,10 @@@ } chunkPagePointsNumMerged.put(deletedPath, null); CompactionUtils.moveTargetFile( - Collections.singletonList(targetResource), true, "root.compactionTest"); + Collections.singletonList(targetResource), + CompactionTaskType.INNER_SEQ, + "root.compactionTest"); - Map<PartialPath, List<TimeValuePair>> compactedData = + Map<IFullPath, List<TimeValuePair>> compactedData = CompactionCheckerUtils.getDataByQuery( paths, schemaList, Collections.singletonList(targetResource), new ArrayList<>()); CompactionCheckerUtils.validDataByValueList(originData, compactedData); @@@ -1134,8 -1149,10 +1148,10 @@@ } chunkPagePointsNumMerged.put(deletedPath, null); CompactionUtils.moveTargetFile( - Collections.singletonList(targetResource), true, "root.compactionTest"); + Collections.singletonList(targetResource), + CompactionTaskType.INNER_SEQ, + "root.compactionTest"); - Map<PartialPath, List<TimeValuePair>> compactedData = + Map<IFullPath, List<TimeValuePair>> compactedData = CompactionCheckerUtils.getDataByQuery( paths, schemaList, Collections.singletonList(targetResource), new ArrayList<>()); CompactionCheckerUtils.validDataByValueList(originData, compactedData);
