RANGER-3187:Roles download failed in Ranger after upgrade
diff --git a/security-admin/src/main/java/org/apache/ranger/patch/PatchForXGlobalState_J10036.java b/security-admin/src/main/java/org/apache/ranger/patch/PatchForXGlobalState_J10036.java
index 230c6a5..10cd283 100644
--- a/security-admin/src/main/java/org/apache/ranger/patch/PatchForXGlobalState_J10036.java
+++ b/security-admin/src/main/java/org/apache/ranger/patch/PatchForXGlobalState_J10036.java
@@ -19,6 +19,7 @@
import com.google.gson.Gson;
import org.apache.commons.collections.MapUtils;
+import org.apache.commons.lang.StringUtils;
import org.apache.log4j.Logger;
import org.apache.ranger.db.RangerDaoManager;
import org.apache.ranger.entity.XXGlobalState;
@@ -74,10 +75,12 @@ public void updateRangerRoleVersionToVersion() {
if (MapUtils.isNotEmpty(appDataVersionJson)) {
logger.info("Updating globalstate appdata version for = " + appDataVersionJson);
String roleVersion = appDataVersionJson.get("RangerRoleVersion");
- appDataVersionJson.put("Version", roleVersion);
- appDataVersionJson.remove("RangerRoleVersion");
- globalState.setAppData(new Gson().toJson(appDataVersionJson));
- daoManager.getXXGlobalState().update(globalState);
+ if (StringUtils.isNotEmpty(roleVersion)) {
+ appDataVersionJson.put("Version", roleVersion);
+ appDataVersionJson.remove("RangerRoleVersion");
+ globalState.setAppData(new Gson().toJson(appDataVersionJson));
+ daoManager.getXXGlobalState().update(globalState);
+ }
}
}
}