liaoyuxiangqin created HDFS-13218:
-------------------------------------

             Summary: Log audit event only used last EC policy name when add 
multiple policies from file 
                 Key: HDFS-13218
                 URL: https://issues.apache.org/jira/browse/HDFS-13218
             Project: Hadoop HDFS
          Issue Type: Improvement
          Components: erasure-coding
    Affects Versions: 3.1.0
            Reporter: liaoyuxiangqin


When i read the addErasureCodingPolicies() of FSNamesystem class in namenode, i 
found the following code only used last ec policy name for  logAuditEvent, i 
think this audit log can't track whole policies for the add multiple erasure 
coding policies to the ErasureCodingPolicyManager. Thanks.
{code:java|title=FSNamesystem.java|borderStyle=solid}
try {
      checkOperation(OperationCategory.WRITE);
      checkNameNodeSafeMode("Cannot add erasure coding policy");
      for (ErasureCodingPolicy policy : policies) {
        try {
          ErasureCodingPolicy newPolicy =
              FSDirErasureCodingOp.addErasureCodingPolicy(this, policy,
                  logRetryCache);
          addECPolicyName = newPolicy.getName();
          responses.add(new AddErasureCodingPolicyResponse(newPolicy));
        } catch (HadoopIllegalArgumentException e) {
          responses.add(new AddErasureCodingPolicyResponse(policy, e));
        }
      }
      success = true;
      return responses.toArray(new AddErasureCodingPolicyResponse[0]);
    } finally {
      writeUnlock(operationName);
      if (success) {
        getEditLog().logSync();
      }
      logAuditEvent(success, operationName,addECPolicyName, null, null);
    }

{code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: hdfs-dev-unsubscr...@hadoop.apache.org
For additional commands, e-mail: hdfs-dev-h...@hadoop.apache.org

Reply via email to