This is an automated email from the ASF dual-hosted git repository. haonan pushed a commit to branch sonarBugs in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 7a4cc331f7a6dfedc50bdd82b31fdf454e0c5af5 Author: HTHou <[email protected]> AuthorDate: Tue May 11 12:05:27 2021 +0800 Fix some bugs reported by sonar --- .../apache/iotdb/db/engine/compaction/TsFileManagement.java | 4 +++- .../compaction/level/LevelCompactionTsFileManagement.java | 6 ++++-- .../org/apache/iotdb/db/engine/merge/task/MergeFileTask.java | 8 ++++++-- .../org/apache/iotdb/db/metrics/server/ServerArgument.java | 12 ++++++++++-- .../java/org/apache/iotdb/db/service/MetricsService.java | 3 +++ .../java/org/apache/iotdb/db/metadata/MManagerBasicTest.java | 1 + .../test/java/org/apache/iotdb/db/metadata/MTreeTest.java | 1 + .../main/java/org/apache/iotdb/tsfile/utils/PublicBAOS.java | 1 + 8 files changed, 29 insertions(+), 7 deletions(-) diff --git a/server/src/main/java/org/apache/iotdb/db/engine/compaction/TsFileManagement.java b/server/src/main/java/org/apache/iotdb/db/engine/compaction/TsFileManagement.java index a5ea1da..0dceb12 100644 --- a/server/src/main/java/org/apache/iotdb/db/engine/compaction/TsFileManagement.java +++ b/server/src/main/java/org/apache/iotdb/db/engine/compaction/TsFileManagement.java @@ -408,7 +408,9 @@ public abstract class TsFileManagement { File mergedFile = FSFactoryProducer.getFSFactory().getFile(seqFile.getTsFilePath() + MERGE_SUFFIX); if (mergedFile.exists()) { - mergedFile.delete(); + if (!mergedFile.delete()) { + logger.warn("Delete file {} failed", mergedFile); + } } updateMergeModification(seqFile); } finally { diff --git a/server/src/main/java/org/apache/iotdb/db/engine/compaction/level/LevelCompactionTsFileManagement.java b/server/src/main/java/org/apache/iotdb/db/engine/compaction/level/LevelCompactionTsFileManagement.java index 6bac52a..98f1c2e 100644 --- a/server/src/main/java/org/apache/iotdb/db/engine/compaction/level/LevelCompactionTsFileManagement.java +++ b/server/src/main/java/org/apache/iotdb/db/engine/compaction/level/LevelCompactionTsFileManagement.java @@ -417,7 +417,7 @@ public class LevelCompactionTsFileManagement extends TsFileManagement { /** recover files */ @Override - @SuppressWarnings("squid:S3776") + @SuppressWarnings({"squid:S3776", "squid:S2142"}) public void recover() { File logFile = FSFactoryProducer.getFSFactory() @@ -847,7 +847,9 @@ public class LevelCompactionTsFileManagement extends TsFileManagement { if (targetFilePath != null) { File targetFile = new File(targetFilePath); if (targetFile.exists()) { - targetFile.delete(); + if (!targetFile.delete()) { + logger.warn("Delete file {} failed", targetFile); + } } } } diff --git a/server/src/main/java/org/apache/iotdb/db/engine/merge/task/MergeFileTask.java b/server/src/main/java/org/apache/iotdb/db/engine/merge/task/MergeFileTask.java index 8d81d71..67bf9d8 100644 --- a/server/src/main/java/org/apache/iotdb/db/engine/merge/task/MergeFileTask.java +++ b/server/src/main/java/org/apache/iotdb/db/engine/merge/task/MergeFileTask.java @@ -208,7 +208,9 @@ public class MergeFileTask { mergeLogger.logFileMergeEnd(); logger.debug("{} moved merged chunks of {} to the old file", taskName, seqFile); - newFileWriter.getFile().delete(); + if (!newFileWriter.getFile().delete()) { + logger.warn("Delete file {} failed", newFileWriter.getFile()); + } // change tsFile name File nextMergeVersionFile = modifyTsFileNameUnseqMergCnt(seqFile.getTsFile()); fsFactory.moveFile(seqFile.getTsFile(), nextMergeVersionFile); @@ -359,7 +361,9 @@ public class MergeFileTask { FileReaderManager.getInstance().closeFileAndRemoveReader(seqFile.getTsFilePath()); // change tsFile name - seqFile.getTsFile().delete(); + if (!seqFile.getTsFile().delete()) { + logger.warn("Delete file {} failed", seqFile.getTsFile()); + } File nextMergeVersionFile = modifyTsFileNameUnseqMergCnt(seqFile.getTsFile()); fsFactory.moveFile(fileWriter.getFile(), nextMergeVersionFile); fsFactory.moveFile( diff --git a/server/src/main/java/org/apache/iotdb/db/metrics/server/ServerArgument.java b/server/src/main/java/org/apache/iotdb/db/metrics/server/ServerArgument.java index 0a04e87..a7e2fa7 100644 --- a/server/src/main/java/org/apache/iotdb/db/metrics/server/ServerArgument.java +++ b/server/src/main/java/org/apache/iotdb/db/metrics/server/ServerArgument.java @@ -181,7 +181,11 @@ public class ServerArgument { private int getCpuRateForLinux() { try { long[] c0 = readLinuxCpu(); - Thread.sleep(CPUTIME); + try { + Thread.sleep(CPUTIME); + } catch (InterruptedException e) { + Thread.currentThread().interrupt(); + } long[] c1 = readLinuxCpu(); if (c0 != null && c1 != null) { long idleCpuTime = c1[0] - c0[0]; @@ -207,7 +211,11 @@ public class ServerArgument { + "\\system32\\wbem\\wmic.exe process get Caption,CommandLine," + "KernelModeTime,ReadOperationCount,ThreadCount,UserModeTime,WriteOperationCount"; long[] c0 = readWinCpu(Runtime.getRuntime().exec(procCmd)); - Thread.sleep(CPUTIME); + try { + Thread.sleep(CPUTIME); + } catch (InterruptedException e) { + Thread.currentThread().interrupt(); + } long[] c1 = readWinCpu(Runtime.getRuntime().exec(procCmd)); if (c0 != null && c1 != null) { long idletime = c1[0] - c0[0]; diff --git a/server/src/main/java/org/apache/iotdb/db/service/MetricsService.java b/server/src/main/java/org/apache/iotdb/db/service/MetricsService.java index e910dcc..cb15eac 100644 --- a/server/src/main/java/org/apache/iotdb/db/service/MetricsService.java +++ b/server/src/main/java/org/apache/iotdb/db/service/MetricsService.java @@ -140,6 +140,9 @@ public class MetricsService implements MetricsServiceMBean, IService { } executorService = null; } + } catch (InterruptedException e) { + logger.warn("MetricsService can not be closed in {} ms", 3000); + Thread.currentThread().interrupt(); } catch (Exception e) { logger.error( "{}: close {} failed because {}", IoTDBConstant.GLOBAL_DB_NAME, getID().getName(), e); diff --git a/server/src/test/java/org/apache/iotdb/db/metadata/MManagerBasicTest.java b/server/src/test/java/org/apache/iotdb/db/metadata/MManagerBasicTest.java index 1e86e89..0fe801a 100644 --- a/server/src/test/java/org/apache/iotdb/db/metadata/MManagerBasicTest.java +++ b/server/src/test/java/org/apache/iotdb/db/metadata/MManagerBasicTest.java @@ -361,6 +361,7 @@ public class MManagerBasicTest { } @Test + @SuppressWarnings("squid:S5783") public void testGetAllTimeseriesCount() { MManager manager = IoTDB.metaManager; diff --git a/server/src/test/java/org/apache/iotdb/db/metadata/MTreeTest.java b/server/src/test/java/org/apache/iotdb/db/metadata/MTreeTest.java index 66cba27..a9a1b9d 100644 --- a/server/src/test/java/org/apache/iotdb/db/metadata/MTreeTest.java +++ b/server/src/test/java/org/apache/iotdb/db/metadata/MTreeTest.java @@ -59,6 +59,7 @@ public class MTreeTest { } @Test + @SuppressWarnings("squid:S5783") public void testSetStorageGroupExceptionMessage() throws IllegalPathException { MTree root = new MTree(); try { diff --git a/tsfile/src/main/java/org/apache/iotdb/tsfile/utils/PublicBAOS.java b/tsfile/src/main/java/org/apache/iotdb/tsfile/utils/PublicBAOS.java index 61efe8e..90c2d0f 100644 --- a/tsfile/src/main/java/org/apache/iotdb/tsfile/utils/PublicBAOS.java +++ b/tsfile/src/main/java/org/apache/iotdb/tsfile/utils/PublicBAOS.java @@ -83,6 +83,7 @@ public class PublicBAOS extends ByteArrayOutputStream { * https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=173085039 */ @Override + @SuppressWarnings("squid:S3551") public int size() { return count; }
