This is an automated email from the ASF dual-hosted git repository.
madhan pushed a commit to branch ranger-2.5
in repository https://gitbox.apache.org/repos/asf/ranger.git
The following commit(s) were added to refs/heads/ranger-2.5 by this push:
new 85610513d RANGER-4868: fix for ranger-mem-sizing failure with
NoClassDefFoundError
85610513d is described below
commit 85610513dd6465f92729475c8723042cae4636e9
Author: Madhan Neethiraj <[email protected]>
AuthorDate: Tue Jul 23 16:02:30 2024 -0700
RANGER-4868: fix for ranger-mem-sizing failure with NoClassDefFoundError
---
agents-common/pom.xml | 5 ++++
distro/src/main/assembly/ranger-tools.xml | 1 -
ranger-tools/pom.xml | 7 +++--
ranger-tools/scripts/ranger-mem-sizing.sh | 3 +-
.../org/apache/ranger/sizing/RangerMemSizing.java | 33 +++++++---------------
5 files changed, 20 insertions(+), 29 deletions(-)
diff --git a/agents-common/pom.xml b/agents-common/pom.xml
index 82f083f2a..7729ac81b 100644
--- a/agents-common/pom.xml
+++ b/agents-common/pom.xml
@@ -117,6 +117,11 @@
<artifactId>commons-configuration2</artifactId>
<version>${commons.configuration.version}</version>
</dependency>
+ <dependency>
+ <groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-databind</artifactId>
+ <version>${fasterxml.jackson.databind.version}</version>
+ </dependency>
<dependency>
<groupId>com.fasterxml.jackson.jaxrs</groupId>
<artifactId>jackson-jaxrs-json-provider</artifactId>
diff --git a/distro/src/main/assembly/ranger-tools.xml
b/distro/src/main/assembly/ranger-tools.xml
index a3576d83a..6893366d3 100644
--- a/distro/src/main/assembly/ranger-tools.xml
+++ b/distro/src/main/assembly/ranger-tools.xml
@@ -43,7 +43,6 @@
<include>commons-logging:commons-logging:jar:${commons.logging.version}</include>
<include>commons-lang:commons-lang</include>
<include>org.apache.commons:commons-lang3:jar:${commons.lang3.version}</include>
- <include>com.google.code.gson:gson</include>
<include>log4j:log4j</include>
<include>org.apache.commons:commons-configuration2:jar:${commons.configuration.version}</include>
<include>org.apache.hadoop:hadoop-common:jar:${hadoop.version}</include>
diff --git a/ranger-tools/pom.xml b/ranger-tools/pom.xml
index f719ac655..14c3d56c9 100644
--- a/ranger-tools/pom.xml
+++ b/ranger-tools/pom.xml
@@ -46,12 +46,13 @@
<version>${commons.lang3.version}</version>
</dependency>
<dependency>
- <groupId>com.google.code.gson</groupId>
- <artifactId>gson</artifactId>
+ <groupId>org.apache.ranger</groupId>
+ <artifactId>ranger-plugins-common</artifactId>
+ <version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.ranger</groupId>
- <artifactId>ranger-plugins-common</artifactId>
+ <artifactId>ranger-plugins-audit</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
diff --git a/ranger-tools/scripts/ranger-mem-sizing.sh
b/ranger-tools/scripts/ranger-mem-sizing.sh
index c147c96f3..f284378d1 100755
--- a/ranger-tools/scripts/ranger-mem-sizing.sh
+++ b/ranger-tools/scripts/ranger-mem-sizing.sh
@@ -17,7 +17,6 @@
#
# Review and update following variables as needed
#
-RANGER_ADMIN_HOME=${RANGER_ADMIN_HOME:-/opt/ranger/admin}
MEMORY=1g
#
@@ -29,7 +28,7 @@ MEMORY=1g
#
#
cdir=$(cd "$(dirname "$0")"; pwd)
-cp="${cdir}/dist/*:${cdir}/lib/commons-cli-1.3.1.jar:${RANGER_ADMIN_HOME}/ews/lib/*:${RANGER_ADMIN_HOME}/ews/webapp/WEB-INF/lib/*"
+cp="${cdir}/dist/*:${cdir}/lib/*"
if [ "${JAVA_HOME}" != "" ]
then
diff --git
a/ranger-tools/src/main/java/org/apache/ranger/sizing/RangerMemSizing.java
b/ranger-tools/src/main/java/org/apache/ranger/sizing/RangerMemSizing.java
index 5b6f51339..74f231013 100644
--- a/ranger-tools/src/main/java/org/apache/ranger/sizing/RangerMemSizing.java
+++ b/ranger-tools/src/main/java/org/apache/ranger/sizing/RangerMemSizing.java
@@ -27,15 +27,14 @@ import java.util.Set;
import org.apache.commons.cli.*;
import org.apache.commons.lang.StringUtils;
import org.apache.ranger.authorization.hadoop.config.RangerPluginConfig;
+import org.apache.ranger.authorization.utils.JsonUtils;
import org.apache.ranger.plugin.policyengine.RangerPolicyEngineOptions;
import org.apache.ranger.plugin.service.RangerBasePlugin;
import org.apache.ranger.plugin.util.RangerRoles;
+import org.apache.ranger.plugin.util.RangerUserStore;
import org.apache.ranger.plugin.util.ServicePolicies;
import org.apache.ranger.plugin.util.ServicePolicies.SecurityZoneInfo;
import org.apache.ranger.plugin.util.ServiceTags;
-import org.apache.ranger.plugin.util.RangerUserStore;
-import com.google.gson.Gson;
-import com.google.gson.GsonBuilder;
public class RangerMemSizing {
@@ -44,7 +43,6 @@ public class RangerMemSizing {
private final SimpleDateFormat DATE_FORMAT = new
SimpleDateFormat("yyyy-MM-dd HH:mm:ss.S");
- private final Gson gson;
private final String policyFile;
private final String tagFile;
private final String rolesFile;
@@ -56,7 +54,6 @@ public class RangerMemSizing {
public RangerMemSizing(CommandLine cmdLine) {
this.out = System.out;
- this.gson = createGson();
this.policyFile = cmdLine.getOptionValue('p');
this.tagFile = cmdLine.getOptionValue('t');
this.rolesFile = cmdLine.getOptionValue('r');
@@ -132,7 +129,7 @@ public class RangerMemSizing {
PerfMemTimeTracker tracker = new PerfMemTimeTracker("Read policies");
try (FileReader reader = new FileReader(file)) {
- ret = gson.fromJson(reader, ServicePolicies.class);
+ ret = JsonUtils.jsonToObject(reader, ServicePolicies.class);
}
tracker.stop();
@@ -178,10 +175,11 @@ public class RangerMemSizing {
PerfMemTimeTracker tracker = new PerfMemTimeTracker("Read tags");
try (FileReader reader = new FileReader(file)) {
- ret = gson.fromJson(reader, ServiceTags.class);
+ ret = JsonUtils.jsonToObject(reader, ServiceTags.class);
}
tracker.stop();
+
loadTracker.addChild(tracker);
}
@@ -192,7 +190,8 @@ public class RangerMemSizing {
tracker.stop();
loadTracker.addChild(tracker);
- log("DeDupTags(duplicateTags=" + countOfDuplicateTags + ")");
+
+ log("DeDupTags(): duplicateTagsCount=" + countOfDuplicateTags);
}
if (deDupStrings) {
@@ -231,7 +230,7 @@ public class RangerMemSizing {
log("loading roles(file=" + fileName + ")");
try (FileReader reader = new FileReader(file)) {
- ret = gson.fromJson(reader, RangerRoles.class);
+ ret = JsonUtils.jsonToObject(reader, RangerRoles.class);
}
loadTracker.stop();
@@ -264,7 +263,7 @@ public class RangerMemSizing {
PerfMemTimeTracker tracker = new PerfMemTimeTracker("Read userStore");
try (FileReader reader = new FileReader(file)) {
- ret = gson.fromJson(reader, RangerUserStore.class);
+ ret = JsonUtils.jsonToObject(reader, RangerUserStore.class);
}
tracker.stop();
@@ -350,18 +349,6 @@ public class RangerMemSizing {
return null;
}
- private Gson createGson() {
- Gson gson = null;
-
- try {
- gson = new
GsonBuilder().setDateFormat("yyyyMMdd-HH:mm:ss.SSS-Z").create();
- } catch(Throwable excp) {
- log("failed to create GsonBuilder object", excp);
- }
-
- return gson;
- }
-
private void log(String msg) {
out.println(DATE_FORMAT.format(new Date()) + ": " +msg);
}
@@ -429,7 +416,7 @@ public class RangerMemSizing {
}
}
- return "tagDefCount=" + tagDefCount + ", tagCount" + tagCount + ",
resourceCount=" + resourceCount;
+ return "tagDefCount=" + tagDefCount + ", tagCount=" + tagCount + ",
resourceCount=" + resourceCount;
}
private static String toSummaryStr(RangerRoles roles) {