You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ranger.apache.org by al...@apache.org on 2016/03/17 21:44:39 UTC
incubator-ranger git commit: RANGER-882 Add a catch all policy engine
initialization to ensure that plugin will continue to pull policies
periodically
Repository: incubator-ranger
Updated Branches:
refs/heads/master 3abd4be25 -> 0ecac71fd
RANGER-882 Add a catch all policy engine initialization to ensure that plugin will continue to pull policies periodically
Project: http://git-wip-us.apache.org/repos/asf/incubator-ranger/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ranger/commit/0ecac71f
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ranger/tree/0ecac71f
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ranger/diff/0ecac71f
Branch: refs/heads/master
Commit: 0ecac71fd5fc61642fef9b25fb2e12ea69052187
Parents: 3abd4be
Author: Alok Lal <al...@apache.org>
Authored: Thu Mar 17 12:19:42 2016 -0700
Committer: Alok Lal <al...@apache.org>
Committed: Thu Mar 17 12:36:33 2016 -0700
----------------------------------------------------------------------
.../ranger/plugin/service/RangerBasePlugin.java | 16 +++++++++++-----
1 file changed, 11 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/0ecac71f/agents-common/src/main/java/org/apache/ranger/plugin/service/RangerBasePlugin.java
----------------------------------------------------------------------
diff --git a/agents-common/src/main/java/org/apache/ranger/plugin/service/RangerBasePlugin.java b/agents-common/src/main/java/org/apache/ranger/plugin/service/RangerBasePlugin.java
index b864e61..be54d36 100644
--- a/agents-common/src/main/java/org/apache/ranger/plugin/service/RangerBasePlugin.java
+++ b/agents-common/src/main/java/org/apache/ranger/plugin/service/RangerBasePlugin.java
@@ -106,14 +106,20 @@ public class RangerBasePlugin {
}
public void setPolicies(ServicePolicies policies) {
- RangerPolicyEngine oldPolicyEngine = this.policyEngine;
- RangerPolicyEngine policyEngine = new RangerPolicyEngineImpl(appId, policies, policyEngineOptions);
+ // guard against catastrophic failure during policy engine Initialization or
+ try {
+ RangerPolicyEngine oldPolicyEngine = this.policyEngine;
+
+ RangerPolicyEngine policyEngine = new RangerPolicyEngineImpl(appId, policies, policyEngineOptions);
- this.policyEngine = policyEngine;
+ this.policyEngine = policyEngine;
- if (oldPolicyEngine != null && !oldPolicyEngine.preCleanup()) {
- LOG.error("preCleanup() failed on the previous policy engine instance !!");
+ if (oldPolicyEngine != null && !oldPolicyEngine.preCleanup()) {
+ LOG.error("preCleanup() failed on the previous policy engine instance !!");
+ }
+ } catch (Exception e) {
+ LOG.error("setPolicies: policy engine initialization failed! Leaving current policy engine as-is.");
}
}