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

Ayush Saxena commented on HDFS-16382:
-------------------------------------

I am ok both ways, whichever way you feel would be better. :) 

but just thinking about the mentioned case.

/A to ns0 /A

/A/B to ns0,ns1 /A/B

If I set say some EC/Storage policy on /A, then I do a write on /A/B, the 
writes going to ns0 will be following that policy and the ones going on ns1 
won't. Even for a getECPolicy and commands like that, for multi destinations, 
we usually return the response from the first namespace. I am not sure, we 
allowing this won't lead to some confusions at end user.

Say. I getPolicy on /A/B, it fetches from ns0. I do a write and the write goes 
to ns1, the client does a getPolicy on the file and it doesn't follow the 
policy.

Permissions/ACLs might also show some weird behaviours if we set them on /A, 
the ns0 child will inherit and the ns1 child won't. So for some clients write 
may be sometimes successful and sometimes fail. QuotaUsage might also have same 
problem as getContentSummary.(I haven't tried though)

 

We know the code, we might understand the reason. But may be not that easy to 
decode for someone who doesn't know how nested mounts and multi destination 
mount entries get response.

Preventing such mount entries sounds better to me though, but that would be an 
incompatible change and people might be having such deployments, one example 
being this present jira.

> RBF: getContentSummary RPC compute sub-directory repeatedly
> -----------------------------------------------------------
>
>                 Key: HDFS-16382
>                 URL: https://issues.apache.org/jira/browse/HDFS-16382
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: rbf
>    Affects Versions: 3.3.1
>            Reporter: zhanghaobo
>            Priority: Major
>              Labels: pull-request-available
>          Time Spent: 20m
>  Remaining Estimate: 0h
>
> Router getContentSummary rpc compute sub-directory repeatedly when a 
> direactory and its ancestor directory are both mounted  in the form of 
> original src path.
> For example, suppose we have mount table entries below:
> /A---ns1---/A
> /A/B—ns1,ns2—/A/B
> we put a file test.txt to directory /A/B in namepsace ns1, then execute `hdfs 
> dfs -count  hdfs://router:8888/A`,  the result is wrong, because we compute 
> /A/B/test.txt repeatedly



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

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

Reply via email to