----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/74112/ -----------------------------------------------------------
(Updated Nov. 8, 2022, 3:56 a.m.) Review request for ranger, Abhay Kulkarni, Madhan Neethiraj, Nikhil P, Pradeep Agrawal, Ramesh Mani, Selvamohan Neethiraj, Sailaja Polavarapu, and Velmurugan Periasamy. Bugs: RANGER-3903 https://issues.apache.org/jira/browse/RANGER-3903 Repository: ranger Description ------- After going through the below code snippets in the master branch while (iter.hasNext()) { RangerPolicy policy = iter.next(); if (policyId.equals(policy.getId()) && (changeType == RangerPolicyDelta.CHANGE_TYPE_POLICY_DELETE || changeType == RangerPolicyDelta.CHANGE_TYPE_POLICY_UPDATE)) { deletedPolicies.add(policy); iter.remove(); } } switch (changeType) { case RangerPolicyDelta.CHANGE_TYPE_POLICY_CREATE: { if (CollectionUtils.isNotEmpty(deletedPolicies)) { LOG.warn("Unexpected: found existing policy for CHANGE_TYPE_POLICY_CREATE: " + Arrays.toString(deletedPolicies.toArray())); } break; } case RangerPolicyDelta.CHANGE_TYPE_POLICY_UPDATE: { if (CollectionUtils.isEmpty(deletedPolicies) || deletedPolicies.size() > 1) { LOG.warn("Unexpected: found no policy or multiple policies for CHANGE_TYPE_POLICY_UPDATE: " + Arrays.toString(deletedPolicies.toArray())); } break; } case RangerPolicyDelta.CHANGE_TYPE_POLICY_DELETE: { if (CollectionUtils.isEmpty(deletedPolicies) || deletedPolicies.size() > 1) { LOG.warn("Unexpected: found no policy or multiple policies for CHANGE_TYPE_POLICY_DELETE: " + Arrays.toString(deletedPolicies.toArray())); } break; } default: break; } >From the above code, we iterate delta policies and check if this policy exists >in the existing policy, we add that to deletePolicies list. If a delta change type is created, we expect that it should not be in the existing old policy which should not have happened. So the below block code is not needed case RangerPolicyDelta.CHANGE_TYPE_POLICY_CREATE: { if (CollectionUtils.isNotEmpty(deletedPolicies)) { LOG.warn("Unexpected: found existing policy for CHANGE_TYPE_POLICY_CREATE: " + Arrays.toString(deletedPolicies.toArray())); } break; } Diffs (updated) ----- agents-common/src/main/java/org/apache/ranger/plugin/util/RangerPolicyDeltaUtil.java e9223fe69 Diff: https://reviews.apache.org/r/74112/diff/3/ Changes: https://reviews.apache.org/r/74112/diff/2-3/ Testing ------- Tested the below Rest API's to make sure everything works fine 1. ServiceREST Rest API :GET /plugins/policies/download/{serviceName} 2. ServiceREST Rest API :GET /plugins/secure/policies/download/{serviceName} Thanks, Ramachandran Krishnan