Ver código fonte

HDFS-7797. Add audit log for setQuota operation (Rakesh R via umamahesh)

(cherry picked from commit f24a56787a15e89a7c1e777b8043ab9ae8792505)
Uma Maheswara Rao G 10 anos atrás
pai
commit
35fecb5306

+ 2 - 0
hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt

@@ -344,6 +344,8 @@ Release 2.7.0 - UNRELEASED
     HDFS-7604. Track and display failed DataNode storage locations in NameNode.
     (cnauroth)
 
+    HDFS-7797. Add audit log for setQuota operation (Rakesh R via umamahesh)
+
   OPTIMIZATIONS
 
     HDFS-7454. Reduce memory footprint for AclEntries in NameNode.

+ 6 - 1
hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java

@@ -3813,14 +3813,19 @@ public class FSNamesystem implements Namesystem, FSNamesystemMBean,
       throws IOException {
     checkOperation(OperationCategory.WRITE);
     writeLock();
+    boolean success = false;
     try {
       checkOperation(OperationCategory.WRITE);
       checkNameNodeSafeMode("Cannot set quota on " + src);
       FSDirAttrOp.setQuota(dir, src, nsQuota, ssQuota, type);
+      success = true;
     } finally {
       writeUnlock();
+      if (success) {
+        getEditLog().logSync();
+      }
+      logAuditEvent(success, "setQuota", src);
     }
-    getEditLog().logSync();
   }
 
   /** Persist all metadata about this file.