diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/LeveldbRMStateStore.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/LeveldbRMStateStore.java index 026f9e476a3..2e0dca2c853 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/LeveldbRMStateStore.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/recovery/LeveldbRMStateStore.java @@ -153,7 +153,11 @@ private Path getStorageDir() throws IOException { private Path createStorageDir() throws IOException { Path root = getStorageDir(); FileSystem fs = FileSystem.getLocal(getConfig()); - fs.mkdirs(root, new FsPermission((short)0700)); + FsPermission perm = new FsPermission((short)0700); + fs.mkdirs(root, perm); + if (!perm.equals(perm.applyUMask(FsPermission.getUMask(getConfig())))) { + fs.setPermission(root, perm); + } return root; }