Browse Source

HADOOP-3066. Should not require superuser privilege to query if hdfs is in safe mode

git-svn-id: https://svn.apache.org/repos/asf/hadoop/core/trunk@639870 13f79535-47bb-0310-9956-ffa450edef68
Jim Kellerman 17 years ago
parent
commit
6d52a719cb
2 changed files with 13 additions and 9 deletions
  1. 3 0
      CHANGES.txt
  2. 10 9
      src/java/org/apache/hadoop/dfs/FSNamesystem.java

+ 3 - 0
CHANGES.txt

@@ -326,6 +326,9 @@ Trunk (unreleased changes)
 
     HADOOP-3012. dfs -mv file to user home directory throws exception if 
     the user home directory does not exist. (Mahadev Konar via dhruba)
+    
+    HADOOP-3066. Should not require superuser privilege to query if hdfs is in
+    safe mode (jimk)
 
 Release 0.16.2 - Unreleased
 

+ 10 - 9
src/java/org/apache/hadoop/dfs/FSNamesystem.java

@@ -3936,15 +3936,16 @@ class FSNamesystem implements FSConstants, FSNamesystemMBean {
   }
     
   boolean setSafeMode(SafeModeAction action) throws IOException {
-    checkSuperuserPrivilege();
-    switch(action) {
-    case SAFEMODE_LEAVE: // leave safe mode
-      leaveSafeMode(false);
-      break;
-    case SAFEMODE_ENTER: // enter safe mode
-      enterSafeMode();
-      break;
-    case SAFEMODE_GET: // get safe mode
+    if (action != SafeModeAction.SAFEMODE_GET) {
+      checkSuperuserPrivilege();
+      switch(action) {
+      case SAFEMODE_LEAVE: // leave safe mode
+        leaveSafeMode(false);
+        break;
+      case SAFEMODE_ENTER: // enter safe mode
+        enterSafeMode();
+        break;
+      }
     }
     return isInSafeMode();
   }