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

xingtanzjr pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/iotdb.git


The following commit(s) were added to refs/heads/master by this push:
     new 3bdb5d2cf52 fix code smells in settle package (#10293)
3bdb5d2cf52 is described below

commit 3bdb5d2cf524118052b6b93675cb69d6ece140ac
Author: shuwenwei <[email protected]>
AuthorDate: Mon Jun 26 10:07:55 2023 +0800

    fix code smells in settle package (#10293)
---
 .../java/org/apache/iotdb/db/engine/settle/SettleLog.java     |  6 +++++-
 .../apache/iotdb/db/engine/settle/SettleRequestHandler.java   | 11 +++++++----
 .../java/org/apache/iotdb/db/engine/settle/SettleTask.java    |  6 ++++--
 3 files changed, 16 insertions(+), 7 deletions(-)

diff --git 
a/server/src/main/java/org/apache/iotdb/db/engine/settle/SettleLog.java 
b/server/src/main/java/org/apache/iotdb/db/engine/settle/SettleLog.java
index 8eb102a4aeb..7dcc7bf1b6e 100644
--- a/server/src/main/java/org/apache/iotdb/db/engine/settle/SettleLog.java
+++ b/server/src/main/java/org/apache/iotdb/db/engine/settle/SettleLog.java
@@ -51,7 +51,11 @@ public class SettleLog {
       if (!settleLogPath.getParentFile().exists()) {
         settleLogPath.getParentFile().mkdirs();
       }
-      settleLogPath.createNewFile();
+      boolean success = settleLogPath.createNewFile();
+      if (!success && settleLogPath.isDirectory()) {
+        logger.error("meet error when creating settle log, file path:{}", 
settleLogPath);
+        return false;
+      }
       settleLogWriter = new BufferedWriter(new FileWriter(getSettleLogPath(), 
true));
       return true;
     } catch (IOException e) {
diff --git 
a/server/src/main/java/org/apache/iotdb/db/engine/settle/SettleRequestHandler.java
 
b/server/src/main/java/org/apache/iotdb/db/engine/settle/SettleRequestHandler.java
index a4cec2403e2..9092b3f994a 100644
--- 
a/server/src/main/java/org/apache/iotdb/db/engine/settle/SettleRequestHandler.java
+++ 
b/server/src/main/java/org/apache/iotdb/db/engine/settle/SettleRequestHandler.java
@@ -50,9 +50,12 @@ import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
 
+@SuppressWarnings("squid:S6548")
 public class SettleRequestHandler {
   private static final Logger logger = 
LoggerFactory.getLogger(SettleRequestHandler.class);
 
+  private SettleRequestHandler() {}
+
   private boolean testMode = false;
 
   public boolean isTestMode() {
@@ -101,8 +104,9 @@ public class SettleRequestHandler {
       this.config = IoTDBDescriptor.getInstance().getConfig();
     }
 
+    @SuppressWarnings("squid:S3776")
     private TSStatus validate() {
-      if (paths == null || paths.size() == 0) {
+      if (paths == null || paths.isEmpty()) {
         return RpcUtils.getStatus(
             TSStatusCode.ILLEGAL_PARAMETER, "The files to settle is not 
offered.");
       }
@@ -235,9 +239,7 @@ public class SettleRequestHandler {
                 "The TsFile is not valid: " + tsFile.getAbsolutePath());
           }
           continuousCount++;
-          continue;
-        }
-        if (continuousCount != 0) {
+        } else if (continuousCount != 0) {
           break;
         }
       }
@@ -282,6 +284,7 @@ public class SettleRequestHandler {
             "meet error when adding task-{} to compaction waiting queue: {}",
             task.getSerialId(),
             e.getMessage());
+        Thread.currentThread().interrupt();
         return RpcUtils.getStatus(
             TSStatusCode.COMPACTION_ERROR, "meet error when submit settle 
task.");
       }
diff --git 
a/server/src/main/java/org/apache/iotdb/db/engine/settle/SettleTask.java 
b/server/src/main/java/org/apache/iotdb/db/engine/settle/SettleTask.java
index 50e431c4dea..40dd20b9ad3 100644
--- a/server/src/main/java/org/apache/iotdb/db/engine/settle/SettleTask.java
+++ b/server/src/main/java/org/apache/iotdb/db/engine/settle/SettleTask.java
@@ -83,9 +83,11 @@ public class SettleTask extends WrappedRunnable {
         | IOException
         | org.apache.iotdb.tsfile.exception.write.WriteProcessException e) {
       resourceToBeSettled.readUnlock();
-      logger.error("Exception to parse the tsfile in settling", e);
       throw new WriteProcessException(
-          "Meet error when settling file: " + 
resourceToBeSettled.getTsFile().getAbsolutePath(), e);
+          String.format(
+              "Exception to parse the tsfile: %s in settling",
+              resourceToBeSettled.getTsFile().getAbsolutePath()),
+          e);
     }
     resourceToBeSettled.getSettleTsFileCallBack().call(resourceToBeSettled, 
settledResources);
 

Reply via email to