> On Aug. 1, 2023, 4:41 p.m., Madhan Neethiraj wrote:
> > security-admin/src/main/java/org/apache/ranger/rest/XUserREST.java
> > Lines 530 (patched)
> > <https://reviews.apache.org/r/74528/diff/2/?file=2278018#file2278018line530>
> >
> >     Following calls would result in at least 3 database queries (or 6 
> > queries when getCount=true):
> >     - getUsersLookup()
> >     - getGroupsLookup()
> >     - roleStore.getRoles()
> >     
> >     Is it possible to retrieve user/group/role names in a single query, 
> > with something like the following:
> >     
> >     (SELECT user_name AS principal_name, 0 AS principal_type FROM x_user 
> > WHERE user_name LIKE 'r%' AND is_visible = 1 ORDER BY user_name LIMIT 5)
> >     UNION
> >     (SELECT group_name AS principal_name, 1 AS principal_type FROM x_group 
> > WHERE group_name LIKE 'r%' AND is_visible = 1 ORDER BY group_name LIMIT 5)
> >     UNION
> >     (SELECT name AS principal_name, 2 AS principal_type FROM x_role WHERE 
> > name LIKE 'r%' ORDER BY name LIMIT 5)
> >     ORDER BY principal_name
> >     LIMIT 5;

was not able to implement UNION in case of JPA Query so added 3 seperate JPA 
queries to fetch Name feild List from user,group,role tables


- Prashant


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


On Aug. 1, 2023, 7:07 a.m., Prashant Satam wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/74528/
> -----------------------------------------------------------
> 
> (Updated Aug. 1, 2023, 7:07 a.m.)
> 
> 
> Review request for ranger, Madhan Neethiraj and Subhrat Chaudhary.
> 
> 
> Bugs: RANGER-4325
>     https://issues.apache.org/jira/browse/RANGER-4325
> 
> 
> Repository: ranger
> 
> 
> Description
> -------
> 
> We get users,groups,roles all we get in response from one API 
> (/xusers/users/groups/roles) we can also pass Query Params like 
> name,isVisible Also we can PartialSearch Name for users,groups,roles
> 
> 
> Diffs
> -----
> 
>   security-admin/src/main/java/org/apache/ranger/rest/XUserREST.java 
> 9a2253a3d 
> 
> 
> Diff: https://reviews.apache.org/r/74528/diff/2/
> 
> 
> Testing
> -------
> 
> We get users,groups,roles combined in response from API 
> (/xusers/users/groups/roles) we can pass query params like name(PartialSearch 
> Available),isVisible to filter the users,groups,roles we get in response
> 
> 
> Thanks,
> 
> Prashant Satam
> 
>

Reply via email to