aboutsummaryrefslogtreecommitdiffstats
path: root/cps-ncmp-service/src/test/groovy/org/onap
AgeCommit message (Collapse)AuthorFilesLines
2024-11-27Merge "Catch data validation exception in dmi data operation"Daniel Hanrahan1-5/+10
2024-11-25Catch data validation exception in dmi data operationseanbeirne1-5/+10
Issue-ID: CPS-2510 Change-Id: I4093459c824c202dc8dec4b869e338d4b80fbac8 Signed-off-by: seanbeirne <sean.beirne@est.tech>
2024-11-25Registration Optimization remaining Code CommentsToineSiebelink2-4/+3
Issue-ID: CPS-2478 Change-Id: I0aa3804225f053ff99176056fe71322a23cff31c Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
2024-11-21Prioritize cm handle ids over alternate ids in data operationsToineSiebelink2-1/+25
Issue-ID: CPS-2510 Change-Id: I7068d0de45cc2c2e5d8815f0e78c260369f3551e Signed-off-by: seanbeirne <sean.beirne@est.tech> Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
2024-11-20Update error response for ncmp endpointsseanbeirne4-12/+13
Issue-ID: CPS-2386 Change-Id: I0d1f09cff202e055be255b365fc2271a5ee43b37 Signed-off-by: seanbeirne <sean.beirne@est.tech>
2024-11-20Revert "Update error response for ncmp endpoints"ToineSiebelink3-11/+10
This reverts commit 7e6fee9321e4f13cc4a0d81f83fc3693309cb5d7. Reason for revert: This patch is causing blocking issues at ESH see CPS-2509 Issue-ID: CPS-2509 Change-Id: Ie1bd26ccca4abcac09faf35e2b97491dab32b14d Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
2024-11-19Merge "Test to highlight ModuleSetTag Inefficiencies"Sourabh Sourabh4-16/+105
2024-11-18Update error response for ncmp endpointsseanbeirne3-10/+11
Issue-ID: CPS-2386 Change-Id: Ib4f37858f5f107e350a13e4bf7ed93493864ce60 Signed-off-by: seanbeirne <sean.beirne@est.tech>
2024-11-18Test to highlight ModuleSetTag InefficienciesToineSiebelink4-16/+105
- Add (micrometer) instrumentation to expose inefficiencies - Add test config for micrometer - Add setup methods in base to create many cm handles - Set module sync parallelism to 2 for testing - Add clean up methods for hazelcast related tests - added test to show inefficiencies - POC 1 use hazelcast set to prevent multiple threads working on same ModuleSetTag - POC 2 'cache' module set tags per thread to prevent DB looks ups - Main inefficiency left: create schemaset for EACH cm Handled even if same tag. No easy PoC... Change-Id: Idf46b44c475a24727dd7084bb613459f4c29be55 Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
2024-11-15Merge "Support alternate Id interface for ncmp inventory /ch/cmhandles endpoint"Priyank Maheshwari4-24/+40
2024-11-13Merge "Hashmark support in 3gpp objects"Toine Siebelink1-5/+9
2024-11-13Support alternate Id interface for ncmp inventory /ch/cmhandles endpointseanbeirne4-24/+40
Issue-ID: CPS-2481 Change-Id: I8a200495be1afb9a4f256127f886bed78c77f653 Signed-off-by: seanbeirne <sean.beirne@est.tech>
2024-11-12Hashmark support in 3gpp objectsegernug1-5/+9
NCMP should cut off the part after the # of an alternateid and use only the first part in CPS match check, but send the complete request to the DMI plugin. Issue-ID: CPS-2485 Change-Id: Icc1442f2be9545036619043692c3559ffadecb0d Signed-off-by: egernug <gerard.nugent@est.tech>
2024-11-11Merge "Support Alternate-Id for CPS-E05 data batch interface"Priyank Maheshwari5-29/+44
2024-11-07Merge "Cm Avc Event to have same key"Toine Siebelink1-4/+7
2024-11-06Merge "Change the dmi address source from dmi-service-name to ↵Sourabh Sourabh1-0/+16
dmi-data-service-name for writeDataJob"
2024-11-05Change the dmi address source from dmi-service-name to dmi-data-service-name ↵egernug1-0/+16
for writeDataJob -Change implementation to convert datanode to yang model -Change to resolve service name consistent with other implementations Issue-ID: CPS-2455 Change-Id: I9cbe494b8c37eb963c42abee1ac5f04a3f695d07 Signed-off-by: egernug <gerard.nugent@est.tech>
2024-11-05Support Alternate-Id for CPS-E05 data batch interfaceseanbeirne5-29/+44
Issue-ID: CPS-2274 Change-Id: I75163bc7943fca5cbbe8c24601a2dfc184a9e6cc Signed-off-by: seanbeirne <sean.beirne@est.tech>
2024-11-04Cm Avc Event to have same keympriyank1-4/+7
- incoming Cm Avc Event from DMI Plugin is consumed and forwarded to target topic - the key from source topic to be used in the target topic while forwarding - with same key the ordering of the message will be preserved - NOTE: the RTD related changes will be a separate patchset Issue-ID: CPS-2436 Change-Id: Ie692663706b378022ec0d621d92ca5054bad8d1b Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
2024-11-01[Module Sync] Log state changes after persistencedanielhanrahan2-87/+138
Currently, module sync will output messages such as: "cm-handle-1 is now in READY state" before the state change is persisted to the DB. If an exception occurs, the new state may not be persisted, which makes debugging hard due to misleading log entries. This commit moves the logging to the LCM state handler immediately after the change is persisted. - Move logging of state changes to LcmEventsCmHandleStateHandler. - Remove unused code in LcmEventsCmHandleStateHandler. - Add tests of state change logging. - Update the main test showing the bug to instead show expected behaviour, but disable test for now using @Ignore. Issue-ID: CPS-2474 Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech> Change-Id: I58646af6df95e07e69ca525744713a7c01c25e41
2024-10-29Merge "Fix failing CSIT and add unit test proving the bug"Toine Siebelink1-0/+21
2024-10-29Merge "Support Alternate-Id for CPS-E05 id-searches and searchCmHandleIds"Daniel Hanrahan5-49/+88
2024-10-25Support Alternate-Id for CPS-E05 id-searches and searchCmHandleIdsseanbeirne5-49/+88
Issue-ID: CPS-2402 Issue-ID: CPS-2383 Change-Id: I5dd3132b70b401bf2f50f77c2c131d5d34aa0c0a Signed-off-by: seanbeirne <sean.beirne@est.tech>
2024-10-25Fix failing CSIT and add unit test proving the bugdanielhanrahan1-0/+21
It was determined that one CSIT is intermittently failing due to a CM-handle being deleted while module sync is in progress, which causes the whole batch operation to fail. Even CM-handles that did sync will not go into READY state, despite the logs saying otherwise. This commit reproduces the issue in a unit test, and prevents the issue in the CSIT by changing test order. Also, errors during module sync tasks are reported at ERROR level. (The actual bug fix will be addressed in another patch.) Issue-ID: CPS-2474 Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech> Change-Id: I7e0d617cbd48d8fd1fad036079fbd876ee21d8a8
2024-10-24Add multi-threaded Integration Test for Module SyncToineSiebelink3-31/+66
- Add tests for multi threaded scenarios around module sync - Disabled ModuleSyncWatchdog timer using long delay and interval - Call Module Sync method as needed for more control (sometimes it needs to be triggered twice like retry use cases as designed) - Improve NCMP performance test setup (consistent naming etc.) - Rename some production code method names to better reflect functionality - Disabled intermittent failing test for create cm handle as it is not asserting the correct message - Improved Code Coverage ModuleSyncWatchdog Issue-ID: CPS-2462 Change-Id: Ia907af77d2037309f1bbb73ea671679b788bab9e Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
2024-10-17Refactor and Optimize ModuleSyncWatchdog for Improved Lock Handling and ↵sourabh_sourabh2-4/+8
Queue Management - Enhanced logging for populateWorkQueueIfNeeded and resetPreviouslyLockedCmHandles methods, improving clarity and error handling. - Improved readability and maintainability of the locking mechanism with Hazelcast's FencedLock. - Optimized error handling in catch blocks, logging detailed exception messages and stack traces for better troubleshooting. - Refined lock acquisition and release flow, with clear log messages for both successful and failed lock operations, ensuring safe handling of Hazelcast distributed locks. Issue-ID: CPS-2403 Change-Id: Ie089f36a817d4965782235b51ee987ef054516b1 Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
2024-10-16Update documentation related to hazelcastmpriyank1-2/+2
- removed old entries of data structures which are removed now. - updated the documentation to correctly reflect our infrastructure startegy related to hazelcast. - fixed few NB comments on the merged patch. Issue-ID: CPS-2408 Change-Id: Id7ce4ac695ad94742490ac5d2be89cd23ffda3e5 Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
2024-10-10use one hazelcast instance per jvmmpriyank4-49/+40
- updated all the cache(distributed datastructures) to use the same instance config now. - there will be just one instance per JVM now - Better cleanup of hz instance in the testware - Refactored the testware to verify the configs - Expected Impact on lowering the memory usage, less number of TCP communications between members - NOTE: we need to do a full regression as the changes impacts all the use cases which involves cache Issue-ID: CPS-2408 Change-Id: I7564992a9990f44ef3defb4f50cb7d094cad7b92 Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
2024-10-03Policy Executor: handle errors, part 2ToineSiebelink1-12/+53
(fighting between IntelliJ and Checkstyle best practices) - non-2xx responses are processed using web client exceptions - handle unknown host exception - upgraded spotbugs (checkstyle and related mvn plugin) - fixed some small spotbugs due to upgrade - added commented instructions in docker compose to enable debugging - added some environment variables for policy executor configuration - extract out Sleeper in stub service to achieve 100% coverage - added cause to Policy Executor exceptions where applicable - ignored (new) spotbug rule about catch NPE because of issue in 3pp - ignored (new) spotbug rule about \n in string due to multiline string block Issue-ID: CPS-2412 Change-Id: I6835a73320c436cbeea12cc7a06f15899eec7bf1 Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
2024-09-25BugFix: 500 Server error when upgrade and service restart with data in DBhalil.cakal1-0/+5
- return NONE for get effective trust level api if the trustlevel caches empty (restart case) Issue-ID: CPS-2409 Change-Id: I72a755ca6ba5d4a78f5458a235c0d1f43aaa8d53 Signed-off-by: halil.cakal <halil.cakal@est.tech>
2024-09-25Policy Executor: handle errorsToineSiebelink3-16/+62
- configurable default answer - apply default answer upon non 2xx response - delayed default webclient read timeout - add custom timeout method with original read timeout in seconds - apply default answer upon timeout - add integration test with short timeout error scenario Issue-ID: CPS-2412 Change-Id: I62527a27e426c2f01fda2182ebd2513242c29ac1 Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
2024-09-24Remove Hazelcast cache for prefix resolver (CPS-2417 #2)danielhanrahan1-0/+76
This patch removes the AnchorDataCache from CPS, which is used for prefix resolution in get/query operations. As such, Hazelcast is no longer a dependency of CPS, only NCMP. - Changed PrefixResolver to be more efficient. - Removed AnchorDataCache and associated classes. - Moved HazelcastCacheConfig to NCMP. - Removed Hazelcast dependency from cps-service/pom.xml This shows good performance improvements in some APIs such as v2 GET which is nearly 2x faster (also 5x faster including base patch). Issue-ID: CPS-2417 Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech> Change-Id: I24768469f24e90b70f7a6187faa4f5b3d75777d2
2024-09-24Revert "Correctly report trust level if DMI is down"danielhanrahan3-8/+11
This reverts commit https://gerrit.onap.org/r/c/cps/+/138853 Reason for revert: Commit caused performance issues in CM handle search Manual rebase was required to integrate changes for alternate-id support made since original commit was merged. Issue-ID: CPS-2375 Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech> Change-Id: I5ef743ea053589fa17c10587317a3534c2714c4b
2024-09-19Retry mechanism (with back off algorithm) is removed with more frequent ↵sourabh_sourabh2-106/+62
watchdog poll - Increased watchdog frequency for locked cm handle. - Removed retry backoff algorithm for locked cm handle. Issue-ID: CPS-2395 Change-Id: I54d0ec8f9de53a7d181639c14aaaa93736f03e19 Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
2024-09-17Refactored cps-ri package structureleventecsanyi2-2/+2
- fixed import order and moved package structure Issue-ID: CPS-2293 Change-Id: Ie2f9f057f261577054530feee7480850ba4b41e1 Signed-off-by: leventecsanyi <levente.csanyi@est.tech>
2024-09-05NCMP should not use CPS SPI classesdanielhanrahan1-19/+21
CpsDataPersistenceService is an internal interface of CPS, part of the SPI, intended only to be used by CPS. Instead, NCMP should use the public API of CPS, i.e. CpsDataService and CpsQueryService. This is an architectural issue, but it will affect upcoming changes, where changes to the SPI implementation should not affect public API. Issue-ID: CPS-2398 Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech> Change-Id: I89339e1a3566a25e33168c24c8b8401ca52224e9
2024-09-04[Cps Path Parser] Move NCMP-specific logic to NCMPdanielhanrahan1-4/+18
Some special case code to disable ancestor-axis was added for CM-handle search (see CPS-2308). It is now relocated to NCMP. This makes other needed improvements of Cps Path Parser easier. - Move special case code into NCMP - Add integration test to ensure CM-handle search works Issue-ID: CPS-2365 Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech> Change-Id: I168d6156be559166f115aa42e21cd987d98b7d41
2024-09-04Merge "Support alternate id for CPS-E05 GetCmHandleDetailsById"Daniel Hanrahan1-5/+10
2024-09-04Merge "Support Alternate-id for CPS-E05 module search"Daniel Hanrahan1-4/+9
2024-09-04Merge "Remove event notifications when removing trust level entries"Priyank Maheshwari1-16/+3
2024-09-04Support Alternate-id for CPS-E05 module searchseanbeirne1-4/+9
Issue-ID: CPS-2370 Change-Id: I0ca3a1df232ad9fd9f76695cd6ea21d36919130d Signed-off-by: seanbeirne <sean.beirne@est.tech>
2024-09-04Merge "Support Alternate-id for CPS-E05 module definition"Priyank Maheshwari1-7/+19
2024-09-03Support alternate id for CPS-E05 GetCmHandleDetailsByIdmpriyank1-5/+10
- added support for alternate id when retreiving cmhandle details by id - Note : The performance for alternate id fetching will be taken care as part of a separate story. Issue-ID: CPS-2385 Change-Id: I019b85d128e4b0a1f1d61623c92e1a2381c406c0 Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
2024-09-02Remove event notifications when removing trust level entrieshalil.cakal1-16/+3
Issue-ID: CPS-2315 Change-Id: I4f0cb7c2066e0ab9c62ac9cdb0fc39ce7de7791b Signed-off-by: halil.cakal <halil.cakal@est.tech>
2024-09-02Support Alternate-id for CPS-E05 module definitionseanbeirne1-7/+19
Issue-ID: CPS-2379 Change-Id: Idd180c5792575522ceaaa094b94c8f5b36790186 Signed-off-by: seanbeirne <sean.beirne@est.tech>
2024-09-02Policy Executor: pass Change request as Objectsourabh_sourabh2-13/+23
- Added unit test for new exception handling Issue-ID: CPS-2335 Change-Id: I5517c91edf505932d0a94165c19420922b3f5f51 Signed-off-by: ToineSiebelink <toine.siebelink@est.tech> Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
2024-08-30Support alternate id interface for CPS-E-05 - publicPropertiesmpriyank1-5/+13
- added alternate id support for the existing endpoint - Incorporated previous comments on the indendation - Added new component cmHandleReferenceInPath in openapi docs to depict the correct example Issue-ID: CPS-2378 Change-Id: I63e752fbb6cb0bde49d1ced53f063743d904d74e Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
2024-08-29Correctly report trust level if DMI is downdanielhanrahan3-11/+8
Current trust level should factor in both CM-handle and DMI trust levels (effective trust level). Issue-ID: CPS-2375 Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech> Change-Id: Ib531633a0e79af2bf9cf73d2b0b02d7a58777458
2024-08-29Merge "Invoke Policy Executor and handle not-allowed response"Sourabh Sourabh4-29/+144
2024-08-29Invoke Policy Executor and handle not-allowed responseToineSiebelink4-29/+144
- Execute Policy Executor REST request - Act (and log) on response from Policy Executor - Add dispatcher(mock) in integration test FWK - Add integration test for allow/non allowed and no authorization use cases - disabled PolicyExecution feature by default (only enabled for testware) Issue-ID: CPS-2247 Change-Id: I111ba9ba89cc91649b63b20f88414aa33721dbeb Signed-off-by: ToineSiebelink <toine.siebelink@est.tech> Signed-off-by: mpriyank <priyank.maheshwari@est.tech>