This is an automated email from the ASF dual-hosted git repository.
qiaojialin pushed a commit to branch remove_device_in_time_index
in repository https://gitbox.apache.org/repos/asf/iotdb.git
The following commit(s) were added to refs/heads/remove_device_in_time_index by
this push:
new 6c18577 replace timeLowerBound with ttlLowerBound (#3541)
6c18577 is described below
commit 6c18577da612baf7297d0cf4d069b85fdc08f9a7
Author: Yuting Yan <[email protected]>
AuthorDate: Mon Jul 12 09:34:55 2021 -0500
replace timeLowerBound with ttlLowerBound (#3541)
Co-authored-by: Yuting <[email protected]>
---
.../iotdb/db/engine/compaction/TsFileManagement.java | 4 ++--
.../iotdb/db/engine/memtable/AbstractMemTable.java | 2 +-
.../org/apache/iotdb/db/engine/memtable/IMemTable.java | 2 +-
.../iotdb/db/engine/merge/manage/MergeResource.java | 8 ++++----
.../db/engine/storagegroup/StorageGroupProcessor.java | 18 +++++++++---------
.../iotdb/db/engine/storagegroup/TsFileResource.java | 5 ++---
.../engine/storagegroup/timeindex/DeviceTimeIndex.java | 6 +++---
.../engine/storagegroup/timeindex/FileTimeIndex.java | 6 +++---
.../db/engine/storagegroup/timeindex/ITimeIndex.java | 4 ++--
.../db/engine/merge/MaxFileMergeFileSelectorTest.java | 5 ++---
10 files changed, 29 insertions(+), 31 deletions(-)
diff --git
a/server/src/main/java/org/apache/iotdb/db/engine/compaction/TsFileManagement.java
b/server/src/main/java/org/apache/iotdb/db/engine/compaction/TsFileManagement.java
index 8f17c1f..e49d198 100644
---
a/server/src/main/java/org/apache/iotdb/db/engine/compaction/TsFileManagement.java
+++
b/server/src/main/java/org/apache/iotdb/db/engine/compaction/TsFileManagement.java
@@ -241,8 +241,8 @@ public abstract class TsFileManagement {
}
long budget =
IoTDBDescriptor.getInstance().getConfig().getMergeMemoryBudget();
- long timeLowerBound = System.currentTimeMillis() - dataTTL;
- MergeResource mergeResource = new MergeResource(seqMergeList,
unSeqMergeList, timeLowerBound);
+ long ttlLowerBound = System.currentTimeMillis() - dataTTL;
+ MergeResource mergeResource = new MergeResource(seqMergeList,
unSeqMergeList, ttlLowerBound);
IMergeFileSelector fileSelector = getMergeFileSelector(budget,
mergeResource);
try {
diff --git
a/server/src/main/java/org/apache/iotdb/db/engine/memtable/AbstractMemTable.java
b/server/src/main/java/org/apache/iotdb/db/engine/memtable/AbstractMemTable.java
index 170f49c..0acb9e1 100644
---
a/server/src/main/java/org/apache/iotdb/db/engine/memtable/AbstractMemTable.java
+++
b/server/src/main/java/org/apache/iotdb/db/engine/memtable/AbstractMemTable.java
@@ -306,7 +306,7 @@ public abstract class AbstractMemTable implements IMemTable
{
String deviceId,
String measurement,
IMeasurementSchema partialVectorSchema,
- long timeLowerBound,
+ long ttlLowerBound,
List<TimeRange> deletionList)
throws IOException, QueryProcessException {
if (partialVectorSchema.getType() == TSDataType.VECTOR) {
diff --git
a/server/src/main/java/org/apache/iotdb/db/engine/memtable/IMemTable.java
b/server/src/main/java/org/apache/iotdb/db/engine/memtable/IMemTable.java
index bb28c57..e5c9e32 100644
--- a/server/src/main/java/org/apache/iotdb/db/engine/memtable/IMemTable.java
+++ b/server/src/main/java/org/apache/iotdb/db/engine/memtable/IMemTable.java
@@ -92,7 +92,7 @@ public interface IMemTable {
String deviceId,
String measurement,
IMeasurementSchema schema,
- long timeLowerBound,
+ long ttlLowerBound,
List<TimeRange> deletionList)
throws IOException, QueryProcessException, MetadataException;
diff --git
a/server/src/main/java/org/apache/iotdb/db/engine/merge/manage/MergeResource.java
b/server/src/main/java/org/apache/iotdb/db/engine/merge/manage/MergeResource.java
index d7bc827..bde31e2 100644
---
a/server/src/main/java/org/apache/iotdb/db/engine/merge/manage/MergeResource.java
+++
b/server/src/main/java/org/apache/iotdb/db/engine/merge/manage/MergeResource.java
@@ -68,7 +68,7 @@ public class MergeResource {
new HashMap<>(); // is this too waste?
private Map<IMeasurementSchema, IChunkWriter> chunkWriterCache = new
ConcurrentHashMap<>();
- private long timeLowerBound = Long.MIN_VALUE;
+ private long ttlLowerBound = Long.MIN_VALUE;
private boolean cacheDeviceMeta = false;
@@ -81,12 +81,12 @@ public class MergeResource {
private boolean filterResource(TsFileResource res) {
return res.getTsFile().exists()
&& !res.isDeleted()
- && (!res.isClosed() || res.stillLives(timeLowerBound));
+ && (!res.isClosed() || res.stillLives(ttlLowerBound));
}
public MergeResource(
- Collection<TsFileResource> seqFiles, List<TsFileResource> unseqFiles,
long timeLowerBound) {
- this.timeLowerBound = timeLowerBound;
+ Collection<TsFileResource> seqFiles, List<TsFileResource> unseqFiles,
long ttlLowerBound) {
+ this.ttlLowerBound = ttlLowerBound;
this.seqFiles =
seqFiles.stream().filter(this::filterResource).collect(Collectors.toList());
this.unseqFiles =
unseqFiles.stream().filter(this::filterResource).collect(Collectors.toList());
}
diff --git
a/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/StorageGroupProcessor.java
b/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/StorageGroupProcessor.java
index bb3820e..66110a1 100755
---
a/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/StorageGroupProcessor.java
+++
b/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/StorageGroupProcessor.java
@@ -1487,12 +1487,12 @@ public class StorageGroupProcessor {
logicalStorageGroupName + "-" + virtualStorageGroupId);
return;
}
- long timeLowerBound = System.currentTimeMillis() - dataTTL;
+ long ttlLowerBound = System.currentTimeMillis() - dataTTL;
if (logger.isDebugEnabled()) {
logger.debug(
"{}: TTL removing files before {}",
logicalStorageGroupName + "-" + virtualStorageGroupId,
- new Date(timeLowerBound));
+ new Date(ttlLowerBound));
}
// copy to avoid concurrent modification of deletion
@@ -1500,17 +1500,17 @@ public class StorageGroupProcessor {
List<TsFileResource> unseqFiles = new
ArrayList<>(tsFileManagement.getTsFileList(false));
for (TsFileResource tsFileResource : seqFiles) {
- checkFileTTL(tsFileResource, timeLowerBound, true);
+ checkFileTTL(tsFileResource, ttlLowerBound, true);
}
for (TsFileResource tsFileResource : unseqFiles) {
- checkFileTTL(tsFileResource, timeLowerBound, false);
+ checkFileTTL(tsFileResource, ttlLowerBound, false);
}
}
- private void checkFileTTL(TsFileResource resource, long timeLowerBound,
boolean isSeq) {
+ private void checkFileTTL(TsFileResource resource, long ttlLowerBound,
boolean isSeq) {
if (resource.isMerging()
|| !resource.isClosed()
- || !resource.isDeleted() && resource.stillLives(timeLowerBound)) {
+ || !resource.isDeleted() && resource.stillLives(ttlLowerBound)) {
return;
}
@@ -1533,7 +1533,7 @@ public class StorageGroupProcessor {
logger.info(
"Removed a file {} before {} by ttl ({}ms)",
resource.getTsFilePath(),
- new Date(timeLowerBound),
+ new Date(ttlLowerBound),
dataTTL);
}
tsFileManagement.remove(resource, isSeq);
@@ -1719,9 +1719,9 @@ public class StorageGroupProcessor {
IMeasurementSchema schema = IoTDB.metaManager.getSeriesSchema(fullPath);
List<TsFileResource> tsfileResourcesForQuery = new ArrayList<>();
- long timeLowerBound =
+ long ttlLowerBound =
dataTTL != Long.MAX_VALUE ? System.currentTimeMillis() - dataTTL :
Long.MIN_VALUE;
- context.setQueryTimeLowerBound(timeLowerBound);
+ context.setQueryTimeLowerBound(ttlLowerBound);
// for upgrade files and old files must be closed
for (TsFileResource tsFileResource : upgradeTsFileResources) {
diff --git
a/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/TsFileResource.java
b/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/TsFileResource.java
index 1e1b63d..8f7dc81 100644
---
a/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/TsFileResource.java
+++
b/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/TsFileResource.java
@@ -89,12 +89,11 @@ public class TsFileResource {
/** version number */
public static final byte VERSION_NUMBER = 1;
+ private TsFileProcessor processor;
+
public TsFileProcessor getProcessor() {
return processor;
}
-
- private TsFileProcessor processor;
-
/** time index */
protected ITimeIndex timeIndex;
diff --git
a/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/timeindex/DeviceTimeIndex.java
b/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/timeindex/DeviceTimeIndex.java
index 86d7dc6..c0556a9 100644
---
a/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/timeindex/DeviceTimeIndex.java
+++
b/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/timeindex/DeviceTimeIndex.java
@@ -165,13 +165,13 @@ public class DeviceTimeIndex implements ITimeIndex {
}
@Override
- public boolean stillLives(long timeLowerBound) {
- if (timeLowerBound == Long.MAX_VALUE) {
+ public boolean stillLives(long ttlLowerBound) {
+ if (ttlLowerBound == Long.MAX_VALUE) {
return true;
}
for (long endTime : endTimes) {
// the file cannot be deleted if any device still lives
- if (endTime >= timeLowerBound) {
+ if (endTime >= ttlLowerBound) {
return true;
}
}
diff --git
a/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/timeindex/FileTimeIndex.java
b/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/timeindex/FileTimeIndex.java
index 7c3f6ec..d8baafe 100644
---
a/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/timeindex/FileTimeIndex.java
+++
b/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/timeindex/FileTimeIndex.java
@@ -120,12 +120,12 @@ public class FileTimeIndex implements ITimeIndex {
}
@Override
- public boolean stillLives(long timeLowerBound) {
- if (timeLowerBound == Long.MAX_VALUE) {
+ public boolean stillLives(long ttlLowerBound) {
+ if (ttlLowerBound == Long.MAX_VALUE) {
return true;
}
// the file cannot be deleted if any device still lives
- return endTime >= timeLowerBound;
+ return endTime >= ttlLowerBound;
}
@Override
diff --git
a/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/timeindex/ITimeIndex.java
b/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/timeindex/ITimeIndex.java
index 4c87408..ba98c34 100644
---
a/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/timeindex/ITimeIndex.java
+++
b/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/timeindex/ITimeIndex.java
@@ -68,10 +68,10 @@ public interface ITimeIndex {
boolean endTimeEmpty();
/**
- * @param timeLowerBound time lower bound
+ * @param ttlLowerBound time lower bound
* @return whether any of the device lives over the given time bound
*/
- boolean stillLives(long timeLowerBound);
+ boolean stillLives(long ttlLowerBound);
/** @return Calculate file index ram size */
long calculateRamSize();
diff --git
a/server/src/test/java/org/apache/iotdb/db/engine/merge/MaxFileMergeFileSelectorTest.java
b/server/src/test/java/org/apache/iotdb/db/engine/merge/MaxFileMergeFileSelectorTest.java
index 789d58d..f852a88 100644
---
a/server/src/test/java/org/apache/iotdb/db/engine/merge/MaxFileMergeFileSelectorTest.java
+++
b/server/src/test/java/org/apache/iotdb/db/engine/merge/MaxFileMergeFileSelectorTest.java
@@ -192,9 +192,8 @@ public class MaxFileMergeFileSelectorTest extends MergeTest
{
List<TsFileResource> newUnseqResources = new ArrayList<>();
newUnseqResources.add(largeUnseqTsFileResource);
- long timeLowerBound = System.currentTimeMillis() - Long.MAX_VALUE;
- MergeResource mergeResource =
- new MergeResource(seqResources, newUnseqResources, timeLowerBound);
+ long ttlLowerBound = System.currentTimeMillis() - Long.MAX_VALUE;
+ MergeResource mergeResource = new MergeResource(seqResources,
newUnseqResources, ttlLowerBound);
assertEquals(5, mergeResource.getSeqFiles().size());
assertEquals(1, mergeResource.getUnseqFiles().size());
mergeResource.clear();