From e8d7e3b4e67e475f836b06180bd1f760d327f4bf Mon Sep 17 00:00:00 2001 From: avijayanhwx Date: Tue, 19 Feb 2019 16:32:47 -0800 Subject: [PATCH] HDDS-1139 : Fix findbugs issues caused by HDDS-1085. Contributed by Aravindan Vijayan. --- .../hadoop/utils/db/RDBCheckpointManager.java | 2 +- .../java/org/apache/hadoop/utils/db/RDBStore.java | 5 ++++- .../common/src/main/resources/ozone-default.xml | 9 +++++++++ .../main/java/org/apache/hadoop/ozone/OmUtils.java | 14 ++++++++++---- .../hadoop/ozone/om/OMDbSnapshotServlet.java | 4 ++-- 5 files changed, 26 insertions(+), 8 deletions(-) diff --git a/hadoop-hdds/common/src/main/java/org/apache/hadoop/utils/db/RDBCheckpointManager.java b/hadoop-hdds/common/src/main/java/org/apache/hadoop/utils/db/RDBCheckpointManager.java index fe43e32abf..2ed2c59d66 100644 --- a/hadoop-hdds/common/src/main/java/org/apache/hadoop/utils/db/RDBCheckpointManager.java +++ b/hadoop-hdds/common/src/main/java/org/apache/hadoop/utils/db/RDBCheckpointManager.java @@ -93,7 +93,7 @@ public RocksDBCheckpointSnapshot createCheckpointSnapshot(String parentDir) return null; } - class RocksDBCheckpointSnapshot implements DBCheckpointSnapshot { + static class RocksDBCheckpointSnapshot implements DBCheckpointSnapshot { private Path checkpointLocation; private long checkpointTimestamp; diff --git a/hadoop-hdds/common/src/main/java/org/apache/hadoop/utils/db/RDBStore.java b/hadoop-hdds/common/src/main/java/org/apache/hadoop/utils/db/RDBStore.java index 6850eec85b..35b95b625f 100644 --- a/hadoop-hdds/common/src/main/java/org/apache/hadoop/utils/db/RDBStore.java +++ b/hadoop-hdds/common/src/main/java/org/apache/hadoop/utils/db/RDBStore.java @@ -119,7 +119,10 @@ public RDBStore(File dbFile, DBOptions options, Set families, OM_DB_CHECKPOINTS_DIR_NAME).toString(); File checkpointsDir = new File(checkpointsParentDir); if (!checkpointsDir.exists()) { - checkpointsDir.mkdir(); + boolean success = checkpointsDir.mkdir(); + if (!success) { + LOG.warn("Unable to create RocksDB checkpoint directory"); + } } //Initialize checkpoint manager diff --git a/hadoop-hdds/common/src/main/resources/ozone-default.xml b/hadoop-hdds/common/src/main/resources/ozone-default.xml index 7dc6c5d57b..2c88fafbcc 100644 --- a/hadoop-hdds/common/src/main/resources/ozone-default.xml +++ b/hadoop-hdds/common/src/main/resources/ozone-default.xml @@ -1881,4 +1881,13 @@ jar and false for the ozone-filesystem-lib.jar + + ozone.manager.db.snapshot.transfer.bandwidthPerSec + 0 + OZONE + + Maximum bandwidth used for Ozone Manager DB checkpoint download through + the servlet. + + \ No newline at end of file diff --git a/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/OmUtils.java b/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/OmUtils.java index 093fac2d43..6b716ef2c4 100644 --- a/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/OmUtils.java +++ b/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/OmUtils.java @@ -315,8 +315,10 @@ public static File createTarFile(Path sourcePath) throws IOException { tarOs = new TarArchiveOutputStream(gzipOutputStream); File folder = new File(sourceDir); File[] filesInDir = folder.listFiles(); - for (File file : filesInDir) { - addFilesToArchive(file.getName(), file, tarOs); + if (filesInDir != null) { + for (File file : filesInDir) { + addFilesToArchive(file.getName(), file, tarOs); + } } return new File(fileName); } finally { @@ -343,8 +345,12 @@ private static void addFilesToArchive(String source, File file, fileInputStream.close(); } else if (file.isDirectory()) { tarFileOutputStream.closeArchiveEntry(); - for (File cFile : file.listFiles()) { - addFilesToArchive(cFile.getAbsolutePath(), cFile, tarFileOutputStream); + File[] filesInDir = file.listFiles(); + if (filesInDir != null) { + for (File cFile : filesInDir) { + addFilesToArchive(cFile.getAbsolutePath(), cFile, + tarFileOutputStream); + } } } } diff --git a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/OMDbSnapshotServlet.java b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/OMDbSnapshotServlet.java index 287a6846a9..166407d8a3 100644 --- a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/OMDbSnapshotServlet.java +++ b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/OMDbSnapshotServlet.java @@ -50,9 +50,10 @@ public class OMDbSnapshotServlet extends HttpServlet { private static final Logger LOG = LoggerFactory.getLogger(OMDbSnapshotServlet.class); + private static final long serialVersionUID = 1L; private transient DBStore omDbStore; - private DataTransferThrottler throttler = null; + private transient DataTransferThrottler throttler = null; @Override public void init() throws ServletException { @@ -111,7 +112,6 @@ public void doGet(HttpServletRequest request, HttpServletResponse response) { response.setStatus(HttpServletResponse.SC_INTERNAL_SERVER_ERROR); return; } - LOG.info("Tar location = " + checkPointTarFile.getAbsolutePath()); checkPointTarFile = OmUtils.createTarFile( checkpoint.getCheckpointLocation()); LOG.info("Tar location = " + checkPointTarFile.getAbsolutePath());