Skip to content

Commit 32f836b

Browse files
committed
RANGER-5345: [GDS] Shared resource creation api is failing for oracle db
1 parent db1ea50 commit 32f836b

File tree

2 files changed

+15
-12
lines changed

2 files changed

+15
-12
lines changed

agents-common/src/main/java/org/apache/ranger/authorization/utils/JsonUtils.java

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -276,13 +276,14 @@ public static List<RangerTag> jsonToRangerTagList(String jsonStr) {
276276
}
277277

278278
public static List<RangerGdsMaskInfo> jsonToListGdsMaskInfo(String jsonStr) {
279-
try {
280-
return getMapper().readValue(jsonStr, TYPE_LIST_RANGER_GDS_MASK_INFO);
281-
} catch (Exception e) {
282-
LOG.error("Cannot get Map<String, RangerPolicyItemDataMaskInfo> from {}", jsonStr, e);
283-
284-
return null;
279+
if (StringUtils.isNotEmpty(jsonStr)) {
280+
try {
281+
return getMapper().readValue(jsonStr, TYPE_LIST_RANGER_GDS_MASK_INFO);
282+
} catch (Exception e) {
283+
LOG.error("Cannot get List<RangerGdsMaskInfo> from {}", jsonStr, e);
284+
}
285285
}
286+
return null;
286287
}
287288

288289
public static Map<String, RangerPolicyResource> jsonToMapPolicyResource(String jsonStr) {

security-admin/src/main/resources/META-INF/jpa_named_queries.xml

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2263,12 +2263,14 @@
22632263
</named-query>
22642264

22652265
<named-query name="XXGdsProject.findProjectsWithDataShareInStatus">
2266-
<query>SELECT DISTINCT obj FROM XXGdsProject obj, XXGdsDatasetInProject dip, XXGdsDataShareInDataset dshid
2267-
WHERE dshid.dataShareId = :dataShareId
2268-
AND dshid.status = :status
2269-
AND dip.datasetId = dshid.datasetId
2270-
AND dip.projectId = obj.id
2271-
AND dip.status = :status</query>
2266+
<query>SELECT obj FROM XXGdsProject obj
2267+
WHERE EXISTS (
2268+
SELECT 1 FROM XXGdsDatasetInProject dip, XXGdsDataShareInDataset dshid
2269+
WHERE dshid.dataShareId = :dataShareId
2270+
AND dshid.status = :status
2271+
AND dip.datasetId = dshid.datasetId
2272+
AND dip.projectId = obj.id
2273+
AND dip.status = :status)</query>
22722274
</named-query>
22732275

22742276
<named-query name="XXGdsProject.findServiceIds">

0 commit comments

Comments
 (0)