This is an automated email from the ASF dual-hosted git repository. xingtanzjr pushed a commit to branch fix_cross_estimate_013 in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 89d1f132c114df056bccb03728bc620f291eb7cc Author: 周沛辰 <[email protected]> AuthorDate: Wed May 10 10:30:52 2023 +0800 [IOTDB-5818][Atmos][Compaction]Cross_space compaction of Aligned timeseries is stucked (#9795) --- .../cross/rewrite/selector/AbstractCompactionEstimator.java | 3 ++- .../cross/rewrite/selector/RewriteCrossCompactionEstimator.java | 6 +++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/server/src/main/java/org/apache/iotdb/db/engine/compaction/cross/rewrite/selector/AbstractCompactionEstimator.java b/server/src/main/java/org/apache/iotdb/db/engine/compaction/cross/rewrite/selector/AbstractCompactionEstimator.java index 51f410f3c9d..831749075de 100644 --- a/server/src/main/java/org/apache/iotdb/db/engine/compaction/cross/rewrite/selector/AbstractCompactionEstimator.java +++ b/server/src/main/java/org/apache/iotdb/db/engine/compaction/cross/rewrite/selector/AbstractCompactionEstimator.java @@ -20,6 +20,7 @@ package org.apache.iotdb.db.engine.compaction.cross.rewrite.selector; import org.apache.iotdb.db.conf.IoTDBConfig; import org.apache.iotdb.db.conf.IoTDBDescriptor; +import org.apache.iotdb.db.conf.adapter.CompressionRatio; import org.apache.iotdb.db.engine.storagegroup.TsFileResource; import org.apache.iotdb.tsfile.read.TsFileSequenceReader; @@ -38,7 +39,7 @@ public abstract class AbstractCompactionEstimator implements AutoCloseable { protected IoTDBConfig config = IoTDBDescriptor.getInstance().getConfig(); - protected int compressionRatio = 5; + protected long compressionRatio = (long) CompressionRatio.getInstance().getRatio() + 1; /** * Estimate the memory cost of compacting the unseq file and its corresponding overlapped seq diff --git a/server/src/main/java/org/apache/iotdb/db/engine/compaction/cross/rewrite/selector/RewriteCrossCompactionEstimator.java b/server/src/main/java/org/apache/iotdb/db/engine/compaction/cross/rewrite/selector/RewriteCrossCompactionEstimator.java index 49998d53a5f..7a7a21cc705 100644 --- a/server/src/main/java/org/apache/iotdb/db/engine/compaction/cross/rewrite/selector/RewriteCrossCompactionEstimator.java +++ b/server/src/main/java/org/apache/iotdb/db/engine/compaction/cross/rewrite/selector/RewriteCrossCompactionEstimator.java @@ -114,7 +114,11 @@ public class RewriteCrossCompactionEstimator extends AbstractCrossSpaceEstimator seqFileCost = 0; } else { // We need to multiply the compression ratio here. - seqFileCost = compressionRatio * concurrentSeriesNum * config.getTargetChunkSize(); + seqFileCost = + compressionRatio + * seqResource.getTsFileSize() + * concurrentSeriesNum + / fileInfo.totalChunkNum; } if (seqFileCost > maxCostOfReadingSeqFile) {
