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

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


The following commit(s) were added to refs/heads/ranger-2.6 by this push:
     new 36fcf76dbb RANGER-5104: Ranger Upgrade is failing while executing the 
PatchPreSql057_ForUpdateToUniqueGUID_J10052 (#511)
36fcf76dbb is described below

commit 36fcf76dbb2cdf8535cc9a580098eaf0c9750e17
Author: PradeeP AgrawaL <[email protected]>
AuthorDate: Mon Jan 27 07:44:32 2025 +0530

    RANGER-5104: Ranger Upgrade is failing while executing the 
PatchPreSql057_ForUpdateToUniqueGUID_J10052 (#511)
    
    * RANGER-5104: Ranger Upgrade is failing while executing the 
PatchPreSql057_ForUpdateToUniqueGUID_J10052
    
    * Fix typo in db_setup.py
    
    ---------
    
    Co-authored-by: Abhishek Kumar <[email protected]>
    Change-Id: I214907b0487c1f38bf7e5854ea43810da8767c1c
---
 security-admin/scripts/db_setup.py                    |  4 ++--
 .../java/org/apache/ranger/db/XXSecurityZoneDao.java  | 15 +++++++++++++++
 .../PatchPreSql_057_ForUpdateToUniqueGUID_J10052.java | 19 ++++++-------------
 .../src/main/resources/META-INF/jpa_named_queries.xml |  6 ++++++
 4 files changed, 29 insertions(+), 15 deletions(-)

diff --git a/security-admin/scripts/db_setup.py 
b/security-admin/scripts/db_setup.py
index d4e6e5653a..bb7f4cbb33 100644
--- a/security-admin/scripts/db_setup.py
+++ b/security-admin/scripts/db_setup.py
@@ -203,13 +203,13 @@ def apply_patches(self, db_name, db_user, db_password, 
PATCHES_PATH):
                                        #getting Java patch which needs to be 
run before this DB patch.
                                        pre_dict = 
self.get_pre_post_java_patches(prefix_for_preSql_patch)
                                        if pre_dict:
-                                               log ("[I] ruunig pre java 
patch:[{}]".format(pre_dict),"info")
+                                               log ("[I] Running Pre Java 
Patch:[{}]".format(pre_dict),"info")
                                                
self.execute_java_patches(xa_db_host, db_user, db_password, db_name, pre_dict)
                                        self.import_db_patches(db_name, 
db_user, db_password, currentPatch)
                                        #getting Java patch which needs to be 
run immediately after this DB patch.
                                        post_dict = 
self.get_pre_post_java_patches(prefix_for_postSql_patch)
                                        if post_dict:
-                                               log ("[I] ruunig post java 
patch:[{}]".format(post_dict),"info")
+                                               log ("[I] Running Post Java 
Patch:[{}]".format(post_dict),"info")
                                                
self.execute_java_patches(xa_db_host, db_user, db_password, db_name, post_dict)
                                self.update_applied_patches_status(db_name, 
db_user, db_password, "DB_PATCHES")
                        else:
diff --git 
a/security-admin/src/main/java/org/apache/ranger/db/XXSecurityZoneDao.java 
b/security-admin/src/main/java/org/apache/ranger/db/XXSecurityZoneDao.java
index 5fe0e856dd..1556bdd1d5 100644
--- a/security-admin/src/main/java/org/apache/ranger/db/XXSecurityZoneDao.java
+++ b/security-admin/src/main/java/org/apache/ranger/db/XXSecurityZoneDao.java
@@ -145,4 +145,19 @@ public List<RangerSecurityZoneHeaderInfo> 
findAllZoneHeaderInfosByServiceId(Long
 
         return securityZoneList;
     }
+
+    public List<XXSecurityZone> getAllZoneIdNames() {
+        @SuppressWarnings("unchecked")
+        List<Object[]> results = 
getEntityManager().createNamedQuery("XXSecurityZone.getAllZoneIdNames").getResultList();
+
+        List<XXSecurityZone> securityZoneList = new 
ArrayList<XXSecurityZone>(results.size());
+        for (Object[] result : results) {
+            XXSecurityZone xXSecurityZone = new XXSecurityZone();
+            xXSecurityZone.setId((Long) result[0]);
+            xXSecurityZone.setName((String) result[1]);
+            securityZoneList.add(xXSecurityZone);
+        }
+
+        return securityZoneList;
+    }
 }
diff --git 
a/security-admin/src/main/java/org/apache/ranger/patch/PatchPreSql_057_ForUpdateToUniqueGUID_J10052.java
 
b/security-admin/src/main/java/org/apache/ranger/patch/PatchPreSql_057_ForUpdateToUniqueGUID_J10052.java
index 58434b38c5..a6fd0564f4 100644
--- 
a/security-admin/src/main/java/org/apache/ranger/patch/PatchPreSql_057_ForUpdateToUniqueGUID_J10052.java
+++ 
b/security-admin/src/main/java/org/apache/ranger/patch/PatchPreSql_057_ForUpdateToUniqueGUID_J10052.java
@@ -104,26 +104,19 @@ public void printStats() {
        private void updatePolicyGUIDToUniqueValue() throws Exception {
                logger.info("==> updatePolicyGUIDToUniqueValue() ");
 
-               List<XXSecurityZone> allXXZones = null;
-               List<XXService> allXXService = null;
-
-               allXXZones = daoMgr.getXXSecurityZoneDao().getAll();
-               allXXService = daoMgr.getXXService().getAll();
+               List<XXSecurityZone> allXXZones   = 
daoMgr.getXXSecurityZoneDao().getAllZoneIdNames();
+               List<XXService>      allXXService = 
daoMgr.getXXService().getAll();
 
                if (CollectionUtils.isNotEmpty(allXXZones) && 
CollectionUtils.isNotEmpty(allXXService)) {
                        logger.info("Total number of zones " + 
allXXZones.size() +", service :" +allXXService.size());
                        for (XXSecurityZone xSecurityZone : allXXZones) {
                                for (XXService xService : allXXService) {
-                                       logger.info("serching duplicate guid 
policies for service :" + xService.getName() + " zone : "
-                                                       + 
xSecurityZone.getName());
-                                       List<String> duplicateGuidList = 
daoMgr.getXXPolicy()
-                                                       
.findDuplicateGUIDByServiceIdAndZoneId(xService.getId(), xSecurityZone.getId());
+                                       logger.info("searching duplicate guid 
policies for service :" + xService.getName() + " zone : " + 
xSecurityZone.getName());
+                                       List<String> duplicateGuidList = 
daoMgr.getXXPolicy().findDuplicateGUIDByServiceIdAndZoneId(xService.getId(), 
xSecurityZone.getId());
                                        if 
(CollectionUtils.isNotEmpty(duplicateGuidList)) {
-                                               logger.info("Total number of 
duplicate GUIDs :" + duplicateGuidList.size() + " for service :"
-                                                               + 
xService.getName() + " and zone :" + xSecurityZone.getName());
+                                               logger.info("Total number of 
duplicate GUIDs :" + duplicateGuidList.size() + " for service :" + 
xService.getName() + " and zone :" + xSecurityZone.getName());
                                                for (String guid : 
duplicateGuidList) {
-                                                       List<XXPolicy> 
xxPolicyList = daoMgr.getXXPolicy().findPolicyByGUIDAndServiceIdAndZoneId(
-                                                                       guid, 
xService.getId(), xSecurityZone.getId());
+                                                       List<XXPolicy> 
xxPolicyList = daoMgr.getXXPolicy().findPolicyByGUIDAndServiceIdAndZoneId(guid, 
xService.getId(), xSecurityZone.getId());
                                                        boolean isFirstElement 
= false;
                                                        if 
(CollectionUtils.isNotEmpty(xxPolicyList)) {
                                                                isFirstElement 
= true;
diff --git a/security-admin/src/main/resources/META-INF/jpa_named_queries.xml 
b/security-admin/src/main/resources/META-INF/jpa_named_queries.xml
index 15c1d6e5bc..f6253da035 100755
--- a/security-admin/src/main/resources/META-INF/jpa_named_queries.xml
+++ b/security-admin/src/main/resources/META-INF/jpa_named_queries.xml
@@ -1705,6 +1705,12 @@
                </query>
        </named-query>
 
+       <named-query name="XXSecurityZone.getAllZoneIdNames">
+               <query>
+                       select obj.id, obj.name from XXSecurityZone obj
+               </query>
+       </named-query>
+
        <named-query name="XXSecurityZoneRefGroup.findByZoneId">
         <query>
             select obj from XXSecurityZoneRefGroup obj where obj.zoneId = 
:zoneId

Reply via email to