Details
-
Improvement
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
Description
getPolicyByName searches policy by serviceName, policyName simply by traverse all policies in RangerServicePoliciesCache.
We need to call the DB to fetch policy instead of calling 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
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