This is an automated email from the ASF dual-hosted git repository. abhay pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/ranger.git
The following commit(s) were added to refs/heads/master by this push: new 3b543a7 RANGER-3088: Build tagged-resource-cache using memory optimization flags identical to policy-cache 3b543a7 is described below commit 3b543a7549017059e0f49beaa74e2503088128ef Author: Abhay Kulkarni <ab...@apache.org> AuthorDate: Wed Nov 25 09:19:54 2020 -0800 RANGER-3088: Build tagged-resource-cache using memory optimization flags identical to policy-cache --- .../plugin/contextenricher/RangerAbstractContextEnricher.java | 10 ++++++++++ .../ranger/plugin/contextenricher/RangerTagEnricher.java | 2 +- .../ranger/plugin/policyengine/RangerPolicyRepository.java | 5 +++-- 3 files changed, 14 insertions(+), 3 deletions(-) diff --git a/agents-common/src/main/java/org/apache/ranger/plugin/contextenricher/RangerAbstractContextEnricher.java b/agents-common/src/main/java/org/apache/ranger/plugin/contextenricher/RangerAbstractContextEnricher.java index fa84760..f838f84 100644 --- a/agents-common/src/main/java/org/apache/ranger/plugin/contextenricher/RangerAbstractContextEnricher.java +++ b/agents-common/src/main/java/org/apache/ranger/plugin/contextenricher/RangerAbstractContextEnricher.java @@ -37,6 +37,7 @@ import org.apache.ranger.plugin.model.RangerServiceDef; import org.apache.ranger.plugin.model.RangerServiceDef.RangerContextEnricherDef; import org.apache.ranger.plugin.policyengine.RangerAccessRequest; import org.apache.ranger.plugin.policyengine.RangerPluginContext; +import org.apache.ranger.plugin.policyengine.RangerPolicyEngineOptions; import org.apache.ranger.plugin.service.RangerAuthContext; @@ -48,6 +49,7 @@ public abstract class RangerAbstractContextEnricher implements RangerContextEnri protected String appId; protected RangerServiceDef serviceDef; private RangerPluginContext pluginContext; + protected RangerPolicyEngineOptions options = new RangerPolicyEngineOptions(); @Override public void setEnricherDef(RangerContextEnricherDef enricherDef) { @@ -176,12 +178,20 @@ public abstract class RangerAbstractContextEnricher implements RangerContextEnri this.pluginContext = pluginContext; } + final public void setPolicyEngineOptions(RangerPolicyEngineOptions options) { + this.options = options; + } + public RangerPluginConfig getPluginConfig() { RangerPluginContext pluginContext = this.pluginContext; return pluginContext != null ? pluginContext.getConfig() : null; } + public RangerPolicyEngineOptions getPolicyEngineOptions() { + return options; + } + public void notifyAuthContextChanged() { RangerPluginContext pluginContext = this.pluginContext; diff --git a/agents-common/src/main/java/org/apache/ranger/plugin/contextenricher/RangerTagEnricher.java b/agents-common/src/main/java/org/apache/ranger/plugin/contextenricher/RangerTagEnricher.java index 94ac749..fc73194 100644 --- a/agents-common/src/main/java/org/apache/ranger/plugin/contextenricher/RangerTagEnricher.java +++ b/agents-common/src/main/java/org/apache/ranger/plugin/contextenricher/RangerTagEnricher.java @@ -392,7 +392,7 @@ public class RangerTagEnricher extends RangerAbstractContextEnricher { serviceResourceTrie = new HashMap<>(); for (RangerServiceDef.RangerResourceDef resourceDef : serviceDef.getResources()) { - serviceResourceTrie.put(resourceDef.getName(), new RangerResourceTrie<>(resourceDef, resourceMatchers)); + serviceResourceTrie.put(resourceDef.getName(), new RangerResourceTrie(resourceDef, resourceMatchers, getPolicyEngineOptions().optimizeTrieForRetrieval, null)); } } enrichedServiceTags = new EnrichedServiceTags(serviceTags, resourceMatchers, serviceResourceTrie); diff --git a/agents-common/src/main/java/org/apache/ranger/plugin/policyengine/RangerPolicyRepository.java b/agents-common/src/main/java/org/apache/ranger/plugin/policyengine/RangerPolicyRepository.java index 3886eea..169ed0f 100644 --- a/agents-common/src/main/java/org/apache/ranger/plugin/policyengine/RangerPolicyRepository.java +++ b/agents-common/src/main/java/org/apache/ranger/plugin/policyengine/RangerPolicyRepository.java @@ -1008,7 +1008,7 @@ public class RangerPolicyRepository { contextEnricherDef = new RangerServiceDef.RangerContextEnricherDef(enricherDef.getItemId(), enricherDef.getName(), "org.apache.ranger.common.RangerAdminTagEnricher", null); } - RangerContextEnricher contextEnricher = buildContextEnricher(contextEnricherDef); + RangerContextEnricher contextEnricher = buildContextEnricher(contextEnricherDef, options); if (contextEnricher != null) { contextEnrichers.add(contextEnricher); @@ -1019,7 +1019,7 @@ public class RangerPolicyRepository { return contextEnrichers; } - private RangerContextEnricher buildContextEnricher(RangerServiceDef.RangerContextEnricherDef enricherDef) { + private RangerContextEnricher buildContextEnricher(RangerServiceDef.RangerContextEnricherDef enricherDef, RangerPolicyEngineOptions options) { if(LOG.isDebugEnabled()) { LOG.debug("==> RangerPolicyRepository.buildContextEnricher(" + enricherDef + ")"); } @@ -1059,6 +1059,7 @@ public class RangerPolicyRepository { if (ret instanceof RangerAbstractContextEnricher) { RangerAbstractContextEnricher abstractContextEnricher = (RangerAbstractContextEnricher) ret; abstractContextEnricher.setPluginContext(pluginContext); + abstractContextEnricher.setPolicyEngineOptions(options); } ret.init(); }