aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xINFO.yaml5
-rw-r--r--cps-application/src/main/resources/application.yml13
-rw-r--r--cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/impl/config/NcmpConfiguration.java7
-rw-r--r--cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/api/inventory/sync/ModuleSyncWatchdogSpec.groovy3
-rw-r--r--cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/api/inventory/sync/SyncUtilsSpec.groovy12
-rw-r--r--csit/plans/cps/test.properties5
-rw-r--r--docker-compose/docker-compose.yml4
7 files changed, 40 insertions, 9 deletions
diff --git a/INFO.yaml b/INFO.yaml
index 88e186e75..a411e3775 100755
--- a/INFO.yaml
+++ b/INFO.yaml
@@ -62,6 +62,11 @@ committers:
company: 'Ericsson Software Technology'
id: 'JosephKeenan'
timezone: 'Europe/Dublin'
+ - name: 'Sourabh Sharma'
+ email: 'sourabh.sourabh@est.tech'
+ company: 'Ericsson Software Technology'
+ id: 'sourabh_sourabh'
+ timezone: 'Europe/Dublin'
repositories:
- cps
tsc:
diff --git a/cps-application/src/main/resources/application.yml b/cps-application/src/main/resources/application.yml
index 6bbe80bfb..17551344f 100644
--- a/cps-application/src/main/resources/application.yml
+++ b/cps-application/src/main/resources/application.yml
@@ -46,6 +46,13 @@ spring:
password: ${DB_PASSWORD}
driverClassName: org.postgresql.Driver
initialization-mode: always
+ hikari:
+ minimumIdle: 5
+ maximumPoolSize: 80
+ idleTimeout: 120000
+ connectionTimeout: 300000
+ leakDetectionThreshold: 300000
+ pool-name: CpsDatabasePool
cache:
type: caffeine
@@ -100,8 +107,8 @@ notification:
enabled-dataspaces: ${NOTIFICATION_DATASPACE_FILTER_PATTERNS:""}
async:
executor:
- core-pool-size: 10
- max-pool-size: 100
+ core-pool-size: 2
+ max-pool-size: 10
queue-capacity: 500
wait-for-tasks-to-complete-on-shutdown: true
thread-name-prefix: Async-
@@ -164,4 +171,4 @@ timers:
locked-modules-sync:
sleep-time-ms: 300000
cm-handle-data-sync:
- sleep-time-ms: 30000 \ No newline at end of file
+ sleep-time-ms: 30000
diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/impl/config/NcmpConfiguration.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/impl/config/NcmpConfiguration.java
index a41815554..f250ddb73 100644
--- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/impl/config/NcmpConfiguration.java
+++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/impl/config/NcmpConfiguration.java
@@ -20,6 +20,7 @@
package org.onap.cps.ncmp.api.impl.config;
+import java.time.Duration;
import java.util.Arrays;
import lombok.AccessLevel;
import lombok.Getter;
@@ -39,6 +40,9 @@ import org.springframework.web.client.RestTemplate;
@RequiredArgsConstructor(access = AccessLevel.PROTECTED)
public class NcmpConfiguration {
+ private static final Duration CONNECTION_TIMEOUT_MILLISECONDS = Duration.ofMillis(180000);
+ private static final Duration READ_TIMEOUT_MILLISECONDS = Duration.ofMillis(180000);
+
@Getter
@Component
public static class DmiProperties {
@@ -59,7 +63,8 @@ public class NcmpConfiguration {
@Bean
@Scope(ConfigurableBeanFactory.SCOPE_SINGLETON)
public static RestTemplate restTemplate(final RestTemplateBuilder restTemplateBuilder) {
- final RestTemplate restTemplate = restTemplateBuilder.build();
+ final RestTemplate restTemplate = restTemplateBuilder.setConnectTimeout(CONNECTION_TIMEOUT_MILLISECONDS)
+ .setReadTimeout(READ_TIMEOUT_MILLISECONDS).build();
setRestTemplateMessageConverters(restTemplate);
return restTemplate;
}
diff --git a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/api/inventory/sync/ModuleSyncWatchdogSpec.groovy b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/api/inventory/sync/ModuleSyncWatchdogSpec.groovy
index 863977a64..81268cbc0 100644
--- a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/api/inventory/sync/ModuleSyncWatchdogSpec.groovy
+++ b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/api/inventory/sync/ModuleSyncWatchdogSpec.groovy
@@ -21,12 +21,11 @@
package org.onap.cps.ncmp.api.inventory.sync
-import org.mockito.Mock
+
import org.onap.cps.ncmp.api.impl.event.lcm.LcmEventsCmHandleStateHandler
import org.onap.cps.ncmp.api.impl.yangmodels.YangModelCmHandle
import org.onap.cps.ncmp.api.inventory.CmHandleState
import org.onap.cps.ncmp.api.inventory.CompositeState
-import org.onap.cps.ncmp.api.inventory.DataStoreSyncState
import org.onap.cps.ncmp.api.inventory.InventoryPersistence
import org.onap.cps.ncmp.api.inventory.LockReasonCategory
import org.onap.cps.ncmp.api.inventory.CompositeStateBuilder
diff --git a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/api/inventory/sync/SyncUtilsSpec.groovy b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/api/inventory/sync/SyncUtilsSpec.groovy
index 82e9d33ae..fb4ca3933 100644
--- a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/api/inventory/sync/SyncUtilsSpec.groovy
+++ b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/api/inventory/sync/SyncUtilsSpec.groovy
@@ -62,13 +62,25 @@ class SyncUtilsSpec extends Specification{
@Shared
def dataNode = new DataNode(leaves: ['id': 'cm-handle-123'])
+ @Shared
+ def dataNodeAdditionalProperties = new DataNode(leaves: ['name': 'dmiProp1', 'value': 'dmiValue1'])
+
+
def 'Get an advised Cm-Handle where ADVISED cm handle #scenario'() {
given: 'the inventory persistence service returns a collection of data nodes'
mockCmHandleQueries.getCmHandlesByState(CmHandleState.ADVISED) >> dataNodeCollection
+ and: 'we have some additional (dmi, private) properties'
+ dataNodeAdditionalProperties.xpath = dataNode.xpath + '/additional-properties[@name="dmiProp1"]'
+ dataNode.childDataNodes = [dataNodeAdditionalProperties]
when: 'get advised cm handles are fetched'
def yangModelCmHandles = objectUnderTest.getAdvisedCmHandles()
then: 'the returned data node collection is the correct size'
yangModelCmHandles.size() == expectedDataNodeSize
+ and: 'if there is a data node the additional (dmi, private) properties are included'
+ if (expectedDataNodeSize > 0) {
+ assert yangModelCmHandles[0].dmiProperties[0].name == 'dmiProp1'
+ assert yangModelCmHandles[0].dmiProperties[0].value == 'dmiValue1'
+ }
and: 'yang model collection contains the correct data'
yangModelCmHandles.stream().map(yangModel -> yangModel.id).collect(Collectors.toSet()) ==
dataNodeCollection.stream().map(dataNode -> dataNode.leaves.get("id")).collect(Collectors.toSet())
diff --git a/csit/plans/cps/test.properties b/csit/plans/cps/test.properties
index 47bb43b0a..449aa9381 100644
--- a/csit/plans/cps/test.properties
+++ b/csit/plans/cps/test.properties
@@ -23,4 +23,7 @@ DMI_SERVICE_URL=http://$LOCAL_IP:$DMI_PORT
DOCKER_REPO=nexus3.onap.org:10003
CPS_VERSION=latest
-DMI_VERSION=1.2.0-SNAPSHOT-latest \ No newline at end of file
+DMI_VERSION=1.2.0-SNAPSHOT-latest
+
+ADVISED_MODULES_SYNC_SLEEP_TIME_MS=2000
+CMHANDLE_DATA_SYNC_SLEEP_TIME_MS=2000 \ No newline at end of file
diff --git a/docker-compose/docker-compose.yml b/docker-compose/docker-compose.yml
index 8d3a0a357..ca7795f2f 100644
--- a/docker-compose/docker-compose.yml
+++ b/docker-compose/docker-compose.yml
@@ -49,8 +49,8 @@ services:
notification.enabled: 'true'
notification.async.executor.time-out-value-in-ms: 2000
NOTIFICATION_DATASPACE_FILTER_PATTERNS: '.*'
- TIMERS_ADVISED-MODULES-SYNC_SLEEP-TIME-MS: 2000
- TIMERS_CM-HANDLE-DATA-SYNC_SLEEP-TIME-MS: 2000
+ TIMERS_ADVISED-MODULES-SYNC_SLEEP-TIME-MS: ${ADVISED_MODULES_SYNC_SLEEP_TIME_MS:-30000}
+ TIMERS_CM-HANDLE-DATA-SYNC_SLEEP-TIME-MS: ${CMHANDLE_DATA_SYNC_SLEEP_TIME_MS:-30000}
restart: unless-stopped
depends_on:
- dbpostgresql