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++;
     }
   }
 }

Reply via email to