Skip to content

Commit

Permalink
[IoTDB-569] Fix deletion version number when deleting multiple partit…
Browse files Browse the repository at this point in the history
…ions (#951)

* fix version of delete under different partition
  • Loading branch information
SilverNarcissus committed Mar 27, 2020
1 parent 6d0117c commit 62ae486
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 6 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -1279,6 +1279,9 @@ private void deleteDataInFiles(Collection<TsFileResource> tsFileResourceList, De
continue;
}

long partitionId = getTimePartitionFromTsFileResource(tsFileResource);
deletion.setVersionNum(getVersionControllerByTimePartitionId(partitionId).nextVersion());

// write deletion into modification file
tsFileResource.getModFile().write(deletion);
// remember to close mod file
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,15 +30,14 @@
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;
Expand All @@ -47,9 +46,9 @@
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;
Expand Down Expand Up @@ -172,7 +171,9 @@ public void testDeleteInBufferWriteFile()
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();
Expand Down Expand Up @@ -281,7 +282,9 @@ public void testDeleteInOverflowFile()
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++;
}
}
}

0 comments on commit 62ae486

Please sign in to comment.