This is an automated email from the ASF dual-hosted git repository.

hxd pushed a commit to branch fix_add_future_4_flush_opeartion
in repository https://gitbox.apache.org/repos/asf/incubator-iotdb.git


The following commit(s) were added to 
refs/heads/fix_add_future_4_flush_opeartion by this push:
     new de20e5c  replace assertEquals with assertTrue or assertFalse; add 
logger.error for some exception; change the time unit of lastFlushTime as 
nanoTime
de20e5c is described below

commit de20e5c6ad495601aebaf84cdc948596df0a1feb
Author: xiangdong huang <[email protected]>
AuthorDate: Tue Feb 19 20:17:08 2019 +0800

    replace assertEquals with assertTrue or assertFalse; add logger.error for 
some exception; change the time unit of lastFlushTime as nanoTime
---
 .../engine/bufferwrite/BufferWriteProcessor.java   |  9 +++---
 .../db/engine/filenode/FileNodeProcessor.java      |  1 -
 .../bufferwrite/BufferWriteProcessorNewTest.java   | 25 +++++++++-------
 .../bufferwrite/BufferWriteProcessorTest.java      | 34 +++++++++++++---------
 4 files changed, 41 insertions(+), 28 deletions(-)

diff --git 
a/iotdb/src/main/java/org/apache/iotdb/db/engine/bufferwrite/BufferWriteProcessor.java
 
b/iotdb/src/main/java/org/apache/iotdb/db/engine/bufferwrite/BufferWriteProcessor.java
index f8d7153..18a7f55 100644
--- 
a/iotdb/src/main/java/org/apache/iotdb/db/engine/bufferwrite/BufferWriteProcessor.java
+++ 
b/iotdb/src/main/java/org/apache/iotdb/db/engine/bufferwrite/BufferWriteProcessor.java
@@ -69,6 +69,7 @@ public class BufferWriteProcessor extends Processor {
   private Action bufferwriteCloseAction;
   private Action filenodeFlushAction;
 
+  //lastFlushTime time unit: nanosecond
   private long lastFlushTime = -1;
   private long valueCount = 0;
 
@@ -311,12 +312,12 @@ public class BufferWriteProcessor extends Processor {
         LOGGER.info(
             "The bufferwrite processor {}: last flush time is {}, this flush 
time is {}, "
                 + "flush time interval is {}s", getProcessorName(),
-            DatetimeUtils.convertMillsecondToZonedDateTime(lastFlushTime),
+            DatetimeUtils.convertMillsecondToZonedDateTime(lastFlushTime/1000),
             DatetimeUtils.convertMillsecondToZonedDateTime(thisFlushTime),
-            (thisFlushTime - lastFlushTime) / 1000);
+            (thisFlushTime - lastFlushTime/1000) / 1000);
       }
     }
