diff options
author | ToineSiebelink <toine.siebelink@est.tech> | 2023-07-12 15:30:48 +0100 |
---|---|---|
committer | ToineSiebelink <toine.siebelink@est.tech> | 2023-07-12 15:40:34 +0100 |
commit | a904a7d59e7f278bf93e2f58bb129e2ec7a03d20 (patch) | |
tree | 5f63e30fa0ef923cfd5da0819407f19f838aebb8 /cps-ncmp-service/src/main | |
parent | 9cfc03f3af00d0128a5b22e32cc5ba439de627b6 (diff) |
Improved code coverage (branches) for sync watchdog
- had to refactor prod. code slightly to make it testable
- added a batch size check although the task is a simple iteration there is overhead in creating a paralel task
Issue-ID: CPS-475
Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
Change-Id: I0db7ba3a15f4edc469a5af1ddc6fd76922b16809
Diffstat (limited to 'cps-ncmp-service/src/main')
-rw-r--r-- | cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/inventory/sync/ModuleSyncWatchdog.java | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/inventory/sync/ModuleSyncWatchdog.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/inventory/sync/ModuleSyncWatchdog.java index e2330a7135..6ff426d66f 100644 --- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/inventory/sync/ModuleSyncWatchdog.java +++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/inventory/sync/ModuleSyncWatchdog.java @@ -65,16 +65,17 @@ public class ModuleSyncWatchdog { public void moduleSyncAdvisedCmHandles() { log.info("Processing module sync watchdog waking up."); populateWorkQueueIfNeeded(); - final int asyncTaskParallelismLevel = asyncTaskExecutor.getAsyncTaskParallelismLevel(); while (!moduleSyncWorkQueue.isEmpty()) { - if (batchCounter.get() <= asyncTaskParallelismLevel) { + if (batchCounter.get() <= asyncTaskExecutor.getAsyncTaskParallelismLevel()) { final Collection<DataNode> nextBatch = prepareNextBatch(); log.info("Processing module sync batch of {}. {} batch(es) active.", - nextBatch.size(), batchCounter.get()); - asyncTaskExecutor.executeTask(() -> - moduleSyncTasks.performModuleSync(nextBatch, batchCounter), + nextBatch.size(), batchCounter.get()); + if (!nextBatch.isEmpty()) { + asyncTaskExecutor.executeTask(() -> + moduleSyncTasks.performModuleSync(nextBatch, batchCounter), ASYNC_TASK_TIMEOUT_IN_MILLISECONDS); - batchCounter.getAndIncrement(); + batchCounter.getAndIncrement(); + } } else { preventBusyWait(); } |