[ 
https://issues.apache.org/jira/browse/RANGER-4907?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17877966#comment-17877966
 ] 

Subhrat Chaudhary commented on RANGER-4907:
-------------------------------------------

Hi [~abhi_2110] , thanks for the suggestion, but the approach mentioned in 
RANGER-4246 will not help much, since for policy update we have many checks 
which make DB calls. We can improve this drastically, by adding following 
changes:
 * remove user-group associations based on id, instead of deleting the objects 
as suggested in RANGER-3681
 * overload policy update method to update only the policyText in ranger 
policy, since no other change is being made.

With these changes we can see improvement in user deletion from 8 min to 10 sec 
(for a user with 10k groups and 10k policies). I will share the patch shortly 
for same.

> Optimize user delete operation
> ------------------------------
>
>                 Key: RANGER-4907
>                 URL: https://issues.apache.org/jira/browse/RANGER-4907
>             Project: Ranger
>          Issue Type: Improvement
>          Components: admin
>            Reporter: Subhrat Chaudhary
>            Assignee: Subhrat Chaudhary
>            Priority: Major
>
> If a user has large number of associations with groups, policies, the user 
> delete operation can take large amount of time, especially while updating the 
> policies. Since to update a policy, we have large number of validations in 
> place. This can be even worse, if multiple user delete requests are received 
> at the same time. We can add following optimizations to improve the user 
> delete performance:
>  * Remove foreign key relation of x_user with x_auth_sess, with this we can 
> skip updating the user references in x_auth_sess when a user is deleted.
>  * Currently all policy reference for a user are cleaned up and updated ones 
> are added again. We can remove policy reference only for the user being 
> deleted.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to