----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/60949/ -----------------------------------------------------------
Review request for ranger and Madhan Neethiraj. Summary (updated) ----------------- Optimize Ranger code for authorization of HDFS 'getContentSummary' and 'delete' commands Bugs: RANGER-1695 https://issues.apache.org/jira/browse/RANGER-1695 Repository: ranger Description (updated) ------- HDFS commands such as getContentSummary and delete require Ranger to authorize access to entire directory hierarchy rooted at the directory passed in as argument. Ranger could optimize this code by pruning the directory tree whenever a sub-directory, and directory hierarchy rooted in it, is authorized for requested access. This could potentially save many spurious authorization API calls with Ranger policy engine. Also, it will be useful to gather and log performance metrics for the Ranger authorization API call for every Ranger plugin. Diffs (updated) ----- agents-common/src/main/java/org/apache/ranger/authorization/hadoop/constants/RangerHadoopConstants.java 83f720a agents-common/src/main/java/org/apache/ranger/plugin/policyengine/RangerPolicyEngineImpl.java 101013b agents-common/src/main/java/org/apache/ranger/plugin/policyengine/RangerPolicyEngineOptions.java 63162f6 agents-common/src/main/java/org/apache/ranger/plugin/service/RangerBasePlugin.java 06b8f4d agents-common/src/main/java/org/apache/ranger/plugin/util/RangerPerfCollectorTracer.java d899c6f hbase-agent/src/main/java/org/apache/ranger/authorization/hbase/RangerAuthorizationCoprocessor.java cf2ffcf hdfs-agent/src/main/java/org/apache/ranger/authorization/hadoop/RangerHdfsAuthorizer.java d28685a hdfs-agent/src/test/java/org/apache/ranger/services/hdfs/HDFSRangerTest.java fe6a705 hdfs-agent/src/test/resources/hdfs-policies.json 6055dd5 hdfs-agent/src/test/resources/log4j.properties PRE-CREATION hdfs-agent/src/test/resources/ranger-hdfs-security.xml 9b1176e hive-agent/src/main/java/org/apache/ranger/authorization/hive/authorizer/RangerHiveAuthorizer.java 56ef187 knox-agent/src/main/java/org/apache/ranger/authorization/knox/RangerPDPKnoxFilter.java 1d58b21 plugin-atlas/src/main/java/org/apache/ranger/authorization/atlas/authorizer/RangerAtlasAuthorizer.java 9712f95 plugin-kafka/src/main/java/org/apache/ranger/authorization/kafka/authorizer/RangerKafkaAuthorizer.java b6e052f plugin-kms/src/main/java/org/apache/ranger/authorization/kms/authorizer/RangerKmsAuthorizer.java 4cda8fa plugin-solr/src/main/java/org/apache/ranger/authorization/solr/authorizer/RangerSolrAuthorizer.java 0cc9de9 plugin-yarn/src/main/java/org/apache/ranger/authorization/yarn/authorizer/RangerYarnAuthorizer.java c589060 ranger-tools/conf/log4j.properties 4ead802 ranger-tools/src/main/java/org/apache/ranger/policyengine/RangerPolicyenginePerfTester.java 056c548 storm-agent/src/main/java/org/apache/ranger/authorization/storm/authorizer/RangerStormAuthorizer.java 23c2b5f Diff: https://reviews.apache.org/r/60949/diff/1/ Testing (updated) ------- Tested with local VM Thanks, Abhay Kulkarni