This is an automated email from the ASF dual-hosted git repository.
madhan 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 b056991 RANGER-3621: optimise resource usage while loading tags and
policies from database
b056991 is described below
commit b0569918c2f36cd0a9c8acc232ce9cd24e275309
Author: Ankita Sinha <[email protected]>
AuthorDate: Tue Feb 15 18:01:35 2022 +0530
RANGER-3621: optimise resource usage while loading tags and policies from
database
Signed-off-by: Madhan Neethiraj <[email protected]>
---
.../java/org/apache/ranger/biz/RangerPolicyRetriever.java | 2 ++
.../java/org/apache/ranger/biz/RangerTagDBRetriever.java | 13 ++++++-------
2 files changed, 8 insertions(+), 7 deletions(-)
diff --git
a/security-admin/src/main/java/org/apache/ranger/biz/RangerPolicyRetriever.java
b/security-admin/src/main/java/org/apache/ranger/biz/RangerPolicyRetriever.java
index 4a8a5ee..238fecd 100644
---
a/security-admin/src/main/java/org/apache/ranger/biz/RangerPolicyRetriever.java
+++
b/security-admin/src/main/java/org/apache/ranger/biz/RangerPolicyRetriever.java
@@ -523,6 +523,8 @@ public class RangerPolicyRetriever {
if (service != null && iterPolicy != null &&
iterPolicy.hasNext()) {
XXPolicy xPolicy = iterPolicy.next();
+ iterPolicy.remove();
+
if (xPolicy != null) {
String policyText =
xPolicy.getPolicyText();
diff --git
a/security-admin/src/main/java/org/apache/ranger/biz/RangerTagDBRetriever.java
b/security-admin/src/main/java/org/apache/ranger/biz/RangerTagDBRetriever.java
index 1b7e8b2..c6b8ab9 100644
---
a/security-admin/src/main/java/org/apache/ranger/biz/RangerTagDBRetriever.java
+++
b/security-admin/src/main/java/org/apache/ranger/biz/RangerTagDBRetriever.java
@@ -156,11 +156,8 @@ public class RangerTagDBRetriever {
private boolean initializeTagCache(XXService xService) {
boolean ret;
try {
- TagRetrieverServiceResourceContext
serviceResourceContext = new TagRetrieverServiceResourceContext(xService);
- TagRetrieverTagDefContext tagDefContext
= new TagRetrieverTagDefContext(xService);
-
- serviceResources =
serviceResourceContext.getAllServiceResources();
- tagDefs = tagDefContext.getAllTagDefs();
+ serviceResources = new
TagRetrieverServiceResourceContext(xService).getAllServiceResources();
+ tagDefs = new
TagRetrieverTagDefContext(xService).getAllTagDefs();
ret = true;
} catch (Exception ex) {
@@ -270,7 +267,6 @@ public class RangerTagDBRetriever {
ret.add(serviceResource);
}
}
-
return ret;
}
@@ -280,6 +276,8 @@ public class RangerTagDBRetriever {
if (iterServiceResource.hasNext()) {
XXServiceResource xServiceResource =
iterServiceResource.next();
+ iterServiceResource.remove();
+
if (xServiceResource != null &&
StringUtils.isNotEmpty(xServiceResource.getTags())) {
ret = new RangerServiceResource();
@@ -330,7 +328,6 @@ public class RangerTagDBRetriever {
ret.put(tagDef.getId(), tagDef);
}
}
-
return ret;
}
@@ -340,6 +337,8 @@ public class RangerTagDBRetriever {
if (iterTagDef.hasNext()) {
XXTagDef xTagDef = iterTagDef.next();
+ iterTagDef.remove();
+
if (xTagDef != null) {
ret = new RangerTagDef();