hadoop-hdfs-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Todd Lipcon (Commented) (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HDFS-2393) Mark appropriate methods of ClientProtocol with the idempotent annotation
Date Thu, 06 Oct 2011 21:15:30 GMT

    [ https://issues.apache.org/jira/browse/HDFS-2393?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13122303#comment-13122303

Todd Lipcon commented on HDFS-2393:

I agree with your assessment of the write ops. The three you weren't sure about I think are
all idempotent:
- getAdditionalDatanode just picks a datanode and doesn't modify any state. It's probably
marked WRITE since it's used by the file write path.
- If recoverLease is retried after a success, it will return an error code that the lease
is already recovered. This is already possible if the lease expires just before the caller
calls recoverLease. So callers already need to know how to deal with that case regardless
of failover/HA.
- updateBlockForPipeline will allocate a new generation stamp if it's called a second time,
but that's OK - we just need to make sure genstamps increase, not that they increase exactly

As for the administrative ones:
- setSafeMode, saveNamespace, restoreFailedStorage, refreshNodes, and metaSave are all under
the scope of one NN (even in an HA setup). That is to say, they would be targeted at a specific
IP, not at a logical cluster, I believe.
- haven't thought much about upgrade yet. I don't know those code paths well. Let's mark those
- setBalancerBandwidth seems like a hack that shouldn't really be part of RPC anyway. Let's
ignore this one for now too.
> Mark appropriate methods of ClientProtocol with the idempotent annotation
> -------------------------------------------------------------------------
>                 Key: HDFS-2393
>                 URL: https://issues.apache.org/jira/browse/HDFS-2393
>             Project: Hadoop HDFS
>          Issue Type: Sub-task
>          Components: hdfs client
>    Affects Versions: HA branch (HDFS-1623)
>            Reporter: Aaron T. Myers
>            Assignee: Aaron T. Myers
>             Fix For: HA branch (HDFS-1623)
> HDFS-1973 will make the {{DFSClient}} take advantage of the annotation. This JIRA is
to identify which methods can be marked as idempotent.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira


View raw message