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);
+				}
 			}
 		}
 	}