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




security-admin/src/main/java/org/apache/ranger/db/XXGlobalStateDao.java
Lines 84 (patched)
<https://reviews.apache.org/r/72252/#comment308446>

    Please consider setting logging level to "warn", as we dont expect users to 
take any action on it. Also, please change the message to indicate that the 
processing will be continued.



security-admin/src/main/java/org/apache/ranger/db/XXGlobalStateDao.java
Line 82 (original), 86 (patched)
<https://reviews.apache.org/r/72252/#comment308448>

    Please change the logging level to warn. Also, do not print exception as it 
will clutter up output log without adding much help to debug the issue. Include 
"continuing" to the log message.


- Abhay Kulkarni


On March 30, 2020, 3:49 p.m., Mahesh Bandal wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/72252/
> -----------------------------------------------------------
> 
> (Updated March 30, 2020, 3:49 p.m.)
> 
> 
> Review request for ranger, Ankita Sinha, Gautam Borad, Madhan Neethiraj, 
> Mehul Parikh, Pradeep Agrawal, Ramesh Mani, Sailaja Polavarapu, and 
> Velmurugan Periasamy.
> 
> 
> Bugs: RANGER-2764
>     https://issues.apache.org/jira/browse/RANGER-2764
> 
> 
> Repository: ranger
> 
> 
> Description
> -------
> 
> The issue came when Role API was called in multi thread and two separate 
> threads were trying to INSERT same  roletype, which has unique constraint. ie 
> 'state_name' column in 'x_ranger_global_state' table. To handle such 
> scenarios, loading 'x_ranger_global_state' table with initial version values 
> during initial setup only.
> Also OptimisticLockException occurs for RoleCreation and RoleDeletion when 
> two threads are trying to update version column of x_ranger_global_state 
> table. To solve this proble I have used 
> RangerTransactionSynchronizationAdapter class for updating version in 
> synchonised way.
> 
> 
> Diffs
> -----
> 
>   security-admin/db/mysql/optimized/current/ranger_core_db_mysql.sql 
> 2d93fc429 
>   
> security-admin/db/mysql/patches/046-insert-statename-in-x-ranger-global-state.sql
>  PRE-CREATION 
>   security-admin/db/oracle/optimized/current/ranger_core_db_oracle.sql 
> 38e546a56 
>   
> security-admin/db/oracle/patches/046-insert-statename-in-x-ranger-global-state.sql
>  PRE-CREATION 
>   security-admin/db/postgres/optimized/current/ranger_core_db_postgres.sql 
> 7c2ada55e 
>   
> security-admin/db/postgres/patches/046-insert-statename-in-x-ranger-global-state.sql
>  PRE-CREATION 
>   
> security-admin/db/sqlanywhere/optimized/current/ranger_core_db_sqlanywhere.sql
>  7b0509cc0 
>   
> security-admin/db/sqlanywhere/patches/046-insert-statename-in-x-ranger-global-state.sql
>  PRE-CREATION 
>   security-admin/db/sqlserver/optimized/current/ranger_core_db_sqlserver.sql 
> 25b3bed34 
>   
> security-admin/db/sqlserver/patches/046-insert-statename-in-x-ranger-global-state.sql
>  PRE-CREATION 
>   security-admin/src/main/java/org/apache/ranger/biz/RoleDBStore.java 
> c4a32e46e 
>   security-admin/src/main/java/org/apache/ranger/db/XXGlobalStateDao.java 
> b979459e8 
> 
> 
> Diff: https://reviews.apache.org/r/72252/diff/5/
> 
> 
> Testing
> -------
> 
> 1. Fresh(Initial) Setup : Created new environment for ranger master. So now 
> patch execute successfully and 'x_ranger_global_state' table have intial 
> values with respected 'staste_name' columns with default 'version=1'.
> 
> 2. Upgrade ranger : Created new environment for ranger master branch and 
> ranger-2.0 branch. Run setup.sh file for   ranger-2.0. Initially no values in 
> 'x_ranger_global_state' table. Now setting up master branch with upgraded 
> patch and run setup.sh on master branch where db points to same schema as 
> ranger-2.0. db file '046-insert-statename-in-x-ranger-global-state.sql' 
> execute successfully and 'x_ranger_global_state' table have intial values 
> with respected 'staste_name' columns with default 'version=1'.
> 3. Created/Deleted 300 roles simultaneously. Roles are successfully created 
> but version update fails at some point with OptimisticLockException. Handled 
> exception and success response retured.
> 
> After applying patch; created/deleted multiple roles. 'state_name' column 
> updates successfully.
> 
> 
> Thanks,
> 
> Mahesh Bandal
> 
>

Reply via email to