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

RickyMa edited comment on RANGER-2789 at 4/10/20, 11:49 AM:
------------------------------------------------------------

I've already uploaded the patch. By applying this patch, the response time has 
decreased from 10+ minutes to around 30 seconds in our production environment.

The problem of this issue is that the original code will query the database for 
every one of the 1000+ users:

[https://github.com/apache/ranger/blob/master/security-admin/src/main/java/org/apache/ranger/service/XUserServiceBase.java#L84]

!image-2020-04-10-19-37-31-570.png!

The main ideas of the uploaded patch are:
 # Find all users in the database at one time.
 # Use HashMap as cache to store all the database info in memory.
 # Just use the cache during any follow-up db operation.

 


was (Author: rickyma):
I've already uploaded the patch. By applying this patch, the response time has 
decreased from 10+ minutes to 30 seconds in our production environment.

The problem of this issue is that the original code will query the database for 
every one of the 1000+ users:

[https://github.com/apache/ranger/blob/master/security-admin/src/main/java/org/apache/ranger/service/XUserServiceBase.java#L84]

!image-2020-04-10-19-37-31-570.png!

The main ideas of the uploaded patch are:
 # Find all users in the database at one time.
 # Use HashMap as cache to store all the database info in memory.
 # Just use the cache during any follow-up db operation.

 

> GET API service/xusers/users turns very slow when there are more than 1000 
> users
> --------------------------------------------------------------------------------
>
>                 Key: RANGER-2789
>                 URL: https://issues.apache.org/jira/browse/RANGER-2789
>             Project: Ranger
>          Issue Type: Bug
>          Components: Ranger
>    Affects Versions: 2.0.0
>         Environment: hdp 2.2
>            Reporter: RickyMa
>            Priority: Minor
>              Labels: optimization, performance, ranger, rangeradmin, slow
>         Attachments: RANGER-2789.patch, image-2020-04-10-19-37-31-570.png
>
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> We have more than 1000 users in production environment.
> When calling API 'service/xusers/users?pageSize=1000&startIndex=0' using HTTP 
> GET method, Ranger Admin takes 10+ minutes to response.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to