[ https://issues.apache.org/jira/browse/HIVE-15385?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15733279#comment-15733279 ]
Sergio Peña commented on HIVE-15385: ------------------------------------ What are the reasons of a inherit permission failure? Why do we want to continue the query if we cannot set the correct permissions? [~szehon] You wrote the permission wiki page, any info why this case? The solution on the RB is good and simple for how we want to fix it. But, I don't know if HdfsUtils.setFullFileStatus() may be used by other code parts where we really want to get a failure in case a permission cannot be set. I noticed the method throws an IOException when recursion is used too. Do we want to remove that exception? > Failure to inherit permissions when running HdfsUtils.setFullFileStatus(..., > false) causes queries to fail > ---------------------------------------------------------------------------------------------------------- > > Key: HIVE-15385 > URL: https://issues.apache.org/jira/browse/HIVE-15385 > Project: Hive > Issue Type: Bug > Components: Hive > Reporter: Sahil Takiar > Assignee: Sahil Takiar > Attachments: HIVE-15385.1.patch, HIVE-15385.2.patch > > > According to > https://cwiki.apache.org/confluence/display/Hive/Permission+Inheritance+in+Hive, > failure to inherit permissions should not cause queries to fail. > It looks like this was the case until HIVE-13716, which added some code to > use {{fs.setOwner}}, {{fs.setAcl}}, and {{fs.setPermission}} to set > permissions instead of shelling out and running {{-chgrp -R ...}}. > When shelling out, the return status of each command is ignored, so if there > are any failures when inheriting permissions, a warning is logged, but the > query still succeeds. > However, when invoked the {{FileSystem}} API, any failures will be propagated > up to the caller, and the query will fail. > This is problematic because {{setFulFileStatus}} shells out when the > {{recursive}} parameter is set to {{true}}, and when it is false it invokes > the {{FileSystem}} API. So the behavior is inconsistent depending on the > value of {{recursive}}. > We should decide whether or not permission inheritance should fail queries or > not, and then ensure the code consistently follows that decision. -- This message was sent by Atlassian JIRA (v6.3.4#6332)