summaryrefslogtreecommitdiffstats
path: root/cps-ncmp-service
AgeCommit message (Collapse)AuthorFilesLines
2022-12-01Filter on private properties of CM Handlesleventecsanyi23-53/+778
- Moved cm handle query validation to cps-ncmp-service (where it belongs!) - Added new enum type for private/public field types - Created new methods for private and public queries - Added new REST endpoint - Created service methods for filtering on different types of properties - Refactored getPublicPropertyPairs and queryCmHandleAnyProperties - Added unit test for the controller layer - Fixed refactoring suggestions - Imporved code coverage with unit tests - Refactoring - Added new functionality to NcmpRestInputMapper - Updated version number to 3.2.1-SNAPSHOT and updated release-notes.rst Issue-ID: CPS-1236 Change-Id: I0ddf6866473f7c3c6b8507d222d441bf97ca6bdc Signed-off-by: leventecsanyi <levente.csanyi@est.tech>
2022-11-16Merge "Query data NCMP-Operational with CPSpath"Sourabh Sourabh3-0/+133
2022-11-15Query data NCMP-Operational with CPSpathlukegleeson3-0/+133
New GET Endpoint: /v1/ch/{cm-handle}/data/ds/{ncmp-datastore-name}/query?cps-path={CPSPath} Implemented error for {ncmp-datastore-name} other than operational - (Toine) Refactored and renamed (abstract) handler for better re-use Mainly by introducing a separate handler for OperationalQuery Reviewers Toine, Sourabh, Priyank Issue-ID: CPS-1002 Signed-off-by: lukegleeson <luke.gleeson@est.tech> Change-Id: Iaca018869d95d4ce800072431baa190050a6dad0
2022-11-11Temporary registry updatempriyank1-1/+1
- temporarily updating the registry to test the failing tests. Issue-ID: CPS-1360 Change-Id: I7e303bb72b3f87565e27bcca7b1d9f5afc2b1417 Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
2022-10-27Read Performance Improvement - Using Native QueryToineSiebelink1-10/+23
- Native query for FragmentExtracts - Convert FragmentExtracts to tree of FragmentEntity - Native Query now used for all Gets with descendants (orignal hibernate option only used when descendanst ommited) - Added error handling for not-found on native query - Ommit descendants by default on many udpate use-cases (this might have a signifcant perf. improvemnt impact too) - Improved legacy tests for delete use-cases - Corrected performace test expectation - Fix TTL test realizing TTL resolution is whole seconds! Issue-ID: CPS-1301 Signed-off-by: ToineSiebelink <toine.siebelink@est.tech> Change-Id: I658ac1b7b7036f01050f30bdf9e5bd175725ef1d
2022-10-20CPS Validator Changeslukegleeson11-101/+48
Changed CPS Validator from static to non-static Moved CPSValidator implementation to rest interface layer to prevent duplicated usage Created CPSValidator interface in persistence layer Removed unnecessary tests Refactored misplaced tests Copyright fixes Copyright Check Script output formatting fix Issue-ID: CPS-1228 Signed-off-by: lukegleeson <luke.gleeson@est.tech> Change-Id: I4c99a51870e7d3b8e416bc1f909aeed5dc3baa42
2022-10-17Bump the minor CPS versionmpriyank1-1/+1
- Bumped the CPS version from 3.1.5-SNAPSHOT to 3.2.0-SNAPSHOT - Step 11 of the release process. Issue-ID: CPS-1318 Change-Id: I0dce0070afcc019d2562c2f3ab9fe02207dcd86b Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
2022-10-13TTL for module and data syncmpriyank5-17/+53
- Added configurable ttl parameters for module sync and data sync in the application yaml - Changing strategy to set the TTLs now. Its been set for each key at the inserting time only for both the maps. - Added test scenarios to verify the configs and the TTLs. Issue-ID: CPS-1288 Change-Id: I0a95cbd1a3e540ff15e23027e79e07e9a26f4c19 Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
2022-10-13Merge "Fix Id-searches endpoint performance degradation"Toine Siebelink4-31/+49
2022-10-12Fix Id-searches endpoint performance degradationkissand4-31/+49
- create more flexible control over fetch descendants - add a new FETCH_DIRECT_CHILDREN_ONLY option to fetch descendants options - enabel create custom fetch descendants option Reviewer: Toine, Joe, Priyank Issue-ID: CPS-1216 Change-Id: I900b32e813367aa9566c1dec986b20f009d27203 Signed-off-by: kissand <andras.zoltan.kiss@est.tech>
2022-10-05Bump CPS version to 3.1.5-SNAPSHOTmpriyank1-1/+1
- Bumped the version to 3.1.5-snapshot and updated the version properties file Issue-ID: CPS-1325 Change-Id: I61848166b94a5ce14651f2d0fe42e4cc39f5c5e2 Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
2022-10-03Swallow kafkaExceptionmpriyank2-1/+20
- swallow the kafka exception if we are unable to send the kafka message due to any reason. - updated release notes as well Issue-ID: CPS-1294 Change-Id: Iaa8ae5b0bc289d819a46b4a95a1382f4ecee66aa Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
2022-09-30Bump CPS to 3.1.4-SNAPSHOTmpriyank1-1/+1
- bumping the cps version from 3.1.3-SNAPSHOT to 3.1.4-SNAPSHOT - Also updated the release notes to accomodate 3.1.4 version changes Issue-ID: CPS-1313 Change-Id: I487ab4301123cce6afb5a4086b8ebca24acf5e14 Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
2022-09-29Bump CPS to 3.1.3-SNAPSHOTmpriyank1-1/+1
- update cps to 3.1.3-SNAPSHOT Issue-ID: CPS-1309 Change-Id: I43b1442533d10c32a74808830239e83f4abed9c0 Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
2022-09-28Prep for 3.1.2 of CPSmpriyank1-1/+1
- updated release notes - bumbed cps version to 3.1.2-SNAPSHOT from 3.1.1-SNAPSHOT Issue-ID: CPS-1304 Change-Id: Ie65f76032b087dffc716e00fa3868f89f165a6b1 Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
2022-09-23Prepare for next CPS Core releasempriyank1-1/+1
- Bumping the CPS Core version from 3.1.0 to 3.1.1 Issue-ID: CPS-1295 Change-Id: I6bdff6dd3b266a24c3e89ba811be6bc64beb6e54 Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
2022-09-21Robustness cleaning of in progress cachesourabh_sourabh9-49/+103
- Removed cm handle entry from in progress map while moving from locked to advised and de-registration - Fixed groovy tests Issue-ID: CPS-1239 Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech> Change-Id: Ic527c7b5d209e0c7788888942e95ce0c2c59f7c6
2022-09-20Add NCMP tag in propertiesmpriyank5-16/+17
- Added back NCMP tag back as part of the comment in patch https://gerrit.onap.org/r/c/cps/+/129274 - Added parallelism level under ncmp as well. - Correcting env variable in the docker compose file for local run as well as the CSITs. Issue-ID: CPS-1279 Change-Id: I1f2993ac66f47ee2e5e7db0c4a6aac113a714d2a Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
2022-09-13CmHandle registration/module sync watchdog performance improvmentsourabh_sourabh4-18/+27
- Tuned CPS DB parameters - Removed deprecated CPS DB parameter - Modified module sync watch logic - Added aditional logs - Removed logic to get FragmentEntities as stream - Removed detaching of fragment entity as it was causing NCMP to break with an exception "SQLSTATE(08006)" Issue-ID: CPS-1126 Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech> Change-Id: I0bde11895f754602dece132efde701d82b377f12
2022-09-13Handle partial failure (improvements)ToineSiebelink4-18/+58
- catching of failures on retry of individual nodes - extract cm handle id from xpaths (can only report xpaths in cps core) - add test for same Issue-ID: CPS-1232 Issue-ID: CPS-1126 Signed-off-by: ToineSiebelink <toine.siebelink@est.tech> Change-Id: Ice2032c8b15fea97ae0aaa4d1ed642b3499228fa
2022-09-12Handle partial failurempriyank3-20/+45
- Removing the transaction boundaries as it was getting rollbacked on partial failures - Handled adding the elements in batch and if it fails try them individually - Refactored code a bit and when there is partial failure we try one more time in sequence and even if there are failures we collect the failures Issue-ID: CPS-1232 Issue-ID: CPS-1126 Change-Id: I7824c9f37f80cbaeedd5dc06d598ca0e3a69c59b Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
2022-09-06Merge "Code to Interface : InventoryPersistence"Toine Siebelink3-129/+210
2022-09-06Minor code change from POC ||sourabh_sourabh1-0/+3
-Explicitly use YangModelCmHandle#id to computing equals and hashcode Issue-ID: CPS-1126 Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech> Change-Id: Ib5332843c71522a85640f225298b680d4cd29557
2022-09-05Code to Interface : InventoryPersistencempriyank3-129/+210
- Extracted interface for InventoryPersistence using automatic extraction of IDE. - We call the InventoryPersistence to InventoryPersistenceImpl - Used the correct type in the test Issue-ID: CPS-1241 Change-Id: Ieceaec69c1063d7762abc7d8e389d36011a93860 Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
2022-09-05Performance Improvement: Fix Insert Yang Resource IDs (Schemset)ToineSiebelink2-20/+13
- Add robustness to handle insertion/get of empty collection - Fix business logic to pass down ALL module references during module Sync - Update Java doc etc to clarify ALL module references are needed (not just new) Issue-ID: CPS-1246 Issue-ID: CPS-1126 Signed-off-by: ToineSiebelink <toine.siebelink@est.tech> Change-Id: Ic8ff4bdfef646e98ef61a6732c6d5ecb4b762e29
2022-09-02Logging: get resource idsmpriyank1-3/+1
- Added logging while fetching resource ids using Module references. - Minor refactoring related to stream and forEach - Fixed minor sonar violations Issue-ID: CPS-1246 Change-Id: I631d7acd3f29e6bdc2995726e17f40bd7de118b1 Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
2022-09-02Performance Improvement: Use save batches of cmhandlessourabh_sourabh6-57/+81
-Used cm handle batch to persist from state handler. Issue-ID: CPS-1230 Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech> Change-Id: I68b7fde7dc85818b818f1af588344c26b549d87b
2022-09-02Merge "Implement merging all ncmp datastore endpoints into one"Toine Siebelink3-63/+46
2022-09-02Code to Interface: CmHandleQueriesmpriyank5-132/+183
- Extracting the interface CmHandleQueries using IDE intelligence - Used intreface when mocking in the tests Issue-ID: CPS-1240 Change-Id: I5f537eaac992c68b65468e344830a04f1dda7e45 Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
2022-09-01Implement merging all ncmp datastore endpoints into onebmiklos3-63/+46
- Merging all endpoints under /v1/ch/{cm-handle}/data/ds/ncmp-datastore:* to /v1/ch/{cm-handle}/data/ds/{ncmp-datastore-name} - Implementing missing tests from parent - Introducing abstract class to keep the common code and just pass in the supplier to be executed in sync or async manner - Removed the existing get endpoints for passthrough-running, passthrough-operational and operational and merged them into a common get endpoint Issue-ID: CPS-1178 Issue-ID: CPS-1001 Change-Id: I6956c81d5acfa8fb11217bcc16cb795b62070fa3 Signed-off-by: bmiklos <miklos.baranyak@est.tech>
2022-09-01Merge "Get all cm handles by DMI plugin Identifier"Sourabh Sourabh7-9/+139
2022-09-01Merge "Performance Improvement: Enhance state handler"Sourabh Sourabh8-45/+273
2022-09-01Performance Improvement: Enhance state handlermpriyank8-45/+273
- Introduced batch handling capability to state handler - Refactored methods in CompositeStateUtils - Renamed saveCmHandleStates to saveCmHandleStateBatch - Decoupled processing of events in bulk - Test scenarios for the new functionality Issue-ID: CPS-1231 Issue-ID: CPS-1126 Change-Id: Ifacdeb7bbed14712ecf4f5e2a4d9b324bae278d8 Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
2022-09-01Get all cm handles by DMI plugin Identifieremaclee7-9/+139
- api added to get cm handles by dmi plugin identifier - response object refactored from RestOutputCmHandle to collection of Strings (cm handle ids) - added public and private methods in CmHandleQueries to get cm handle ID by dmi plugin - added unit tests including test to show that there are no duplicates on response Issue-ID: CPS-1136 Signed-off-by: emaclee <lee.anjella.macabuhay@est.tech> Change-Id: Ia3bdc16172a90ad3a3f9ae11cddcad1352188726
2022-09-01Performance Improvement: Watchdog Parallel execution with configurationsourabh_sourabh7-48/+226
- Introduced AsyncSyncExecutor to get task and execute it with configured number of parallel threads. - Number of parallel thread can be configured from application.yml. - AsyncTaskExecutorSpec is added - Fixed existing grovvy test now async task would be submitted. Issue-ID: CPS-1200 Change-Id: I58c0368b945c90e619c2acfc7458ba58de047484 Signed-off-by: ToineSiebelink <toine.siebelink@est.tech> Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
2022-08-29Performance Improvement:save cmhandles capabilitympriyank2-0/+31
- add saveCmHandleBatch in InventoryPersistence - add saveListElementsBatch in CpsDataService - have addListElementsBatch in CpsDataPersistenceService - Test scenarios for the same Issue-ID: CPS-1229 Issue-ID: CPS-1126 Change-Id: I0a1401818da5a4e523d7d0751cac6a526d1611b2 Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
2022-08-29Merge "Performance Improvement: Use hazelcast blocking queue"Sourabh Sourabh14-293/+515
2022-08-29Performance Improvement: Use hazelcast blocking queueToineSiebelink14-293/+515
- Introducing hazelcast for queue and progress map - process batch of 100 at the time - decreased module sync watchdog sleeptime to 5 seconds - separate module sync tasks in new class and some other async preparations and easier testing - tests for batching in module sync watchdog - remove qualifiers annotation (support) where no longer needed Issue-ID: CPS-1210 Issue-ID: CPS-1126 Signed-off-by: ToineSiebelink <toine.siebelink@est.tech> Change-Id: I0a7d3755bf774e27c5688741bddb01f427d4a8a7
2022-08-26Merge "Added eventSchemaVersion for async schema"Toine Siebelink2-1/+3
2022-08-25Merge "Performance Improvement: Batch Update DataNodes"Sourabh Sourabh2-3/+35
2022-08-25Performance Improvement: Batch Update DataNodeslukegleeson2-3/+35
Implemented methods to perform a batch operation on updating datanodes Refactored replace data node(s) tree methods to update data node(s) and descendants Issue-ID: CPS-1203 Signed-off-by: lukegleeson <luke.gleeson@est.tech> Change-Id: I365d657422b19c9ce384110c9a23d041eaed06f4
2022-08-23Added eventSchemaVersion for async schemampriyank2-1/+3
- Added event schema version in the request and response schema. - Enhanced the mapper to adhere to new field. Issue-ID: CPS-1145 Change-Id: I408f73adefc2104b2e421bc3a3fe8f78dcba80f0 Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
2022-08-23Performance Improvement: LCM Eventsmpriyank2-8/+21
- Changed scope of method responsible for creating and publishing the LCM events. - Use a dedicated thread pool for publishing the LCM events. Issue-ID: CPS-1223 Change-Id: Ib46e3c1ff8d80f724ad9db30fca6e8125ca0775a Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
2022-08-23Move Advised CM Handles Log to debug levellukegleeson1-1/+1
Issue-ID: CPS-1218 Signed-off-by: lukegleeson <luke.gleeson@est.tech> Change-Id: I77a799cfb86fe98e526519c7555bbbd85d289f04
2022-08-22Merge "Distributed datastore solution for Data Sync Watchdog"Toine Siebelink12-134/+158
2022-08-22Distributed datastore solution for Data Sync Watchdogkissand12-134/+158
- update lombok config to handle Qualifier annotation - update Semaphore config to use ConcurrentMap - update SyncUtils to return a list of cm handles - update DataSyncWatchdog and ModuleSyncWatchdog with Qualifier - update DataSyncWatchdog to handle a list of cm handles - Use get with xpath to check cm handle state Issue-ID: CPS-1015 Change-Id: Icb39bd29f89e0020d49a1f8960476ffe81b12362 Signed-off-by: kissand <andras.zoltan.kiss@est.tech>
2022-08-22Merge "Fix: CM Handles for only hasAllModules Query"Sourabh Sourabh2-2/+2
2022-08-22Fix: CM Handles for only hasAllModules Querylukegleeson2-2/+2
hasAllModules was returning no CMHandles when queried by itself, only when paired with another query condition e.g. hasAllProperties This fix means endpoint works as expected. Reverted null check Issue-ID: CPS-977 Signed-off-by: lukegleeson <luke.gleeson@est.tech> Change-Id: Idafad4c9877941d121f5cbb98617c56a35a1cc94
2022-08-19Merge "Ensure Additional Properties for CM Handles are included"Joseph Keenan2-2/+13
2022-08-18Performance Improvement: Tune Resttemplatempriyank1-1/+6
- Increase connection and read timeout for Resttemplate to a higer value Issue-ID: CPS-1201 Change-Id: Ia159b022698ff60dbd02a5877899f520b91bf883 Signed-off-by: mpriyank <priyank.maheshwari@est.tech>