dragon created HDFS-10038:
-----------------------------

             Summary: CLONE - ClientProtocol#createErasureCodingZone API was 
wrongly annotated as Idempotent
                 Key: HDFS-10038
                 URL: https://issues.apache.org/jira/browse/HDFS-10038
             Project: Hadoop HDFS
          Issue Type: Sub-task
          Components: namenode
            Reporter: dragon
            Assignee: Vinayakumar B
             Fix For: HDFS-7285


Currently createErasureCodingZone was annotated as Idempotent
But it should be annotated as @AtMostOnce as we handle retries via retryCache.

{code}
 @Idempotent
  public void createErasureCodingZone(String src, ECSchema schema)
      throws IOException;
{code}

It will fail to create Zone if its already a zone. So, simply we can not retry 
by ignoring previous call success. So, we were using retryCache already for 
handling this situation.

{code}
 if (getECSchema(srcIIP) != null) {
      throw new IOException("Directory " + src + " is already in an " +
          "erasure coding zone.");
    }
{code}




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to