-    lastFlushTime = System.currentTimeMillis();
+    lastFlushTime = System.nanoTime();
     // check value count
     if (valueCount > 0) {
       // waiting for the end of last flush operation.
@@ -486,7 +487,7 @@ public class BufferWriteProcessor extends Processor {
 
   /**
    * used for test. We can know when the flush() is called.
-   * @return the last flush() time.
+   * @return the last flush() time. Time unit: nanosecond.
    */
   public long getLastFlushTime() {
     return lastFlushTime;
diff --git 
a/iotdb/src/main/java/org/apache/iotdb/db/engine/filenode/FileNodeProcessor.java
 
b/iotdb/src/main/java/org/apache/iotdb/db/engine/filenode/FileNodeProcessor.java
index 4605236..adaae9d 100644
--- 
a/iotdb/src/main/java/org/apache/iotdb/db/engine/filenode/FileNodeProcessor.java
+++ 
b/iotdb/src/main/java/org/apache/iotdb/db/engine/filenode/FileNodeProcessor.java
@@ -18,7 +18,6 @@
  */
 package org.apache.iotdb.db.engine.filenode;
 
-import com.sun.org.apache.xpath.internal.operations.Bool;
 import java.io.File;
 import java.io.IOException;
 import java.nio.file.FileSystems;
diff --git 
a/iotdb/src/test/java/org/apache/iotdb/db/engine/bufferwrite/BufferWriteProcessorNewTest.java
 
b/iotdb/src/test/java/org/apache/iotdb/db/engine/bufferwrite/BufferWriteProcessorNewTest.java
index 04046b8..08d4720 100644
--- 
a/iotdb/src/test/java/org/apache/iotdb/db/engine/bufferwrite/BufferWriteProcessorNewTest.java
+++ 
b/iotdb/src/test/java/org/apache/iotdb/db/engine/bufferwrite/BufferWriteProcessorNewTest.java
@@ -18,7 +18,9 @@
  */
 package org.apache.iotdb.db.engine.bufferwrite;
 
+import static junit.framework.TestCase.assertTrue;
 import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
 
 import java.io.File;
 import java.io.IOException;
@@ -44,9 +46,11 @@ import org.junit.After;
 import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class BufferWriteProcessorNewTest {
-
+  private static final Logger LOGGER = 
LoggerFactory.getLogger(BufferWriteProcessorNewTest.class);
   Action bfflushaction = new Action() {
 
     @Override
@@ -99,15 +103,15 @@ public class BufferWriteProcessorNewTest {
         parameters, FileSchemaUtils.constructFileSchema(processorName));
     assertEquals(filename, bufferwrite.getFileName());
     assertEquals(processorName + File.separator + filename, 
bufferwrite.getFileRelativePath());
-    assertEquals(true, bufferwrite.isNewProcessor());
+    assertTrue(bufferwrite.isNewProcessor());
     bufferwrite.setNewProcessor(false);
-    assertEquals(false, bufferwrite.isNewProcessor());
+    assertFalse(bufferwrite.isNewProcessor());
     Pair<ReadOnlyMemChunk, List<ChunkMetaData>> pair = bufferwrite
         .queryBufferWriteData(processorName,
             measurementId, dataType);
     ReadOnlyMemChunk left = pair.left;
     List<ChunkMetaData> right = pair.right;
-    assertEquals(true, left.isEmpty());
+    assertTrue(left.isEmpty());
     assertEquals(0, right.size());
     for (int i = 1; i <= 100; i++) {
       bufferwrite.write(processorName, measurementId, i, dataType, 
String.valueOf(i));
@@ -116,7 +120,7 @@ public class BufferWriteProcessorNewTest {
     pair = bufferwrite.queryBufferWriteData(processorName, measurementId, 
dataType);
     left = pair.left;
     right = pair.right;
-    assertEquals(false, left.isEmpty());
+    assertFalse(left.isEmpty());
     int num = 1;
     Iterator<TimeValuePair> iterator = left.getIterator();
     for (; num <= 100; num++) {
@@ -125,24 +129,25 @@ public class BufferWriteProcessorNewTest {
       assertEquals(num, timeValuePair.getTimestamp());
       assertEquals(num, timeValuePair.getValue().getInt());
     }
-    assertEquals(false, bufferwrite.isFlush());
+    assertFalse(bufferwrite.isFlush());
     long lastFlushTime = bufferwrite.getLastFlushTime();
     // flush asynchronously
     bufferwrite.flush();
-    assertEquals(true, bufferwrite.getLastFlushTime() != lastFlushTime);
-    assertEquals(true, bufferwrite.canBeClosed());
+    assertTrue(bufferwrite.getLastFlushTime() != lastFlushTime);
+    assertTrue(bufferwrite.canBeClosed());
     // waiting for the end of flush.
     try {
       bufferwrite.getFlushFuture().get(10, TimeUnit.SECONDS);
     } catch (Exception e) {
       //because UT uses a mock flush operation, 10 seconds should be enough.
+      LOGGER.error(e.getMessage(),e);
       Assert.fail("mock flush spends more than 10 seconds... "
           + "Please modify the value or change a better test environment");
     }
     pair = bufferwrite.queryBufferWriteData(processorName, measurementId, 
dataType);
     left = pair.left;
     right = pair.right;
-    assertEquals(true, left.isEmpty());
+    assertTrue(left.isEmpty());
     assertEquals(1, right.size());
     assertEquals(measurementId, right.get(0).getMeasurementUid());
     assertEquals(dataType, right.get(0).getTsDataType());
@@ -154,7 +159,7 @@ public class BufferWriteProcessorNewTest {
     pair = bufferWriteProcessor.queryBufferWriteData(processorName, 
measurementId, dataType);
     left = pair.left;
     right = pair.right;
-    assertEquals(true, left.isEmpty());
+    assertTrue(left.isEmpty());
     assertEquals(1, right.size());
     assertEquals(measurementId, right.get(0).getMeasurementUid());
     assertEquals(dataType, right.get(0).getTsDataType());
diff --git 
a/iotdb/src/test/java/org/apache/iotdb/db/engine/bufferwrite/BufferWriteProcessorTest.java
 
b/iotdb/src/test/java/org/apache/iotdb/db/engine/bufferwrite/BufferWriteProcessorTest.java
index 6a2e474..e70ee15 100644
--- 
a/iotdb/src/test/java/org/apache/iotdb/db/engine/bufferwrite/BufferWriteProcessorTest.java
+++ 
b/iotdb/src/test/java/org/apache/iotdb/db/engine/bufferwrite/BufferWriteProcessorTest.java
@@ -19,6 +19,9 @@
 package org.apache.iotdb.db.engine.bufferwrite;
 
 import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotEquals;
+import static org.junit.Assert.assertTrue;
 
 import ch.qos.logback.core.util.TimeUtil;
 import java.io.File;
@@ -50,9 +53,13 @@ import org.junit.After;
 import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class BufferWriteProcessorTest {
 
+  private static final Logger LOGGER = 
LoggerFactory.getLogger(BufferWriteProcessorTest.class);
+
   Action bfflushaction = new Action() {
 
     @Override
@@ -125,7 +132,7 @@ public class BufferWriteProcessorTest {
     // check file
     String restoreFilePath = insertPath + ".restore";
     File restoreFile = new File(dataFile, restoreFilePath);
-    assertEquals(true, restoreFile.exists());
+    assertTrue(restoreFile.exists());
     File insertFile = new File(dataFile, insertPath);
     long insertFileLength = insertFile.length();
     FileOutputStream fileOutputStream = new 
FileOutputStream(insertFile.getPath(), true);
@@ -140,18 +147,18 @@ public class BufferWriteProcessorTest {
     BufferWriteProcessor bufferWriteProcessor = new BufferWriteProcessor(
         directories.getFolderForTest(), deviceId,
         insertPath, parameters, FileSchemaUtils.constructFileSchema(deviceId));
-    assertEquals(true, insertFile.exists());
+    assertTrue(insertFile.exists());
     assertEquals(insertFileLength, insertFile.length());
     Pair<ReadOnlyMemChunk, List<ChunkMetaData>> pair = bufferWriteProcessor
         .queryBufferWriteData(deviceId,
             measurementId, dataType);
-    assertEquals(true, pair.left.isEmpty());
+    assertTrue(pair.left.isEmpty());
     assertEquals(1, pair.right.size());
     ChunkMetaData chunkMetaData = pair.right.get(0);
     assertEquals(measurementId, chunkMetaData.getMeasurementUid());
     assertEquals(dataType, chunkMetaData.getTsDataType());
     bufferWriteProcessor.close();
-    assertEquals(false, restoreFile.exists());
+    assertFalse(restoreFile.exists());
   }
 
   @Test
@@ -169,21 +176,21 @@ public class BufferWriteProcessorTest {
     // check file
     String restoreFilePath = insertPath + ".restore";
     File restoreFile = new File(dataFile, restoreFilePath);
-    assertEquals(true, restoreFile.exists());
+    assertTrue(restoreFile.exists());
     BufferWriteProcessor bufferWriteProcessor = new BufferWriteProcessor(
         directories.getFolderForTest(), deviceId,
         insertPath, parameters, FileSchemaUtils.constructFileSchema(deviceId));
     Pair<ReadOnlyMemChunk, List<ChunkMetaData>> pair = bufferWriteProcessor
         .queryBufferWriteData(deviceId,
             measurementId, dataType);
-    assertEquals(true, pair.left.isEmpty());
+    assertTrue(pair.left.isEmpty());
     assertEquals(1, pair.right.size());
     ChunkMetaData chunkMetaData = pair.right.get(0);
     assertEquals(measurementId, chunkMetaData.getMeasurementUid());
     assertEquals(dataType, chunkMetaData.getTsDataType());
     bufferWriteProcessor.close();
     bufferwrite.close();
-    assertEquals(false, restoreFile.exists());
+    assertFalse(restoreFile.exists());
   }
 
   @Test
@@ -192,8 +199,8 @@ public class BufferWriteProcessorTest {
     bufferwrite = new BufferWriteProcessor(directories.getFolderForTest(), 
deviceId, insertPath,
         parameters,
         FileSchemaUtils.constructFileSchema(deviceId));
-    assertEquals(false, bufferwrite.isFlush());
-    assertEquals(true, bufferwrite.canBeClosed());
+    assertFalse(bufferwrite.isFlush());
+    assertTrue(bufferwrite.canBeClosed());
     assertEquals(0, bufferwrite.memoryUsage());
     assertEquals(TsFileIOWriter.magicStringBytes.length, 
bufferwrite.getFileSize());
     assertEquals(0, bufferwrite.getMetaSize());
@@ -205,22 +212,23 @@ public class BufferWriteProcessorTest {
     assertEquals(lastFlushTime, bufferwrite.getLastFlushTime());
     bufferwrite.write(deviceId, measurementId, 86, dataType, 
String.valueOf(86));
     //assert a flush() is called.
-    assertEquals(false, bufferwrite.getLastFlushTime()==lastFlushTime);
+    assertNotEquals(bufferwrite.getLastFlushTime(), lastFlushTime);
     // sleep to the end of flush
     try {
       bufferwrite.getFlushFuture().get(10, TimeUnit.SECONDS);
     } catch (Exception e) {
       //because UT uses a mock flush operation, 10 seconds should be enough.
+      LOGGER.error(e.getMessage(), e);
       Assert.fail("mock flush spends more than 10 seconds... "
           + "Please modify the value or change a better test environment");
     }
-    assertEquals(false, bufferwrite.isFlush());
+    assertFalse(bufferwrite.isFlush());
     assertEquals(0, bufferwrite.memoryUsage());
     // query result
     Pair<ReadOnlyMemChunk, List<ChunkMetaData>> pair = bufferwrite
         .queryBufferWriteData(deviceId, measurementId,
             dataType);
-    assertEquals(true, pair.left.isEmpty());
+    assertFalse(pair.left.isEmpty());
     assertEquals(1, pair.right.size());
     ChunkMetaData chunkMetaData = pair.right.get(0);
     assertEquals(measurementId, chunkMetaData.getMeasurementUid());
@@ -231,7 +239,7 @@ public class BufferWriteProcessorTest {
     }
     pair = bufferwrite.queryBufferWriteData(deviceId, measurementId, dataType);
     ReadOnlyMemChunk rawSeriesChunk = (ReadOnlyMemChunk) pair.left;
-    assertEquals(false, rawSeriesChunk.isEmpty());
+    assertFalse(rawSeriesChunk.isEmpty());
     assertEquals(87, rawSeriesChunk.getMinTimestamp());
     Assert.assertEquals(87, rawSeriesChunk.getValueAtMinTime().getInt());
     assertEquals(100, rawSeriesChunk.getMaxTimestamp());

Reply via email to