You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ranger.apache.org by Ramachandran Krishnan <ra...@gmail.com> on 2023/02/01 03:58:35 UTC
Re: Review Request 74251: RANGER-4012:getPolicyByName searches policy by serviceName, policyName simply by traverse all policies in RangerServicePoliciesCache instead of DB
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/74251/
-----------------------------------------------------------
(Updated Feb. 1, 2023, 3:58 a.m.)
Review request for ranger, Don Bosco Durai, Kirby Zhou, Abhay Kulkarni, Madhan Neethiraj, Mehul Parikh, Nikhil P, Pradeep Agrawal, Ramesh Mani, Selvamohan Neethiraj, Sailaja Polavarapu, Subhrat Chaudhary, and Velmurugan Periasamy.
Bugs: RANGER-4012
https://issues.apache.org/jira/browse/RANGER-4012
Repository: ranger
Description
-------
getPolicyByName searches policy by serviceName, policyName simply by traverse all policies in RangerServicePoliciesCache.
However, It takes more time to search for policies from the cache when there are millions of policies
As well as The above REST API sometimes gives stable data due to the deleted element is present in the Cache
We need to call the DB to fetch policy instead of calling RangerServicePoliciesCache
In PublicAPIsv2 we add the API's which are available in ServiceREST as an API and the getPolicyByName is not available as an API in ServiceREST.
getPolicyByName ---> (/api/service/{servicename}/policy/{policyname}) in PublicAPIsv2
I guess we should add the below API in ServiceREST also for the same.
getPolicyByName ---> (/policies/service/{serviceName}/policy/{policyName}) in ServiceREST
Diffs (updated)
-----
intg/src/main/java/org/apache/ranger/RangerClient.java e4e3a57ad
intg/src/main/python/apache_ranger/client/ranger_client.py 527380de7
ranger-examples/sample-client/src/main/java/org/apache/ranger/examples/sampleclient/SampleClient.java d0202e47e
security-admin/src/main/java/org/apache/ranger/rest/PublicAPIsv2.java d98910bee
security-admin/src/main/java/org/apache/ranger/rest/ServiceREST.java ec02f47f7
security-admin/src/test/java/org/apache/ranger/rest/TestPublicAPIsv2.java 7409883ab
security-admin/src/test/java/org/apache/ranger/rest/TestServiceREST.java 8fdcc43c8
Diff: https://reviews.apache.org/r/74251/diff/6/
Changes: https://reviews.apache.org/r/74251/diff/5-6/
Testing
-------
Thanks,
Ramachandran Krishnan
Re: Review Request 74251: RANGER-4012:getPolicyByName searches policy by serviceName, policyName simply by traverse all policies in RangerServicePoliciesCache instead of DB
Posted by Madhan Neethiraj <ma...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/74251/#review225163
-----------------------------------------------------------
Ship it!
Ship It!
- Madhan Neethiraj
On Feb. 7, 2023, 5:34 p.m., Ramachandran Krishnan wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/74251/
> -----------------------------------------------------------
>
> (Updated Feb. 7, 2023, 5:34 p.m.)
>
>
> Review request for ranger, Don Bosco Durai, Kirby Zhou, Abhay Kulkarni, Madhan Neethiraj, Mehul Parikh, Nikhil P, Pradeep Agrawal, Ramesh Mani, Selvamohan Neethiraj, Sailaja Polavarapu, Subhrat Chaudhary, and Velmurugan Periasamy.
>
>
> Bugs: RANGER-4012
> https://issues.apache.org/jira/browse/RANGER-4012
>
>
> Repository: ranger
>
>
> Description
> -------
>
> getPolicyByName searches policy by serviceName, policyName simply by traverse all policies in RangerServicePoliciesCache.
>
> However, It takes more time to search for policies from the cache when there are millions of policies
>
> As well as The above REST API sometimes gives stable data due to the deleted element is present in the Cache
>
> We need to call the DB to fetch policy instead of calling RangerServicePoliciesCache
>
> In PublicAPIsv2 we add the API's which are available in ServiceREST as an API and the getPolicyByName is not available as an API in ServiceREST.
>
> getPolicyByName ---> (/api/service/{servicename}/policy/{policyname}) in PublicAPIsv2
>
> I guess we should add the below API in ServiceREST also for the same.
>
> getPolicyByName ---> (/policies/service/{serviceName}/policy/{policyName}) in ServiceREST
>
>
> Diffs
> -----
>
> intg/src/main/java/org/apache/ranger/RangerClient.java e4e3a57ad
> intg/src/main/python/apache_ranger/client/ranger_client.py 16853d4c2
> ranger-examples/sample-client/src/main/java/org/apache/ranger/examples/sampleclient/SampleClient.java d0202e47e
> security-admin/src/main/java/org/apache/ranger/rest/PublicAPIsv2.java d98910bee
> security-admin/src/main/java/org/apache/ranger/rest/ServiceREST.java e02b0ea42
> security-admin/src/test/java/org/apache/ranger/rest/TestPublicAPIsv2.java 7409883ab
> security-admin/src/test/java/org/apache/ranger/rest/TestServiceREST.java 5e3b1908d
>
>
> Diff: https://reviews.apache.org/r/74251/diff/8/
>
>
> Testing
> -------
>
>
> Thanks,
>
> Ramachandran Krishnan
>
>
Re: Review Request 74251: RANGER-4012:getPolicyByName searches policy by serviceName, policyName simply by traverse all policies in RangerServicePoliciesCache instead of DB
Posted by Ramachandran Krishnan <ra...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/74251/
-----------------------------------------------------------
(Updated Feb. 7, 2023, 5:34 p.m.)
Review request for ranger, Don Bosco Durai, Kirby Zhou, Abhay Kulkarni, Madhan Neethiraj, Mehul Parikh, Nikhil P, Pradeep Agrawal, Ramesh Mani, Selvamohan Neethiraj, Sailaja Polavarapu, Subhrat Chaudhary, and Velmurugan Periasamy.
Bugs: RANGER-4012
https://issues.apache.org/jira/browse/RANGER-4012
Repository: ranger
Description
-------
getPolicyByName searches policy by serviceName, policyName simply by traverse all policies in RangerServicePoliciesCache.
However, It takes more time to search for policies from the cache when there are millions of policies
As well as The above REST API sometimes gives stable data due to the deleted element is present in the Cache
We need to call the DB to fetch policy instead of calling RangerServicePoliciesCache
In PublicAPIsv2 we add the API's which are available in ServiceREST as an API and the getPolicyByName is not available as an API in ServiceREST.
getPolicyByName ---> (/api/service/{servicename}/policy/{policyname}) in PublicAPIsv2
I guess we should add the below API in ServiceREST also for the same.
getPolicyByName ---> (/policies/service/{serviceName}/policy/{policyName}) in ServiceREST
Diffs (updated)
-----
intg/src/main/java/org/apache/ranger/RangerClient.java e4e3a57ad
intg/src/main/python/apache_ranger/client/ranger_client.py 16853d4c2
ranger-examples/sample-client/src/main/java/org/apache/ranger/examples/sampleclient/SampleClient.java d0202e47e
security-admin/src/main/java/org/apache/ranger/rest/PublicAPIsv2.java d98910bee
security-admin/src/main/java/org/apache/ranger/rest/ServiceREST.java e02b0ea42
security-admin/src/test/java/org/apache/ranger/rest/TestPublicAPIsv2.java 7409883ab
security-admin/src/test/java/org/apache/ranger/rest/TestServiceREST.java 5e3b1908d
Diff: https://reviews.apache.org/r/74251/diff/8/
Changes: https://reviews.apache.org/r/74251/diff/7-8/
Testing
-------
Thanks,
Ramachandran Krishnan
Re: Review Request 74251: RANGER-4012:getPolicyByName searches policy by serviceName, policyName simply by traverse all policies in RangerServicePoliciesCache instead of DB
Posted by Madhan Neethiraj <ma...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/74251/#review225162
-----------------------------------------------------------
intg/src/main/java/org/apache/ranger/RangerClient.java
Lines 291 (patched)
<https://reviews.apache.org/r/74251/#comment313929>
"serviceName" => PARAM_SERVICE_NAME
security-admin/src/main/java/org/apache/ranger/rest/ServiceREST.java
Line 4373 (original), 4373 (patched)
<https://reviews.apache.org/r/74251/#comment313930>
Since PublicAPIsv2 already exposes REST endpoint for getPolicyByName(), I suggest to not make ServiceREST.getPolicyByName() available for REST i.e., remove annotations @GET, @Path, @Produce, @PathParam, @QueryParam.
- Madhan Neethiraj
On Feb. 7, 2023, 1:40 p.m., Ramachandran Krishnan wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/74251/
> -----------------------------------------------------------
>
> (Updated Feb. 7, 2023, 1:40 p.m.)
>
>
> Review request for ranger, Don Bosco Durai, Kirby Zhou, Abhay Kulkarni, Madhan Neethiraj, Mehul Parikh, Nikhil P, Pradeep Agrawal, Ramesh Mani, Selvamohan Neethiraj, Sailaja Polavarapu, Subhrat Chaudhary, and Velmurugan Periasamy.
>
>
> Bugs: RANGER-4012
> https://issues.apache.org/jira/browse/RANGER-4012
>
>
> Repository: ranger
>
>
> Description
> -------
>
> getPolicyByName searches policy by serviceName, policyName simply by traverse all policies in RangerServicePoliciesCache.
>
> However, It takes more time to search for policies from the cache when there are millions of policies
>
> As well as The above REST API sometimes gives stable data due to the deleted element is present in the Cache
>
> We need to call the DB to fetch policy instead of calling RangerServicePoliciesCache
>
> In PublicAPIsv2 we add the API's which are available in ServiceREST as an API and the getPolicyByName is not available as an API in ServiceREST.
>
> getPolicyByName ---> (/api/service/{servicename}/policy/{policyname}) in PublicAPIsv2
>
> I guess we should add the below API in ServiceREST also for the same.
>
> getPolicyByName ---> (/policies/service/{serviceName}/policy/{policyName}) in ServiceREST
>
>
> Diffs
> -----
>
> intg/src/main/java/org/apache/ranger/RangerClient.java e4e3a57ad
> intg/src/main/python/apache_ranger/client/ranger_client.py 16853d4c2
> ranger-examples/sample-client/src/main/java/org/apache/ranger/examples/sampleclient/SampleClient.java d0202e47e
> security-admin/src/main/java/org/apache/ranger/rest/PublicAPIsv2.java d98910bee
> security-admin/src/main/java/org/apache/ranger/rest/ServiceREST.java e02b0ea42
> security-admin/src/test/java/org/apache/ranger/rest/TestPublicAPIsv2.java 7409883ab
> security-admin/src/test/java/org/apache/ranger/rest/TestServiceREST.java 5e3b1908d
>
>
> Diff: https://reviews.apache.org/r/74251/diff/7/
>
>
> Testing
> -------
>
>
> Thanks,
>
> Ramachandran Krishnan
>
>
Re: Review Request 74251: RANGER-4012:getPolicyByName searches policy by serviceName, policyName simply by traverse all policies in RangerServicePoliciesCache instead of DB
Posted by Ramachandran Krishnan <ra...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/74251/
-----------------------------------------------------------
(Updated Feb. 7, 2023, 1:40 p.m.)
Review request for ranger, Don Bosco Durai, Kirby Zhou, Abhay Kulkarni, Madhan Neethiraj, Mehul Parikh, Nikhil P, Pradeep Agrawal, Ramesh Mani, Selvamohan Neethiraj, Sailaja Polavarapu, Subhrat Chaudhary, and Velmurugan Periasamy.
Bugs: RANGER-4012
https://issues.apache.org/jira/browse/RANGER-4012
Repository: ranger
Description
-------
getPolicyByName searches policy by serviceName, policyName simply by traverse all policies in RangerServicePoliciesCache.
However, It takes more time to search for policies from the cache when there are millions of policies
As well as The above REST API sometimes gives stable data due to the deleted element is present in the Cache
We need to call the DB to fetch policy instead of calling RangerServicePoliciesCache
In PublicAPIsv2 we add the API's which are available in ServiceREST as an API and the getPolicyByName is not available as an API in ServiceREST.
getPolicyByName ---> (/api/service/{servicename}/policy/{policyname}) in PublicAPIsv2
I guess we should add the below API in ServiceREST also for the same.
getPolicyByName ---> (/policies/service/{serviceName}/policy/{policyName}) in ServiceREST
Diffs (updated)
-----
intg/src/main/java/org/apache/ranger/RangerClient.java e4e3a57ad
intg/src/main/python/apache_ranger/client/ranger_client.py 16853d4c2
ranger-examples/sample-client/src/main/java/org/apache/ranger/examples/sampleclient/SampleClient.java d0202e47e
security-admin/src/main/java/org/apache/ranger/rest/PublicAPIsv2.java d98910bee
security-admin/src/main/java/org/apache/ranger/rest/ServiceREST.java e02b0ea42
security-admin/src/test/java/org/apache/ranger/rest/TestPublicAPIsv2.java 7409883ab
security-admin/src/test/java/org/apache/ranger/rest/TestServiceREST.java 5e3b1908d
Diff: https://reviews.apache.org/r/74251/diff/7/
Changes: https://reviews.apache.org/r/74251/diff/6-7/
Testing
-------
Thanks,
Ramachandran Krishnan