RANGER-622 Hive plugin - add jar via beeline throws NPE in ranger code
Project: http://git-wip-us.apache.org/repos/asf/incubator-ranger/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-ranger/commit/eec5ac42 Tree: http://git-wip-us.apache.org/repos/asf/incubator-ranger/tree/eec5ac42 Diff: http://git-wip-us.apache.org/repos/asf/incubator-ranger/diff/eec5ac42 Branch: refs/heads/HDP-2.3.2-groupid Commit: eec5ac42b9c75d07954e1609595a90b5ac3de598 Parents: 60346b0 Author: Alok Lal <[email protected]> Authored: Thu Aug 20 18:04:35 2015 -0700 Committer: Alok Lal <[email protected]> Committed: Thu Aug 20 19:32:01 2015 -0700 ---------------------------------------------------------------------- .../authorization/hive/authorizer/RangerHiveAuthorizer.java | 8 ++++++++ 1 file changed, 8 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/eec5ac42/hive-agent/src/main/java/org/apache/ranger/authorization/hive/authorizer/RangerHiveAuthorizer.java ---------------------------------------------------------------------- diff --git a/hive-agent/src/main/java/org/apache/ranger/authorization/hive/authorizer/RangerHiveAuthorizer.java b/hive-agent/src/main/java/org/apache/ranger/authorization/hive/authorizer/RangerHiveAuthorizer.java index 9075b57..7aaf8a1 100644 --- a/hive-agent/src/main/java/org/apache/ranger/authorization/hive/authorizer/RangerHiveAuthorizer.java +++ b/hive-agent/src/main/java/org/apache/ranger/authorization/hive/authorizer/RangerHiveAuthorizer.java @@ -241,6 +241,10 @@ public class RangerHiveAuthorizer extends RangerHiveAuthorizerBase { for(HivePrivilegeObject hiveObj : inputHObjs) { RangerHiveResource resource = getHiveResource(hiveOpType, hiveObj); + if (resource == null) { // possible if input object/object is of a kind that we don't currently authorize + continue; + } + if(resource.getObjectType() == HiveObjectType.URI) { String path = hiveObj.getObjectName(); FsAction permission = FsAction.READ; @@ -270,6 +274,10 @@ public class RangerHiveAuthorizer extends RangerHiveAuthorizerBase { for(HivePrivilegeObject hiveObj : outputHObjs) { RangerHiveResource resource = getHiveResource(hiveOpType, hiveObj); + if (resource == null) { // possible if input object/object is of a kind that we don't currently authorize + continue; + } + if(resource.getObjectType() == HiveObjectType.URI) { String path = hiveObj.getObjectName(); FsAction permission = FsAction.WRITE;
