You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by lt...@apache.org on 2019/01/25 12:06:27 UTC

[incubator-iotdb] branch fix_sonar updated: fix sonar of postback test module

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

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


The following commit(s) were added to refs/heads/fix_sonar by this push:
     new e0f883a  fix sonar of postback test module
     new fda5948  Merge branch 'fix_sonar' of github.com:apache/incubator-iotdb into fix_sonar
e0f883a is described below

commit e0f883af13277e5235de1ac678ba7780bac083d3
Author: lta <li...@163.com>
AuthorDate: Fri Jan 25 20:05:33 2019 +0800

    fix sonar of postback test module
---
 .../db/postback/receiver/ServerServiceImpl.java    |   2 +-
 .../iotdb/db/postback/sender/FileManagerTest.java  | 100 ++++++------
 .../sender/IoTDBSingleClientPostBackTest.java      | 170 ++++++++++-----------
 .../sender/MultipleClientPostBackTest.java         | 147 +++++-------------
 4 files changed, 169 insertions(+), 250 deletions(-)

diff --git a/iotdb/src/main/java/org/apache/iotdb/db/postback/receiver/ServerServiceImpl.java b/iotdb/src/main/java/org/apache/iotdb/db/postback/receiver/ServerServiceImpl.java
index ca3ed08..e01567f 100644
--- a/iotdb/src/main/java/org/apache/iotdb/db/postback/receiver/ServerServiceImpl.java
+++ b/iotdb/src/main/java/org/apache/iotdb/db/postback/receiver/ServerServiceImpl.java
@@ -183,7 +183,7 @@ public class ServerServiceImpl implements ServerService.Iface {
               + " "
               + "files from sender!");
         } else {
-          Files.delete((java.nio.file.Path) new Path(filePath));
+          Files.deleteIfExists((java.nio.file.Path) new Path(filePath));
         }
       } catch (Exception e) {
         LOGGER.error("IoTDB post back receiver: cannot generate md5 because {}", e.getMessage());
diff --git a/iotdb/src/test/java/org/apache/iotdb/db/postback/sender/FileManagerTest.java b/iotdb/src/test/java/org/apache/iotdb/db/postback/sender/FileManagerTest.java
index 194a528..d3b7b3e 100644
--- a/iotdb/src/test/java/org/apache/iotdb/db/postback/sender/FileManagerTest.java
+++ b/iotdb/src/test/java/org/apache/iotdb/db/postback/sender/FileManagerTest.java
@@ -1,34 +1,34 @@
 /**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
+ * Licensed to the Apache Software Foundation (ASF) under one or more contributor license
+ * agreements.  See the NOTICE file distributed with this work for additional information regarding
+ * copyright ownership.  The ASF licenses this file to you under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with the License.  You may obtain
+ * a copy of the License at
  *
- *     http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
  *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
+ * Unless required by applicable law or agreed to in writing, software distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
+ * or implied.  See the License for the specific language governing permissions and limitations
  * under the License.
  */
 package org.apache.iotdb.db.postback.sender;
 
 import java.io.File;
 import java.io.IOException;
+import java.nio.file.Files;
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.Map;
 import java.util.Map.Entry;
 import java.util.Random;
 import java.util.Set;
+import org.apache.iotdb.tsfile.read.common.Path;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class FileManagerTest {
 
@@ -37,16 +37,17 @@ public class FileManagerTest {
       POST_BACK_DIRECTORY_TEST + "lastLocalFileList.txt";
   public static final String SENDER_FILE_PATH_TEST = POST_BACK_DIRECTORY_TEST + "data";
   FileManager manager = FileManager.getInstance();
+  private static final Logger LOGGER = LoggerFactory.getLogger(FileManagerTest.class);
 
   @Before
-  public void setUp() throws Exception {
+  public void setUp() throws IOException, InterruptedException {
     Thread.sleep(1000);
     File file = new File(LAST_FILE_INFO_TEST);
     if (!file.getParentFile().exists()) {
       file.getParentFile().mkdirs();
     }
-    if (!file.exists()) {
-      file.createNewFile();
+    if (!file.exists() && !file.createNewFile()) {
+      LOGGER.error("Can not create new file {}", file.getAbsoluteFile());
     }
     file = new File(SENDER_FILE_PATH_TEST);
     if (!file.exists()) {
@@ -55,20 +56,19 @@ public class FileManagerTest {
   }
 
   @After
-  public void tearDown() throws Exception {
+  public void tearDown() throws IOException, InterruptedException {
     Thread.sleep(1000);
-    delete(new File(POST_BACK_DIRECTORY_TEST));
-    new File(POST_BACK_DIRECTORY_TEST).delete();
+    Files.deleteIfExists((java.nio.file.Path) new Path(POST_BACK_DIRECTORY_TEST));
   }
 
-  public void delete(File file) {
+  public void delete(File file) throws IOException {
     if (file.isFile() || file.list().length == 0) {
-      file.delete();
+      Files.deleteIfExists((java.nio.file.Path) new Path(file.getAbsolutePath()));
     } else {
       File[] files = file.listFiles();
       for (File f : files) {
         delete(f);
-        f.delete();
+        Files.deleteIfExists((java.nio.file.Path) new Path(f.getAbsolutePath()));
       }
     }
   }
@@ -77,7 +77,6 @@ public class FileManagerTest {
   public void testBackupNowLocalFileInfo() throws IOException {
     Map<String, Set<String>> allFileList = new HashMap<>();
 
-    // TODO create some files
     Random r = new Random(0);
     for (int i = 0; i < 3; i++) {
       for (int j = 0; j < 5; j++) {
@@ -92,12 +91,12 @@ public class FileManagerTest {
         if (!file.getParentFile().exists()) {
           file.getParentFile().mkdirs();
         }
-        if (!file.exists()) {
-          file.createNewFile();
+        if (!file.exists() && !file.createNewFile()) {
+          LOGGER.error("Can not create new file {}", file.getAbsoluteFile());
         }
       }
     }
-    Set<String> lastFileList = new HashSet<>();
+    Set<String> lastFileList;
 
     // lastFileList is empty
     manager.getLastLocalFileList(LAST_FILE_INFO_TEST);
@@ -128,8 +127,8 @@ public class FileManagerTest {
         if (!file.getParentFile().exists()) {
           file.getParentFile().mkdirs();
         }
-        if (!file.exists()) {
-          file.createNewFile();
+        if (!file.exists() && !file.createNewFile()) {
+          LOGGER.error("Can not create new file {}", file.getAbsoluteFile());
         }
       }
     }
@@ -146,7 +145,7 @@ public class FileManagerTest {
     }
     for (Entry<String, Set<String>> entry : deleteFile.entrySet()) {
       for (String path : entry.getValue()) {
-        new File(path).delete();
+        Files.deleteIfExists((java.nio.file.Path) new Path(path));
         allFileList.get(entry.getKey()).remove(path);
       }
     }
@@ -162,7 +161,7 @@ public class FileManagerTest {
   @Test
   public void testGetNowLocalFileList() throws IOException {
     Map<String, Set<String>> allFileList = new HashMap<>();
-    Map<String, Set<String>> fileList = new HashMap<>();
+    Map<String, Set<String>> fileList;
 
     // nowLocalList is empty
     manager.getCurrentLocalFileList(new String[]{SENDER_FILE_PATH_TEST});
@@ -184,8 +183,8 @@ public class FileManagerTest {
         if (!file.getParentFile().exists()) {
           file.getParentFile().mkdirs();
         }
-        if (!file.exists()) {
-          file.createNewFile();
+        if (!file.exists() && !file.createNewFile()) {
+          LOGGER.error("Can not create new file {}", file.getAbsoluteFile());
         }
       }
     }
@@ -211,7 +210,7 @@ public class FileManagerTest {
     }
     for (Entry<String, Set<String>> entry : deleteFile.entrySet()) {
       for (String path : entry.getValue()) {
-        new File(path).delete();
+        Files.deleteIfExists((java.nio.file.Path) new Path(path));
         allFileList.get(entry.getKey()).remove(path);
       }
     }
@@ -229,8 +228,8 @@ public class FileManagerTest {
         if (!file.getParentFile().exists()) {
           file.getParentFile().mkdirs();
         }
-        if (!file.exists()) {
-          file.createNewFile();
+        if (!file.exists() && !file.createNewFile()) {
+          LOGGER.error("Can not create new file {}", file.getAbsoluteFile());
         }
       }
     }
@@ -240,13 +239,13 @@ public class FileManagerTest {
     assert (allFileList.size() == fileList.size());
     for (Entry<String, Set<String>> entry : fileList.entrySet()) {
       assert (allFileList.containsKey(entry.getKey()));
-      System.out.println("allFileList");
+      LOGGER.info("allFileList");
       for (String a : allFileList.get(entry.getKey())) {
-        System.out.println(a);
+        LOGGER.info(a);
       }
-      System.out.println("FileList");
+      LOGGER.info("FileList");
       for (String a : entry.getValue()) {
-        System.out.println(a);
+        LOGGER.info(a);
       }
       assert (allFileList.get(entry.getKey()).containsAll(entry.getValue()));
     }
@@ -254,10 +253,10 @@ public class FileManagerTest {
 
   @Test
   public void testGetSendingFileList() throws IOException {
-    Map<String, Set<String>> allFileList = new HashMap<>();
+    Map<String, Set<String>> allFileList;
     Map<String, Set<String>> newFileList = new HashMap<>();
-    Map<String, Set<String>> sendingFileList = new HashMap<>();
-    Set<String> lastlocalList = new HashSet<>();
+    Map<String, Set<String>> sendingFileList;
+    Set<String> lastlocalList;
 
     // nowSendingList is empty
 
@@ -268,7 +267,7 @@ public class FileManagerTest {
     lastlocalList = manager.getLastLocalFiles();
     manager.getSendingFileList();
     sendingFileList = manager.getSendingFiles();
-    assert (lastlocalList.size() == 0);
+    assert (lastlocalList.isEmpty());
     assert (isEmpty(allFileList));
     assert (isEmpty(sendingFileList));
 
@@ -293,8 +292,8 @@ public class FileManagerTest {
         if (!file.getParentFile().exists()) {
           file.getParentFile().mkdirs();
         }
-        if (!file.exists()) {
-          file.createNewFile();
+        if (!file.exists() && !file.createNewFile()) {
+          LOGGER.error("Can not create new file {}", file.getAbsoluteFile());
         }
       }
     }
@@ -302,7 +301,6 @@ public class FileManagerTest {
     allFileList = manager.getCurrentLocalFiles();
     manager.backupNowLocalFileInfo(LAST_FILE_INFO_TEST);
     manager.getLastLocalFileList(LAST_FILE_INFO_TEST);
-    lastlocalList = manager.getLastLocalFiles();
     manager.getSendingFileList();
     sendingFileList = manager.getSendingFiles();
     assert (sendingFileList.size() == newFileList.size());
@@ -325,7 +323,7 @@ public class FileManagerTest {
     }
     for (Entry<String, Set<String>> entry : deleteFile.entrySet()) {
       for (String path : entry.getValue()) {
-        new File(path).delete();
+        Files.deleteIfExists((java.nio.file.Path) new Path(path));
         allFileList.get(entry.getKey()).remove(path);
       }
     }
@@ -348,15 +346,13 @@ public class FileManagerTest {
         if (!file.getParentFile().exists()) {
           file.getParentFile().mkdirs();
         }
-        if (!file.exists()) {
-          file.createNewFile();
+        if (!file.exists() && !file.createNewFile()) {
+          LOGGER.error("Can not create new file {}", file.getAbsoluteFile());
         }
       }
     }
     manager.getCurrentLocalFileList(new String[]{SENDER_FILE_PATH_TEST});
-    allFileList = manager.getCurrentLocalFiles();
     manager.getLastLocalFileList(LAST_FILE_INFO_TEST);
-    lastlocalList = manager.getLastLocalFiles();
     manager.getSendingFileList();
     sendingFileList = manager.getSendingFiles();
     assert (sendingFileList.size() == newFileList.size());
@@ -368,7 +364,7 @@ public class FileManagerTest {
 
   private boolean isEmpty(Map<String, Set<String>> sendingFileList) {
     for (Entry<String, Set<String>> entry : sendingFileList.entrySet()) {
-      if (entry.getValue().size() != 0) {
+      if (entry.getValue().isEmpty()) {
         return false;
       }
     }
diff --git a/iotdb/src/test/java/org/apache/iotdb/db/postback/sender/IoTDBSingleClientPostBackTest.java b/iotdb/src/test/java/org/apache/iotdb/db/postback/sender/IoTDBSingleClientPostBackTest.java
index b6ce305..04e7fc4 100644
--- a/iotdb/src/test/java/org/apache/iotdb/db/postback/sender/IoTDBSingleClientPostBackTest.java
+++ b/iotdb/src/test/java/org/apache/iotdb/db/postback/sender/IoTDBSingleClientPostBackTest.java
@@ -26,12 +26,15 @@ import java.util.HashSet;
 import java.util.Set;
 import org.apache.iotdb.db.conf.IoTDBConfig;
 import org.apache.iotdb.db.conf.IoTDBDescriptor;
+import org.apache.iotdb.db.exception.StartupException;
 import org.apache.iotdb.db.integration.Constant;
 import org.apache.iotdb.db.postback.conf.PostBackSenderConfig;
 import org.apache.iotdb.db.postback.conf.PostBackSenderDescriptor;
 import org.apache.iotdb.db.service.IoTDB;
 import org.apache.iotdb.db.utils.EnvironmentUtils;
 import org.apache.iotdb.jdbc.Config;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 /**
  * The test is to run a complete postback function Before you run the test, make sure receiver has
@@ -42,13 +45,12 @@ public class IoTDBSingleClientPostBackTest {
   FileSenderImpl fileSenderImpl = FileSenderImpl.getInstance();
   private IoTDBConfig conf = IoTDBDescriptor.getInstance().getConfig();
   private String serverIpTest = "192.168.130.17";
-  ;
   private PostBackSenderConfig config = PostBackSenderDescriptor.getInstance().getConfig();
   private Set<String> dataSender = new HashSet<>();
   private Set<String> dataReceiver = new HashSet<>();
   private boolean success = true;
   private IoTDB deamon;
-  private String[] sqls1 = new String[]{"SET STORAGE GROUP TO root.vehicle",
+  private static final String[] sqls1 = new String[]{"SET STORAGE GROUP TO root.vehicle",
       "SET STORAGE GROUP TO root.test",
       "CREATE TIMESERIES root.vehicle.d0.s0 WITH DATATYPE=INT32, ENCODING=RLE",
       "CREATE TIMESERIES root.vehicle.d0.s1 WITH DATATYPE=TEXT, ENCODING=PLAIN",
@@ -77,7 +79,8 @@ public class IoTDBSingleClientPostBackTest {
       "insert into root.test.d0(timestamp,s0,s1) values(34,1007,'1008')",
       "insert into root.test.d0(timestamp,s1) values(36,'1090')",
       "insert into root.test.d1.g0(timestamp,s0) values(10,1100)", "merge", "flush",};
-  private String[] sqls2 = new String[]{"insert into root.vehicle.d0(timestamp,s0) values(6,120)",
+  private static final String[] sqls2 = new String[]{
+      "insert into root.vehicle.d0(timestamp,s0) values(6,120)",
       "insert into root.vehicle.d0(timestamp,s0,s1) values(38,121,'122')",
       "insert into root.vehicle.d0(timestamp,s1) values(9,'123')",
       "insert into root.vehicle.d0(timestamp,s0) values(16,128)",
@@ -94,7 +97,7 @@ public class IoTDBSingleClientPostBackTest {
       "insert into root.test.d0(timestamp,s0,s1) values(80,427,'528')",
       "insert into root.test.d0(timestamp,s1) values(2,'1209')",
       "insert into root.test.d1.g0(timestamp,s0) values(4,330)", "merge", "flush",};
-  private String[] sqls3 = new String[]{"SET STORAGE GROUP TO root.iotdb",
+  private static final String[] sqls3 = new String[]{"SET STORAGE GROUP TO root.iotdb",
       "SET STORAGE GROUP TO root.flush",
       "CREATE TIMESERIES root.iotdb.d0.s0 WITH DATATYPE=INT32, ENCODING=RLE",
       "CREATE TIMESERIES root.iotdb.d0.s1 WITH DATATYPE=TEXT, ENCODING=PLAIN",
@@ -136,6 +139,8 @@ public class IoTDBSingleClientPostBackTest {
       "insert into root.test.d0(timestamp,s1) values(3000,'1309')",
       "insert into root.test.d1.g0(timestamp,s0) values(400,1050)", "merge", "flush",};
   private boolean testFlag = Constant.testFlag;
+  private static final String POSTBACK = "postback";
+  private static final Logger LOGGER = LoggerFactory.getLogger(IoTDBSingleClientPostBackTest.class);
 
   public static void main(String[] args) throws Exception {
     IoTDBSingleClientPostBackTest singleClientPostBackTest = new IoTDBSingleClientPostBackTest();
@@ -146,9 +151,9 @@ public class IoTDBSingleClientPostBackTest {
   }
 
   public void setConfig() {
-    config.setUuidPath(config.getDataDirectory() + "postback" + File.separator + "uuid.txt");
+    config.setUuidPath(config.getDataDirectory() + POSTBACK + File.separator + "uuid.txt");
     config.setLastFileInfo(
-        config.getDataDirectory() + "postback" + File.separator + "lastLocalFileList.txt");
+        config.getDataDirectory() + POSTBACK + File.separator + "lastLocalFileList.txt");
     String[] iotdbBufferwriteDirectory = config.getIotdbBufferwriteDirectory();
     String[] snapshots = new String[config.getIotdbBufferwriteDirectory().length];
     for (int i = 0; i < config.getIotdbBufferwriteDirectory().length; i++) {
@@ -156,7 +161,7 @@ public class IoTDBSingleClientPostBackTest {
       if (!iotdbBufferwriteDirectory[i].endsWith(File.separator)) {
         iotdbBufferwriteDirectory[i] = iotdbBufferwriteDirectory[i] + File.separator;
       }
-      snapshots[i] = iotdbBufferwriteDirectory[i] + "postback" + File.separator + "dataSnapshot"
+      snapshots[i] = iotdbBufferwriteDirectory[i] + POSTBACK + File.separator + "dataSnapshot"
           + File.separator;
     }
     config.setSnapshotPaths(snapshots);
@@ -165,7 +170,7 @@ public class IoTDBSingleClientPostBackTest {
     fileSenderImpl.setConfig(config);
   }
 
-  public void setUp() throws Exception {
+  public void setUp() throws StartupException {
     if (testFlag) {
       EnvironmentUtils.closeStatMonitor();
       EnvironmentUtils.closeMemControl();
@@ -184,38 +189,30 @@ public class IoTDBSingleClientPostBackTest {
       EnvironmentUtils.cleanEnv();
     }
     if (success) {
-      System.out.println("Test succeed!");
+      LOGGER.info("Test succeed!");
     } else {
-      System.out.println("Test failed!");
+      LOGGER.info("Test failed!");
     }
   }
 
   public void testPostback() {
     if (testFlag) {
       // the first time to postback
-      System.out.println("It's the first time to post back!");
+      LOGGER.info("It's the first time to post back!");
       try {
         Thread.sleep(2000);
         Class.forName(Config.JDBC_DRIVER_NAME);
-        Connection connection = null;
-        try {
-          connection = DriverManager
-              .getConnection(Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root",
-                  "root");
+        try (Connection connection = DriverManager
+            .getConnection(Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root",
+                "root")) {
           Statement statement = connection.createStatement();
           for (String sql : sqls1) {
             statement.execute(sql);
           }
           statement.close();
           Thread.sleep(100);
-        } catch (Exception e) {
-          e.printStackTrace();
-        } finally {
-          if (connection != null) {
-            connection.close();
-          }
         }
-      } catch (ClassNotFoundException | SQLException | InterruptedException e) {
+      } catch (InterruptedException | SQLException | ClassNotFoundException e) {
         fail(e.getMessage());
       }
 
@@ -226,11 +223,9 @@ public class IoTDBSingleClientPostBackTest {
       try {
         Thread.sleep(2000);
         Class.forName(Config.JDBC_DRIVER_NAME);
-        Connection connection = null;
-        try {
-          connection = DriverManager
-              .getConnection(Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root",
-                  "root");
+        try (Connection connection = DriverManager
+            .getConnection(Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root",
+                "root")) {
           Statement statement = connection.createStatement();
           boolean hasResultSet = statement.execute("select * from root.vehicle");
           if (hasResultSet) {
@@ -239,7 +234,7 @@ public class IoTDBSingleClientPostBackTest {
               dataSender.add(res.getString("Time") + res.getString("root.vehicle.d0.s0")
                   + res.getString("root.vehicle.d0.s1") + res.getString("root.vehicle.d1.s2")
                   + res.getString("root.vehicle.d1.s3"));
-              System.out.println(res.getString("Time") + " | " + res.getString("root.vehicle.d0.s0")
+              LOGGER.info(res.getString("Time") + " | " + res.getString("root.vehicle.d0.s0")
                   + res.getString("root.vehicle.d0.s1") + res.getString("root.vehicle.d1.s2")
                   + res.getString("root.vehicle.d1.s3"));
             }
@@ -250,20 +245,17 @@ public class IoTDBSingleClientPostBackTest {
             while (res.next()) {
               dataSender.add(res.getString("Time") + res.getString("root.test.d0.s0")
                   + res.getString("root.test.d0.s1") + res.getString("root.test.d1.g0.s0"));
-              System.out.println(res.getString("Time") + " | " + res.getString("root.test.d0.s0")
+              LOGGER.info(res.getString("Time") + " | " + res.getString("root.test.d0.s0")
                   + res.getString("root.test.d0.s1") + res.getString("root.test.d1.g0.s0"));
             }
           }
           statement.close();
         } catch (Exception e) {
-          e.printStackTrace();
-        } finally {
-          if (connection != null) {
-            connection.close();
-          }
+          LOGGER.error(e.getMessage());
         }
-      } catch (ClassNotFoundException | SQLException | InterruptedException e) {
+      } catch (ClassNotFoundException | InterruptedException e) {
         fail(e.getMessage());
+        Thread.currentThread().interrupt();
       }
 
       dataReceiver.clear();
@@ -282,7 +274,7 @@ public class IoTDBSingleClientPostBackTest {
               dataReceiver.add(res.getString("Time") + res.getString("root.vehicle.d0.s0")
                   + res.getString("root.vehicle.d0.s1") + res.getString("root.vehicle.d1.s2")
                   + res.getString("root.vehicle.d1.s3"));
-              System.out.println(res.getString("Time") + " | " + res.getString("root.vehicle.d0.s0")
+              LOGGER.info(res.getString("Time") + " | " + res.getString("root.vehicle.d0.s0")
                   + res.getString("root.vehicle.d0.s1") + res.getString("root.vehicle.d1.s2")
                   + res.getString("root.vehicle.d1.s3"));
             }
@@ -294,13 +286,13 @@ public class IoTDBSingleClientPostBackTest {
             while (res.next()) {
               dataReceiver.add(res.getString("Time") + res.getString("root.test.d0.s0")
                   + res.getString("root.test.d0.s1") + res.getString("root.test.d1.g0.s0"));
-              System.out.println(res.getString("Time") + " | " + res.getString("root.test.d0.s0")
+              LOGGER.info(res.getString("Time") + " | " + res.getString("root.test.d0.s0")
                   + res.getString("root.test.d0.s1") + res.getString("root.test.d1.g0.s0"));
             }
           }
           statement.close();
         } catch (Exception e) {
-          e.printStackTrace();
+          LOGGER.error(e.getMessage());
         } finally {
           if (connection != null) {
             connection.close();
@@ -308,18 +300,19 @@ public class IoTDBSingleClientPostBackTest {
         }
       } catch (ClassNotFoundException | SQLException | InterruptedException e) {
         fail(e.getMessage());
+        Thread.currentThread().interrupt();
       }
-      System.out.println(dataSender.size());
-      System.out.println(dataReceiver.size());
-      System.out.println(dataSender);
-      System.out.println(dataReceiver);
+      LOGGER.info(String.valueOf(dataSender.size()));
+      LOGGER.info(String.valueOf(dataReceiver.size()));
+      LOGGER.info(dataSender.toString());
+      LOGGER.info(dataReceiver.toString());
       if (!(dataSender.size() == dataReceiver.size() && dataSender.containsAll(dataReceiver))) {
         success = false;
         return;
       }
 
       // the second time to postback
-      System.out.println("It's the second time to post back!");
+      LOGGER.info("It's the second time to post back!");
       try {
         Thread.sleep(2000);
         Class.forName(Config.JDBC_DRIVER_NAME);
@@ -335,7 +328,7 @@ public class IoTDBSingleClientPostBackTest {
           statement.close();
           Thread.sleep(100);
         } catch (Exception e) {
-          e.printStackTrace();
+          LOGGER.error(e.getMessage());
         } finally {
           if (connection != null) {
             connection.close();
@@ -343,6 +336,7 @@ public class IoTDBSingleClientPostBackTest {
         }
       } catch (ClassNotFoundException | SQLException | InterruptedException e) {
         fail(e.getMessage());
+        Thread.currentThread().interrupt();
       }
 
       fileSenderImpl.postback();
@@ -365,7 +359,7 @@ public class IoTDBSingleClientPostBackTest {
               dataSender.add(res.getString("Time") + res.getString("root.vehicle.d0.s0")
                   + res.getString("root.vehicle.d0.s1") + res.getString("root.vehicle.d1.s2")
                   + res.getString("root.vehicle.d1.s3"));
-              System.out.println(res.getString("Time") + " | " + res.getString("root.vehicle.d0.s0")
+              LOGGER.info(res.getString("Time") + " | " + res.getString("root.vehicle.d0.s0")
                   + res.getString("root.vehicle.d0.s1") + res.getString("root.vehicle.d1.s2")
                   + res.getString("root.vehicle.d1.s3"));
             }
@@ -376,13 +370,13 @@ public class IoTDBSingleClientPostBackTest {
             while (res.next()) {
               dataSender.add(res.getString("Time") + res.getString("root.test.d0.s0")
                   + res.getString("root.test.d0.s1") + res.getString("root.test.d1.g0.s0"));
-              System.out.println(res.getString("Time") + " | " + res.getString("root.test.d0.s0")
+              LOGGER.info(res.getString("Time") + " | " + res.getString("root.test.d0.s0")
                   + res.getString("root.test.d0.s1") + res.getString("root.test.d1.g0.s0"));
             }
           }
           statement.close();
         } catch (Exception e) {
-          e.printStackTrace();
+          LOGGER.error(e.getMessage());
         } finally {
           if (connection != null) {
             connection.close();
@@ -390,6 +384,7 @@ public class IoTDBSingleClientPostBackTest {
         }
       } catch (ClassNotFoundException | SQLException | InterruptedException e) {
         fail(e.getMessage());
+        Thread.currentThread().interrupt();
       }
 
       dataReceiver.clear();
@@ -408,7 +403,7 @@ public class IoTDBSingleClientPostBackTest {
               dataReceiver.add(res.getString("Time") + res.getString("root.vehicle.d0.s0")
                   + res.getString("root.vehicle.d0.s1") + res.getString("root.vehicle.d1.s2")
                   + res.getString("root.vehicle.d1.s3"));
-              System.out.println(res.getString("Time") + " | " + res.getString("root.vehicle.d0.s0")
+              LOGGER.info(res.getString("Time") + " | " + res.getString("root.vehicle.d0.s0")
                   + res.getString("root.vehicle.d0.s1") + res.getString("root.vehicle.d1.s2")
                   + res.getString("root.vehicle.d1.s3"));
             }
@@ -419,13 +414,13 @@ public class IoTDBSingleClientPostBackTest {
             while (res.next()) {
               dataReceiver.add(res.getString("Time") + res.getString("root.test.d0.s0")
                   + res.getString("root.test.d0.s1") + res.getString("root.test.d1.g0.s0"));
-              System.out.println(res.getString("Time") + " | " + res.getString("root.test.d0.s0")
+              LOGGER.info(res.getString("Time") + " | " + res.getString("root.test.d0.s0")
                   + res.getString("root.test.d0.s1") + res.getString("root.test.d1.g0.s0"));
             }
           }
           statement.close();
         } catch (Exception e) {
-          e.printStackTrace();
+          LOGGER.error(e.getMessage());
         } finally {
           if (connection != null) {
             connection.close();
@@ -433,26 +428,25 @@ public class IoTDBSingleClientPostBackTest {
         }
       } catch (ClassNotFoundException | SQLException | InterruptedException e) {
         fail(e.getMessage());
+        Thread.currentThread().interrupt();
       }
-      System.out.println(dataSender.size());
-      System.out.println(dataReceiver.size());
-      System.out.println(dataSender);
-      System.out.println(dataReceiver);
+      LOGGER.info(String.valueOf(dataSender.size()));
+      LOGGER.info(String.valueOf(dataReceiver.size()));
+      LOGGER.info(dataSender.toString());
+      LOGGER.info(dataReceiver.toString());
       if (!(dataSender.size() == dataReceiver.size() && dataSender.containsAll(dataReceiver))) {
         success = false;
         return;
       }
 
       // the third time to postback
-      System.out.println("It's the third time to post back!");
+      LOGGER.info("It's the third time to post back!");
       try {
         Thread.sleep(2000);
         Class.forName(Config.JDBC_DRIVER_NAME);
-        Connection connection = null;
-        try {
-          connection = DriverManager
-              .getConnection(Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root",
-                  "root");
+        try (Connection connection = DriverManager
+            .getConnection(Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root",
+                "root")) {
           Statement statement = connection.createStatement();
           for (String sql : sqls3) {
             statement.execute(sql);
@@ -460,14 +454,11 @@ public class IoTDBSingleClientPostBackTest {
           statement.close();
           Thread.sleep(100);
         } catch (Exception e) {
-          e.printStackTrace();
-        } finally {
-          if (connection != null) {
-            connection.close();
-          }
+          LOGGER.error(e.getMessage());
         }
-      } catch (ClassNotFoundException | SQLException | InterruptedException e) {
+      } catch (ClassNotFoundException | InterruptedException e) {
         fail(e.getMessage());
+        Thread.currentThread().interrupt();
       }
 
       fileSenderImpl.postback();
@@ -477,11 +468,9 @@ public class IoTDBSingleClientPostBackTest {
       try {
         Thread.sleep(2000);
         Class.forName(Config.JDBC_DRIVER_NAME);
-        Connection connection = null;
-        try {
-          connection = DriverManager
-              .getConnection(Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root",
-                  "root");
+        try (Connection connection = DriverManager
+            .getConnection(Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root",
+                "root")) {
           Statement statement = connection.createStatement();
           boolean hasResultSet = statement.execute("select * from root.vehicle");
           if (hasResultSet) {
@@ -490,7 +479,7 @@ public class IoTDBSingleClientPostBackTest {
               dataSender.add(res.getString("Time") + res.getString("root.vehicle.d0.s0")
                   + res.getString("root.vehicle.d0.s1") + res.getString("root.vehicle.d1.s2")
                   + res.getString("root.vehicle.d1.s3"));
-              System.out.println(res.getString("Time") + " | " + res.getString("root.vehicle.d0.s0")
+              LOGGER.info(res.getString("Time") + " | " + res.getString("root.vehicle.d0.s0")
                   + res.getString("root.vehicle.d0.s1") + res.getString("root.vehicle.d1.s2")
                   + res.getString("root.vehicle.d1.s3"));
             }
@@ -501,7 +490,7 @@ public class IoTDBSingleClientPostBackTest {
             while (res.next()) {
               dataSender.add(res.getString("Time") + res.getString("root.test.d0.s0")
                   + res.getString("root.test.d0.s1") + res.getString("root.test.d1.g0.s0"));
-              System.out.println(res.getString("Time") + " | " + res.getString("root.test.d0.s0")
+              LOGGER.info(res.getString("Time") + " | " + res.getString("root.test.d0.s0")
                   + res.getString("root.test.d0.s1") + res.getString("root.test.d1.g0.s0"));
             }
           }
@@ -511,7 +500,7 @@ public class IoTDBSingleClientPostBackTest {
             while (res.next()) {
               dataSender.add(res.getString("Time") + res.getString("root.flush.d0.s0")
                   + res.getString("root.flush.d0.s1") + res.getString("root.flush.d1.g0.s0"));
-              System.out.println(res.getString("Time") + " | " + res.getString("root.flush.d0.s0")
+              LOGGER.info(res.getString("Time") + " | " + res.getString("root.flush.d0.s0")
                   + res.getString("root.flush.d0.s1") + res.getString("root.flush.d1.g0.s0"));
             }
           }
@@ -522,21 +511,18 @@ public class IoTDBSingleClientPostBackTest {
               dataSender.add(res.getString("Time") + res.getString("root.iotdb.d0.s0")
                   + res.getString("root.iotdb.d0.s1") + res.getString("root.iotdb.d1.s2")
                   + res.getString("root.iotdb.d1.s3"));
-              System.out.println(res.getString("Time") + res.getString("root.iotdb.d0.s0")
+              LOGGER.info(res.getString("Time") + res.getString("root.iotdb.d0.s0")
                   + res.getString("root.iotdb.d0.s1") + res.getString("root.iotdb.d1.s2")
                   + res.getString("root.iotdb.d1.s3"));
             }
           }
           statement.close();
         } catch (Exception e) {
-          e.printStackTrace();
-        } finally {
-          if (connection != null) {
-            connection.close();
-          }
+          LOGGER.error(e.getMessage());
         }
-      } catch (ClassNotFoundException | SQLException | InterruptedException e) {
+      } catch (ClassNotFoundException | InterruptedException e) {
         fail(e.getMessage());
+        Thread.currentThread().interrupt();
       }
 
       dataReceiver.clear();
@@ -555,7 +541,7 @@ public class IoTDBSingleClientPostBackTest {
               dataReceiver.add(res.getString("Time") + res.getString("root.vehicle.d0.s0")
                   + res.getString("root.vehicle.d0.s1") + res.getString("root.vehicle.d1.s2")
                   + res.getString("root.vehicle.d1.s3"));
-              System.out.println(res.getString("Time") + " | " + res.getString("root.vehicle.d0.s0")
+              LOGGER.info(res.getString("Time") + " | " + res.getString("root.vehicle.d0.s0")
                   + res.getString("root.vehicle.d0.s1") + res.getString("root.vehicle.d1.s2")
                   + res.getString("root.vehicle.d1.s3"));
             }
@@ -566,7 +552,7 @@ public class IoTDBSingleClientPostBackTest {
             while (res.next()) {
               dataReceiver.add(res.getString("Time") + res.getString("root.test.d0.s0")
                   + res.getString("root.test.d0.s1") + res.getString("root.test.d1.g0.s0"));
-              System.out.println(res.getString("Time") + " | " + res.getString("root.test.d0.s0")
+              LOGGER.info(res.getString("Time") + " | " + res.getString("root.test.d0.s0")
                   + res.getString("root.test.d0.s1") + res.getString("root.test.d1.g0.s0"));
             }
           }
@@ -576,7 +562,7 @@ public class IoTDBSingleClientPostBackTest {
             while (res.next()) {
               dataReceiver.add(res.getString("Time") + res.getString("root.flush.d0.s0")
                   + res.getString("root.flush.d0.s1") + res.getString("root.flush.d1.g0.s0"));
-              System.out.println(res.getString("Time") + " | " + res.getString("root.flush.d0.s0")
+              LOGGER.info(res.getString("Time") + " | " + res.getString("root.flush.d0.s0")
                   + res.getString("root.flush.d0.s1") + res.getString("root.flush.d1.g0.s0"));
             }
           }
@@ -587,14 +573,14 @@ public class IoTDBSingleClientPostBackTest {
               dataReceiver.add(res.getString("Time") + res.getString("root.iotdb.d0.s0")
                   + res.getString("root.iotdb.d0.s1") + res.getString("root.iotdb.d1.s2")
                   + res.getString("root.iotdb.d1.s3"));
-              System.out.println(res.getString("Time") + res.getString("root.iotdb.d0.s0")
+              LOGGER.info(res.getString("Time") + res.getString("root.iotdb.d0.s0")
                   + res.getString("root.iotdb.d0.s1") + res.getString("root.iotdb.d1.s2")
                   + res.getString("root.iotdb.d1.s3"));
             }
           }
           statement.close();
         } catch (Exception e) {
-          e.printStackTrace();
+          LOGGER.error(e.getMessage());
         } finally {
           if (connection != null) {
             connection.close();
@@ -602,14 +588,14 @@ public class IoTDBSingleClientPostBackTest {
         }
       } catch (ClassNotFoundException | SQLException | InterruptedException e) {
         fail(e.getMessage());
+        Thread.currentThread().interrupt();
       }
-      System.out.println(dataSender.size());
-      System.out.println(dataReceiver.size());
-      System.out.println(dataSender);
-      System.out.println(dataReceiver);
+      LOGGER.info(String.valueOf(dataSender.size()));
+      LOGGER.info(String.valueOf(dataReceiver.size()));
+      LOGGER.info(String.valueOf(dataSender));
+      LOGGER.info(String.valueOf(dataReceiver));
       if (!(dataSender.size() == dataReceiver.size() && dataSender.containsAll(dataReceiver))) {
         success = false;
-        return;
       }
     }
   }
diff --git a/iotdb/src/test/java/org/apache/iotdb/db/postback/sender/MultipleClientPostBackTest.java b/iotdb/src/test/java/org/apache/iotdb/db/postback/sender/MultipleClientPostBackTest.java
index 77c102c..12876fc 100644
--- a/iotdb/src/test/java/org/apache/iotdb/db/postback/sender/MultipleClientPostBackTest.java
+++ b/iotdb/src/test/java/org/apache/iotdb/db/postback/sender/MultipleClientPostBackTest.java
@@ -1,19 +1,15 @@
 /**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
+ * Licensed to the Apache Software Foundation (ASF) under one or more contributor license
+ * agreements.  See the NOTICE file distributed with this work for additional information regarding
+ * copyright ownership.  The ASF licenses this file to you under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with the License.  You may obtain
+ * a copy of the License at
  *
- *     http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
  *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
+ * Unless required by applicable law or agreed to in writing, software distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
+ * or implied.  See the License for the specific language governing permissions and limitations
  * under the License.
  */
 package org.apache.iotdb.db.postback.sender;
@@ -35,11 +31,14 @@ import java.util.HashSet;
 import java.util.Map;
 import java.util.Set;
 import org.apache.iotdb.jdbc.Config;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class MultipleClientPostBackTest {
 
   Map<String, ArrayList<String>> timeseriesList = new HashMap();
   Map<String, ArrayList<String>> timeseriesList1 = new HashMap();
+  private static final Logger LOGGER = LoggerFactory.getLogger(MultipleClientPostBackTest.class);
   private Set<String> dataSender = new HashSet<>();
   private Set<String> dataReceiver = new HashSet<>();
 
@@ -50,14 +49,14 @@ public class MultipleClientPostBackTest {
 
   public void testPostback() throws IOException {
 
-    timeseriesList1.put("root.vehicle_history1", new ArrayList<String>());
-    timeseriesList1.put("root.vehicle_alarm1", new ArrayList<String>());
-    timeseriesList1.put("root.vehicle_temp1", new ArrayList<String>());
-    timeseriesList1.put("root.range_event1", new ArrayList<String>());
-    timeseriesList.put("root.vehicle_history", new ArrayList<String>());
-    timeseriesList.put("root.vehicle_alarm", new ArrayList<String>());
-    timeseriesList.put("root.vehicle_temp", new ArrayList<String>());
-    timeseriesList.put("root.range_event", new ArrayList<String>());
+    timeseriesList1.put("root.vehicle_history1", new ArrayList<>());
+    timeseriesList1.put("root.vehicle_alarm1", new ArrayList<>());
+    timeseriesList1.put("root.vehicle_temp1", new ArrayList<>());
+    timeseriesList1.put("root.range_event1", new ArrayList<>());
+    timeseriesList.put("root.vehicle_history", new ArrayList<>());
+    timeseriesList.put("root.vehicle_alarm", new ArrayList<>());
+    timeseriesList.put("root.vehicle_temp", new ArrayList<>());
+    timeseriesList.put("root.range_event", new ArrayList<>());
 
     File file = new File("CreateTimeseries1.txt");
     BufferedReader reader = new BufferedReader(new FileReader(file));
@@ -86,71 +85,9 @@ public class MultipleClientPostBackTest {
       }
     }
 
-    // Compare data of sender and receiver
-    // for(String storageGroup:timeseriesList.keySet()) {
-    // String sqlFormat = "select %s from %s where time < 1518090019515";
-    // System.out.println(storageGroup + ":");
-    // int count=0;
-    // int count1 =0 ;
-    // int count2 = 0;
-    // for(String timesery:timeseriesList.get(storageGroup)) {
-    // count++;
-    // count1=0;
-    // count2=0;
-    // dataSender.clear();
-    // dataReceiver.clear();
-    // try {
-    // Class.forName(TsfileJDBCConfig.JDBC_DRIVER_NAME);
-    // Connection connection = null;
-    // Connection connection1 = null;
-    // try {
-    // connection = DriverManager.getConnection("jdbc:iotdb://166.111.7.249:6667/", "root", "root");
-    // connection1 = DriverManager.getConnection("jdbc:iotdb://166.111.7.250:6667/", "root", "root");
-    // Statement statement = connection.createStatement();
-    // Statement statement1 = connection1.createStatement();
-    // String SQL = String.format(sqlFormat, timesery, storageGroup);
-    // System.out.println(SQL);
-    // boolean hasResultSet = statement.executeWithGlobalTimeFilter(SQL);
-    // boolean hasResultSet1 = statement1.executeWithGlobalTimeFilter(SQL);
-    // if (hasResultSet) {
-    // ResultSet res = statement.getResultSet();
-    // while (res.next()) {
-    // count1++;
-    // dataSender.add(res.getString("Time") + res.getString(storageGroup + "." + timesery));
-    // }
-    // }
-    // if (hasResultSet1) {
-    // ResultSet res = statement1.getResultSet();
-    // while (res.next()) {
-    // count2++;
-    // dataReceiver.add(res.getString("Time") + res.getString(storageGroup + "." + timesery));
-    // }
-    // }
-    // assert((dataSender.size()==dataReceiver.size()) && dataSender.containsAll(dataReceiver));
-    // statement.close();
-    // statement1.close();
-    // } catch (Exception e) {
-    // e.printStackTrace();
-    // } finally {
-    // if (connection != null) {
-    // connection.close();
-    // }
-    // if (connection1 != null) {
-    // connection1.close();
-    // }
-    // }
-    // } catch (ClassNotFoundException | SQLException e) {
-    // fail(e.getMessage());
-    // }
-    // System.out.println(count1);
-    // System.out.println(count2);
-    // if(count > 1)
-    // break;
-    // }
-    // }
     for (String storageGroup : timeseriesList.keySet()) {
       String sqlFormat = "select %s from %s";
-      System.out.println(storageGroup + ":");
+      LOGGER.info(String.format("%s:", storageGroup));
       int count = 0;
       int count1 = 0;
       int count2 = 0;
@@ -171,9 +108,9 @@ public class MultipleClientPostBackTest {
                 .getConnection("jdbc:iotdb://192.168.130.16:6667/", "root", "root");
             Statement statement = connection.createStatement();
             Statement statement1 = connection1.createStatement();
-            String SQL = String.format(sqlFormat, timesery, storageGroup);
-            boolean hasResultSet = statement.execute(SQL);
-            boolean hasResultSet1 = statement1.execute(SQL);
+            String sql = String.format(sqlFormat, timesery, storageGroup);
+            boolean hasResultSet = statement.execute(sql);
+            boolean hasResultSet1 = statement1.execute(sql);
             if (hasResultSet) {
               ResultSet res = statement.getResultSet();
               while (res.next()) {
@@ -195,7 +132,7 @@ public class MultipleClientPostBackTest {
             statement.close();
             statement1.close();
           } catch (Exception e) {
-            e.printStackTrace();
+            LOGGER.error(e.getMessage());
           } finally {
             if (connection != null) {
               connection.close();
@@ -207,20 +144,20 @@ public class MultipleClientPostBackTest {
         } catch (ClassNotFoundException | SQLException e) {
           fail(e.getMessage());
         }
-          if (count > 20) {
-              break;
-          }
-        System.out.println(count1);
-        System.out.println(count2);
+        if (count > 20) {
+          break;
+        }
+        LOGGER.info(String.valueOf(count1));
+        LOGGER.info(String.valueOf(count2));
       }
     }
 
     for (String storageGroup : timeseriesList1.keySet()) {
       String sqlFormat = "select %s from %s";
-      System.out.println(storageGroup + ":");
+      LOGGER.info(String.format("%s:", storageGroup));
       int count = 0;
-      int count1 = 0;
-      int count2 = 0;
+      int count1;
+      int count2;
       for (String timesery : timeseriesList1.get(storageGroup)) {
         count++;
         count1 = 0;
@@ -238,9 +175,9 @@ public class MultipleClientPostBackTest {
                 .getConnection("jdbc:iotdb://192.168.130.16:6667/", "root", "root");
             Statement statement = connection.createStatement();
             Statement statement1 = connection1.createStatement();
-            String SQL = String.format(sqlFormat, timesery, storageGroup);
-            boolean hasResultSet = statement.execute(SQL);
-            boolean hasResultSet1 = statement1.execute(SQL);
+            String sql = String.format(sqlFormat, timesery, storageGroup);
+            boolean hasResultSet = statement.execute(sql);
+            boolean hasResultSet1 = statement1.execute(sql);
             if (hasResultSet) {
               ResultSet res = statement.getResultSet();
               while (res.next()) {
@@ -262,7 +199,7 @@ public class MultipleClientPostBackTest {
             statement.close();
             statement1.close();
           } catch (Exception e) {
-            e.printStackTrace();
+            LOGGER.error(e.getMessage());
           } finally {
             if (connection != null) {
               connection.close();
@@ -274,11 +211,11 @@ public class MultipleClientPostBackTest {
         } catch (ClassNotFoundException | SQLException e) {
           fail(e.getMessage());
         }
-          if (count > 20) {
-              break;
-          }
-        System.out.println(count1);
-        System.out.println(count2);
+        if (count > 20) {
+          break;
+        }
+        LOGGER.info(String.valueOf(count1));
+        LOGGER.info(String.valueOf(count2));
       }
     }
   }