[ 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