[
https://issues.apache.org/jira/browse/HDFS-5596?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13846016#comment-13846016
]
Haohui Mai commented on HDFS-5596:
----------------------------------
Thanks Chris for the comments. The v2 patch fixes 2 and 4. Here are my thoughts
on 1 and 3:
bq. ClientProtocol: All RPCs can be annotated idempotent.
It seems that removeAcl() / removeAclEntries() / removeDefaultAcl() cannot be
idempotent. If Alice calls removeAcl() while Bob is changing the ACLs,
re-executing removeAcl() could cause data loss. The reason is similar to the
one that the RPC about deletion are at-most-once, but not idempotent.
bq. DFSClient: There are a few more exception types that would be helpful to
unwrap on the modification operations...
I'm not sure that whether {{SnapshotAccessControlException}} and
{{NSQuotaExceededException}} should be unwrapped, therefore I left these two
out of this patch. We can revisit this when we start to integrate ACLs with
snapshots and quotas. I updated the code to unwrap the other exceptions that
you mentioned.
> Implement RPC stubs
> -------------------
>
> Key: HDFS-5596
> URL: https://issues.apache.org/jira/browse/HDFS-5596
> Project: Hadoop HDFS
> Issue Type: Sub-task
> Components: hdfs-client, namenode
> Affects Versions: HDFS ACLs (HDFS-4685)
> Reporter: Chris Nauroth
> Assignee: Haohui Mai
> Attachments: HDFS-5596.000.patch, HDFS-5596.001.patch,
> HDFS-5596.002.patch
>
>
> Implement RPC stubs for both {{DistributedFileSystem}} and
> {{NameNodeRpcServer}}.
--
This message was sent by Atlassian JIRA
(v6.1.4#6159)