-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/75238/
-----------------------------------------------------------

(Updated Oct. 6, 2025, 12:18 p.m.)


Review request for ranger, Dineshkumar Yadav, Kishor Gollapalliwar, Abhay 
Kulkarni, Madhan Neethiraj, Mehul Parikh, Pradeep Agrawal, Ramesh Mani, sanket 
shelar, Sailaja Polavarapu, and Velmurugan Periasamy.


Changes
-------

Rebased patch


Bugs: RANGER-4692
    https://issues.apache.org/jira/browse/RANGER-4692


Repository: ranger


Description
-------

Currently there are different type like (Policy, Role, Tag, UserStore and GDS) 
on plugin status.

when we have plugins(large enough to accommodate in single page), It will be 
helpful to identify any out-of-sync plugins based on download times, sorting 
them by policyDownloadTime, tagDownloadTime, roleDownloadTime, 
userstoreDownloadTime and gdsDownloadTime.


Diffs (updated)
-----

  
agents-common/src/main/java/org/apache/ranger/plugin/model/RangerPluginInfo.java
 f3396c497 
  dev-support/checkstyle-suppressions.xml 624016707 
  security-admin/db/mysql/optimized/current/ranger_core_db_mysql.sql f0448738e 
  security-admin/db/mysql/patches/077-add-columns-in-x_plugin_info.sql 
PRE-CREATION 
  security-admin/db/oracle/optimized/current/ranger_core_db_oracle.sql 
64e998e24 
  security-admin/db/oracle/patches/077-add-columns-in-x_plugin_info.sql 
PRE-CREATION 
  security-admin/db/postgres/optimized/current/ranger_core_db_postgres.sql 
8b0d8ae6e 
  security-admin/db/postgres/patches/077-add-columns-in-x_plugin_info.sql 
PRE-CREATION 
  
security-admin/db/sqlanywhere/optimized/current/ranger_core_db_sqlanywhere.sql 
259225314 
  security-admin/db/sqlanywhere/patches/077-add-columns-in-x_plugin_info.sql 
PRE-CREATION 
  security-admin/db/sqlserver/optimized/current/ranger_core_db_sqlserver.sql 
ac95cd2b8 
  security-admin/db/sqlserver/patches/077-add-columns-in-x_plugin_info.sql 
PRE-CREATION 
  security-admin/src/main/java/org/apache/ranger/biz/AssetMgr.java b460d0762 
  security-admin/src/main/java/org/apache/ranger/entity/XXPluginInfo.java 
6762a850c 
  security-admin/src/main/java/org/apache/ranger/entity/view/VXXPluginInfo.java 
PRE-CREATION 
  
security-admin/src/main/java/org/apache/ranger/patch/PatchForPluginStatusEventSorting_J10064.java
 PRE-CREATION 
  
security-admin/src/main/java/org/apache/ranger/service/RangerPluginInfoService.java
 747abd223 
  
security-admin/src/test/java/org/apache/ranger/service/TestRangerPluginInfoService.java
 e3cf5ff58 


Diff: https://reviews.apache.org/r/75238/diff/8/

Changes: https://reviews.apache.org/r/75238/diff/7-8/


Testing
-------

Tested and verified that the plugins are correctly sorted by event type 
(Policy, Role, Tag, UserStore, GDS) using the following APIs:

/service/plugins/info?sortType=desc&sortBy=policyDownloadTime
/service/plugins/info?sortType=desc&sortBy=policyActivationTime
/service/plugins/info?sortType=desc&sortBy=lastPolicyUpdateTime
/service/plugins/info?sortType=desc&sortBy=tagDownloadTime
/service/plugins/info?sortType=desc&sortBy=tagActivationTime
/service/plugins/info?sortType=desc&sortBy=lasttagUpdateTime
/service/plugins/info?sortType=desc&sortBy=gdsDownloadTime
/service/plugins/info?sortType=desc&sortBy=gdsActivationTime
/service/plugins/info?sortType=desc&sortBy=lastgdsUpdateTime
/service/plugins/info?sortType=desc&sortBy=roleDownloadTime
/service/plugins/info?sortType=desc&sortBy=roleActivationTime
/service/plugins/info?sortType=desc&sortBy=lastroleUpdateTime
/service/plugins/info?sortType=desc&sortBy=userstoreDownloadTime
/service/plugins/info?sortType=desc&sortBy=userstoreActivationTime
/service/plugins/info?sortType=desc&sortBy=clusterName
/service/plugins/info?sortType=desc&sortBy=serviceType

Also tested filtering by:
/service/plugins/info?serviceType={serviceTypeName}
/service/plugins/info?clusterName={clusterName}


Tested Java patch for upgrade scenario: completed processing 1,00,009 records 
in 21 seconds.
Here’s are contents from ranger_db_patch.log:

2024-11-19 12:19:25,941 [main]      INFO  Found 100009 plugin info records to 
process.
2024-11-19 12:19:26,537 [Thread-10] INFO  PROGRESS: 1000 plugin status records 
processed.
2024-11-19 12:19:26,890 [Thread-12] INFO  PROGRESS: 2000 plugin status records 
processed.
2024-11-19 12:19:27,222 [Thread-11] INFO  PROGRESS: 3000 plugin status records 
processed.
...
2024-11-19 12:19:46,647 [Thread-11] INFO  PROGRESS: 99000 plugin status records 
processed.
2024-11-19 12:19:46,808 [Thread-10] INFO  PROGRESS: 100000 plugin status 
records processed.
2024-11-19 12:19:46,813 [main]      INFO  Loading completed!!!. Time 
taken=21secs, 660ms
2024-11-19 12:19:46,813 [Loader Monitor] INFO  Monitor Thread exiting!!!
2024-11-19 12:19:46,902 [main] INFO  Load complete. Exiting!!!

Performance Results:
API Endpoint: /service/plugins/plugins/info

Pre-Patch:
Response Time for pageSize=10,000: 1 minute 59.28 seconds

Post-Patch:
pageSize=10,000: 590 ms.
pageSize=50,000: 1420 ms.
pageSize=1,00,000: 2.73 s


Thanks,

Rakesh Gupta

Reply via email to