diff options
author | qingshuting <qingshuting1@huawei.com> | 2022-09-14 10:37:24 +0800 |
---|---|---|
committer | qingshuting <qingshuting1@huawei.com> | 2022-09-20 21:13:42 +0800 |
commit | f2a6c55e7eec923b662fb161a3ba2ef5e144a085 (patch) | |
tree | 2864167b15824b6303a250e989ae25b56bad4941 | |
parent | c88aa892312ef0fec4c39f9239b54cc0468ce35c (diff) |
[ConfigFetchFromCbs] Fix bug of cbs that fetch configs getting hung whenjakarta
policy engine is empty
Issue-ID: DCAEGEN2-3242
Signed-off-by: qingshuting <qingshuting1@huawei.com>
Change-Id: I21307291c182e3681ba864afc5a6a6f7eb5a8add
(cherry picked from commit 7d549f48c21ff063518e8ff481c3e5a9eb8ca8b0)
-rw-r--r-- | Changelog.md | 1 | ||||
-rw-r--r-- | src/main/java/org/onap/dcaegen2/services/sonhms/controller/ConfigFetchFromCbs.java | 13 |
2 files changed, 10 insertions, 4 deletions
diff --git a/Changelog.md b/Changelog.md index 9ff9d6b..15c1a00 100644 --- a/Changelog.md +++ b/Changelog.md @@ -6,6 +6,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/). ## [2.1.7] - 2021/05/11 - [DCAEGEN2-3150](https://jira.onap.org/browse/DCAEGEN2-3150) - Fix bug in handling FM notification + - [DCAEGEN2-3242](https://jira.onap.org/browse/DCAEGEN2-3242) - Fix bug in ConfigFectchFromCbs that fetch will get hung when policy config in pdp engine is empty ## [2.1.6] - 2022/02/07 - [DCAEGEN2-3057](https://jira.onap.org/browse/DCAEGEN2-3057) - Fix bug in triggering control loop for PCI collision/confusion - by replacing Config DB with CPS diff --git a/src/main/java/org/onap/dcaegen2/services/sonhms/controller/ConfigFetchFromCbs.java b/src/main/java/org/onap/dcaegen2/services/sonhms/controller/ConfigFetchFromCbs.java index afd5092..41f00a9 100644 --- a/src/main/java/org/onap/dcaegen2/services/sonhms/controller/ConfigFetchFromCbs.java +++ b/src/main/java/org/onap/dcaegen2/services/sonhms/controller/ConfigFetchFromCbs.java @@ -3,6 +3,7 @@ * son-handler * ================================================================================ * Copyright (C) 2019-2021 Wipro Limited. + * Copyright (C) 2022 Huawei Technologies Co., Ltd. * ============================================================================== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -93,11 +94,15 @@ public class ConfigFetchFromCbs implements Runnable { Type mapType = new TypeToken<Map<String, Object>>() { }.getType(); if (jsonObject.getAsJsonObject("policies") != null) { - JsonObject policyJson = jsonObject.getAsJsonObject("policies").getAsJsonArray("items").get(0) + if(jsonObject.getAsJsonObject("policies").getAsJsonArray("items").size() == 0) { + log.error("No policy in policy drool pdp engine, nothing to update."); + } else { + JsonObject policyJson = jsonObject.getAsJsonObject("policies").getAsJsonArray("items").get(0) .getAsJsonObject().getAsJsonObject("config"); - Map<String, Object> policy = new Gson().fromJson(policyJson, mapType); - configPolicy.setConfig(policy); - log.info("Config policy {}", configPolicy); + Map<String, Object> policy = new Gson().fromJson(policyJson, mapType); + configPolicy.setConfig(policy); + log.info("Config policy {}", configPolicy); + } } }, throwable -> log.warn("Ooops", throwable)); } |