This is an automated email from the ASF dual-hosted git repository.
qiaojialin pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-iotdb.git
The following commit(s) were added to refs/heads/master by this push:
new 62ae486 [IoTDB-569] Fix deletion version number when deleting
multiple partitions (#951)
62ae486 is described below
commit 62ae4861f77776952ef02ecb27c6ffeb8c4cb8ce
Author: SilverNarcissus <[email protected]>
AuthorDate: Fri Mar 27 20:50:07 2020 +0800
[IoTDB-569] Fix deletion version number when deleting multiple partitions
(#951)
* fix version of delete under different partition
---
.../db/engine/storagegroup/StorageGroupProcessor.java | 3 +++
.../db/engine/modification/DeletionFileNodeTest.java | 15 +++++++++------
2 files changed, 12 insertions(+), 6 deletions(-)
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 d6b2c98..2420989 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
@@ -1279,6 +1279,9 @@ public class StorageGroupProcessor {
continue;
}
+ long partitionId = getTimePartitionFromTsFileResource(tsFileResource);
+
deletion.setVersionNum(getVersionControllerByTimePartitionId(partitionId).nextVersion());
+
// write deletion into modification file
tsFileResource.getModFile().write(deletion);
// remember to close mod file
diff --git
a/server/src/test/java/org/apache/iotdb/db/engine/modification/DeletionFileNodeTest.java
b/server/src/test/java/org/apache/iotdb/db/engine/modification/DeletionFileNodeTest.java
index 1ad0d22..b39b859 100644
---
a/server/src/test/java/org/apache/iotdb/db/engine/modification/DeletionFileNodeTest.java
+++
b/server/src/test/java/org/apache/iotdb/db/engine/modification/DeletionFileNodeTest.java
@@ -30,15 +30,14 @@ import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
-import junit.framework.TestCase;
import org.apache.iotdb.db.conf.directories.DirectoryManager;
import org.apache.iotdb.db.engine.StorageEngine;
import
org.apache.iotdb.db.engine.modification.io.LocalTextModificationAccessor;
import org.apache.iotdb.db.engine.querycontext.QueryDataSource;
-import org.apache.iotdb.db.exception.metadata.MetadataException;
+import org.apache.iotdb.db.engine.querycontext.ReadOnlyMemChunk;
import org.apache.iotdb.db.exception.StartupException;
import org.apache.iotdb.db.exception.StorageEngineException;
-import org.apache.iotdb.db.engine.querycontext.ReadOnlyMemChunk;
+import org.apache.iotdb.db.exception.metadata.MetadataException;
import org.apache.iotdb.db.exception.query.QueryProcessException;
import org.apache.iotdb.db.metadata.MManager;
import org.apache.iotdb.db.qp.physical.crud.InsertPlan;
@@ -47,9 +46,9 @@ import org.apache.iotdb.db.utils.EnvironmentUtils;
import org.apache.iotdb.tsfile.common.conf.TSFileDescriptor;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.read.reader.IPointReader;
import org.apache.iotdb.tsfile.read.common.Path;
import org.apache.iotdb.tsfile.read.expression.impl.SingleSeriesExpression;
+import org.apache.iotdb.tsfile.read.reader.IPointReader;
import org.apache.iotdb.tsfile.write.record.TSRecord;
import org.apache.iotdb.tsfile.write.record.datapoint.DoubleDataPoint;
import org.junit.After;
@@ -172,7 +171,9 @@ public class DeletionFileNodeTest {
assertEquals(3, modifications.size());
int i = 0;
for (Modification modification : modifications) {
- TestCase.assertEquals(modification, realModifications[i++]);
+ assertEquals(modification.path, realModifications[i].path);
+ assertEquals(modification.type, realModifications[i].type);
+ i++;
}
} finally {
accessor.close();
@@ -281,7 +282,9 @@ public class DeletionFileNodeTest {
assertEquals(3, modifications.size());
int i = 0;
for (Modification modification : modifications) {
- TestCase.assertEquals(modification, realModifications[i++]);
+ assertEquals(modification.path, realModifications[i].path);
+ assertEquals(modification.type, realModifications[i].type);
+ i++;
}
}
}