You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ranger.apache.org by ma...@apache.org on 2021/08/26 05:58:47 UTC

[ranger] branch ranger-2.0 updated: RANGER-3377: HDFS plugin performance improvement - RangerHdfsResource.getAsString()

This is an automated email from the ASF dual-hosted git repository.

madhan pushed a commit to branch ranger-2.0
in repository https://gitbox.apache.org/repos/asf/ranger.git


The following commit(s) were added to refs/heads/ranger-2.0 by this push:
     new 99287a2  RANGER-3377: HDFS plugin performance improvement - RangerHdfsResource.getAsString()
99287a2 is described below

commit 99287a2a5cb2c5c99c5b7378c8ae8c4da142b9ab
Author: cao zhiqiang <lf...@163.com>
AuthorDate: Wed Aug 25 22:16:39 2021 -0700

    RANGER-3377: HDFS plugin performance improvement - RangerHdfsResource.getAsString()
    
    Signed-off-by: Madhan Neethiraj <ma...@apache.org>
    (cherry picked from commit b0e970f21f7b2bd3f591e291684014f92434a2d3)
---
 .../plugin/policyengine/RangerAccessResourceImpl.java      |  4 ++++
 .../ranger/authorization/hadoop/RangerHdfsAuthorizer.java  | 14 ++++++++++++++
 2 files changed, 18 insertions(+)

diff --git a/agents-common/src/main/java/org/apache/ranger/plugin/policyengine/RangerAccessResourceImpl.java b/agents-common/src/main/java/org/apache/ranger/plugin/policyengine/RangerAccessResourceImpl.java
index 93810ae..b4811ee 100644
--- a/agents-common/src/main/java/org/apache/ranger/plugin/policyengine/RangerAccessResourceImpl.java
+++ b/agents-common/src/main/java/org/apache/ranger/plugin/policyengine/RangerAccessResourceImpl.java
@@ -261,4 +261,8 @@ public class RangerAccessResourceImpl implements RangerMutableResource {
 
 		return sb;
 	}
+
+        protected String getStringifiedValue() { return stringifiedValue; }
+
+        protected void setStringifiedValue(String val) { this.stringifiedValue = val; }
 }
diff --git a/hdfs-agent/src/main/java/org/apache/ranger/authorization/hadoop/RangerHdfsAuthorizer.java b/hdfs-agent/src/main/java/org/apache/ranger/authorization/hadoop/RangerHdfsAuthorizer.java
index 7b2882c..6cd2a2e 100644
--- a/hdfs-agent/src/main/java/org/apache/ranger/authorization/hadoop/RangerHdfsAuthorizer.java
+++ b/hdfs-agent/src/main/java/org/apache/ranger/authorization/hadoop/RangerHdfsAuthorizer.java
@@ -30,6 +30,7 @@ import java.util.Date;
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.Map;
+import java.util.Objects;
 import java.util.Set;
 import java.util.Stack;
 
@@ -814,6 +815,19 @@ class RangerHdfsResource extends RangerAccessResourceImpl {
 		super.setValue(RangerHdfsAuthorizer.KEY_RESOURCE_PATH, path);
 		super.setOwnerUser(owner);
 	}
+
+	@Override
+	public String getAsString() {
+		String ret = super.getStringifiedValue();
+
+		if (ret == null) {
+			ret = Objects.toString(super.getValue(RangerHdfsAuthorizer.KEY_RESOURCE_PATH));
+
+			super.setStringifiedValue(ret);
+		}
+
+		return ret;
+	}
 }
 
 class RangerHdfsAccessRequest extends RangerAccessRequestImpl {