Skip to content

Commit 60c7de8

Browse files
committed
Address yufei feedback
1 parent 0cf173f commit 60c7de8

File tree

1 file changed

+9
-10
lines changed

1 file changed

+9
-10
lines changed

extension/persistence/relational-jdbc/src/main/java/org/apache/polaris/extension/persistence/relational/jdbc/JdbcBasePersistenceImpl.java

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -721,8 +721,7 @@ public void writeToPolicyMappingRecords(
721721
PolicyType policyType = PolicyType.fromCode(record.getPolicyTypeCode());
722722
Preconditions.checkArgument(
723723
policyType != null, "Invalid policy type code: %s", record.getPolicyTypeCode());
724-
725-
String query =
724+
String insertQuery =
726725
generateInsertQuery(
727726
ModelPolicyMappingRecord.fromPolicyMappingRecord(record), realmId);
728727
if (policyType.isInheritable()) {
@@ -754,11 +753,15 @@ public void writeToPolicyMappingRecords(
754753
record.getPolicyCatalogId(),
755754
"realm_id",
756755
realmId);
757-
query =
756+
String updateQuery =
758757
generateUpdateQuery(
759758
ModelPolicyMappingRecord.fromPolicyMappingRecord(record), updateClause);
759+
statement.executeUpdate(updateQuery);
760+
} else {
761+
statement.executeUpdate(insertQuery);
760762
}
761-
statement.executeUpdate(query);
763+
} else {
764+
statement.executeUpdate(insertQuery);
762765
}
763766
return true;
764767
});
@@ -771,8 +774,7 @@ public void writeToPolicyMappingRecords(
771774
@Override
772775
public void deleteFromPolicyMappingRecords(
773776
@Nonnull PolarisCallContext callCtx, @Nonnull PolarisPolicyMappingRecord record) {
774-
ModelPolicyMappingRecord modelPolicyMappingRecord =
775-
ModelPolicyMappingRecord.fromPolicyMappingRecord(record);
777+
var modelPolicyMappingRecord = ModelPolicyMappingRecord.fromPolicyMappingRecord(record);
776778
String query = generateDeleteQuery(modelPolicyMappingRecord, realmId);
777779
try {
778780
datasourceOperations.executeUpdate(query);
@@ -822,10 +824,7 @@ public PolarisPolicyMappingRecord lookupPolicyMappingRecord(
822824
realmId);
823825
String query = generateSelectQuery(ModelPolicyMappingRecord.class, params);
824826
List<PolarisPolicyMappingRecord> results = fetchPolicyMappingRecords(query);
825-
if (results.size() > 1) {
826-
throw new IllegalStateException(
827-
String.format("More than 1 policy %s for a given policy mapping", results.getFirst()));
828-
}
827+
Preconditions.checkState(results.size() <= 1, "More than one policy mapping records found");
829828
return results.size() == 1 ? results.getFirst() : null;
830829
}
831830

0 commit comments

Comments
 (0)