Sahil Takiar created HIVE-15385:
-----------------------------------
Summary: 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
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)