RANGER-203: fix NPE while getting policyId from the result. Project: http://git-wip-us.apache.org/repos/asf/incubator-ranger/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-ranger/commit/1e8dc41a Tree: http://git-wip-us.apache.org/repos/asf/incubator-ranger/tree/1e8dc41a Diff: http://git-wip-us.apache.org/repos/asf/incubator-ranger/diff/1e8dc41a
Branch: refs/heads/stack Commit: 1e8dc41a82e2217a5c10a67c8f6bb58b6e06342e Parents: 6a803ea Author: Madhan Neethiraj <[email protected]> Authored: Thu Jan 22 18:50:58 2015 -0800 Committer: Madhan Neethiraj <[email protected]> Committed: Thu Jan 22 18:50:58 2015 -0800 ---------------------------------------------------------------------- .../hadoop/hdfs/server/namenode/RangerFSPermissionChecker.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/1e8dc41a/hdfs-agent/src/main/java/org/apache/hadoop/hdfs/server/namenode/RangerFSPermissionChecker.java ---------------------------------------------------------------------- diff --git a/hdfs-agent/src/main/java/org/apache/hadoop/hdfs/server/namenode/RangerFSPermissionChecker.java b/hdfs-agent/src/main/java/org/apache/hadoop/hdfs/server/namenode/RangerFSPermissionChecker.java index ff60d52..9cf57a9 100644 --- a/hdfs-agent/src/main/java/org/apache/hadoop/hdfs/server/namenode/RangerFSPermissionChecker.java +++ b/hdfs-agent/src/main/java/org/apache/hadoop/hdfs/server/namenode/RangerFSPermissionChecker.java @@ -292,7 +292,8 @@ class RangerHdfsAuditHandler extends RangerDefaultAuditHandler { String serviceName = result.getServiceName(); String resourceType = getResourceName(request.getResource(), serviceDef); String resourcePath = getResourceValueAsString(request.getResource(), serviceDef); - Long policyId = (result.getAccessTypeResults() != null && result.getAccessTypeResults().size() > 0) ? result.getAccessTypeResults().get(0).getPolicyId() : null; + Long policyId = (result.getAccessTypeResults() != null && !result.getAccessTypeResults().isEmpty()) + ? result.getAccessTypeResults().values().iterator().next().getPolicyId() : null; auditEvent.setUser(request.getUser()); auditEvent.setResourcePath(pathToBeValidated);
