cps.git
2 months agoPerformance fix for Module search outputting Alternate IDs 40/140640/3
danielhanrahan [Tue, 1 Apr 2025 15:04:39 +0000 (16:04 +0100)]
Performance fix for Module search outputting Alternate IDs

Use OMIT_DESCENDANTS instead of INCLUDE_ALL_DESCENDANTS.

Issue-ID: CPS-2738
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: If0ee84baa297137f7275e611905e4183a16c7ee1

2 months agoMerge "Added logging around write job operation to verify request and response detail...
Toine Siebelink [Wed, 2 Apr 2025 08:33:43 +0000 (08:33 +0000)]
Merge "Added logging around write job operation to verify request and response details, with a focus on the number of jobs involved"

2 months agoMerge "Fix for Trust Level search with alternate ID output"
Toine Siebelink [Wed, 2 Apr 2025 07:42:35 +0000 (07:42 +0000)]
Merge "Fix for Trust Level search with alternate ID output"

2 months agoFix for Trust Level search with alternate ID output 41/140641/1
danielhanrahan [Tue, 1 Apr 2025 14:18:48 +0000 (15:18 +0100)]
Fix for Trust Level search with alternate ID output

Currently the requests are timing out, over 60 seconds.
This commit restores the older implementation not using
attribute-axis, so that when the DataNodes are fetched,
we can get both the Cm Handle ID and Alternate ID.

Issue-ID: CPS-2738
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: I2072eb5cae2fd04d8217be48c261e219c948a339

2 months agoAdded logging around write job operation to verify request and response details,... 24/140624/8
sourabh_sourabh [Sat, 29 Mar 2025 15:26:06 +0000 (15:26 +0000)]
Added logging around write job operation to verify request and response details, with a focus on the number of jobs involved

Issue-ID: CPS-2735
Change-Id: I8dd6260556b4949bda5695d22f3f862c0786e385
Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
2 months agoMerge "Update release notes for Flux improvement"
Priyank Maheshwari [Tue, 1 Apr 2025 14:15:07 +0000 (14:15 +0000)]
Merge "Update release notes for Flux improvement"

2 months agoUpdate batch id searches to return alternate ids 12/140612/3
halil.cakal [Thu, 27 Mar 2025 11:13:03 +0000 (11:13 +0000)]
Update batch id searches to return alternate ids

- keep the query parameter (?outputAlternateId=true) common for id-searches and searches
  since it does not have any negative impact for the searches when provided this way the code
  is more simple and readable
- function names kept the same to comply with the response messages
- the plot names kept the same to maintain the history in local storage of kpi plot job

Issue-ID: CPS-2715

Change-Id: I8146e7ecb04ddd4b907fae94e91fd78bd535b58c
Signed-off-by: halil.cakal <halil.cakal@est.tech>
2 months agoUpdate release notes for Flux improvement 23/140623/1
danielhanrahan [Fri, 28 Mar 2025 18:52:38 +0000 (18:52 +0000)]
Update release notes for Flux improvement

Issue-ID: CPS-2712
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: I0b78b6a1c37b0b5b06b0e3894d717ab2f64eabe4

3 months agoMerge "Efficient implementation of Attribute Axis in SQL"
Lee Anjella Macabuhay [Thu, 27 Mar 2025 10:56:13 +0000 (10:56 +0000)]
Merge "Efficient implementation of Attribute Axis in SQL"

3 months agoMerge "Fix NullPointerException for cm handle state metrics"
Toine Siebelink [Thu, 27 Mar 2025 10:14:21 +0000 (10:14 +0000)]
Merge "Fix NullPointerException for cm handle state metrics"

3 months agoMerge "Refactor Consumers/Producers based on agreed format"
Priyank Maheshwari [Thu, 27 Mar 2025 10:14:12 +0000 (10:14 +0000)]
Merge "Refactor Consumers/Producers based on agreed format"

3 months agoEfficient implementation of Attribute Axis in SQL 99/140599/3
danielhanrahan [Mon, 2 Sep 2024 17:59:41 +0000 (18:59 +0100)]
Efficient implementation of Attribute Axis in SQL

Attribute Axis is the feature which allows fetching only a single
attribute, e.g. //books[@title='Matilda']/@price -> [15]
This implements the attribute axis feature directly in SQL, giving
much higher performance e.g. for CM-handle ID searches in NCMP.
The native SQL implementation directly returns data leaves from DB,
not requiring conversions to FragmentEntity, DataNode, etc.

Issue-ID: CPS-2623
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: I54f517e47ca6bcddfae356f98857b05fd2e1229e

3 months agoMerge "Use Flux stream processing for CM-handle searches"
Toine Siebelink [Thu, 27 Mar 2025 08:36:32 +0000 (08:36 +0000)]
Merge "Use Flux stream processing for CM-handle searches"

3 months agoAdd CloudEventBuilder to SpringBootTest 00/140600/1
egernug [Wed, 26 Mar 2025 16:00:47 +0000 (16:00 +0000)]
Add CloudEventBuilder to SpringBootTest

There are test failures on:
DmiInEventProducerSpec
NcmpOutEventProducerSpec
stemming from CloudEventBuilder being missing from the SpringBootTest. Adding this to clear issues.

Issue-ID: CPS-2727

Change-Id: I5e838741d7fc54bc91c5d91497085da68ab391d4
Signed-off-by: egernug <gerard.nugent@est.tech>
3 months agoFix NullPointerException for cm handle state metrics 53/140553/2
halil.cakal [Fri, 21 Mar 2025 11:09:58 +0000 (11:09 +0000)]
Fix NullPointerException for cm handle state metrics

- ensure the certain beans are created in a specific order:
1-AdminCacheConfig
2-CmHandleStateMonitor
3-CmHandleStateConfig
- extract cm handle state config from MicroMeterRegistry to allow
  control order of bean initialization to prevent NullPointerException
- introduce @DependsOn annotation

Issue-ID: CPS-2677

Change-Id: I8dfec54cc7e603bded6a24e7362437042b222fd3
Signed-off-by: halil.cakal <halil.cakal@est.tech>
3 months agoMerge "Remove private properties from DMI write operations"
Toine Siebelink [Wed, 26 Mar 2025 14:10:36 +0000 (14:10 +0000)]
Merge "Remove private properties from DMI write operations"

3 months agoMerge "Use attribute-axis in NCMP [#4]"
Daniel Hanrahan [Wed, 26 Mar 2025 13:19:17 +0000 (13:19 +0000)]
Merge "Use attribute-axis in NCMP [#4]"

3 months agoUse Flux stream processing for CM-handle searches 93/140593/3
danielhanrahan [Sun, 9 Feb 2025 21:53:34 +0000 (21:53 +0000)]
Use Flux stream processing for CM-handle searches

This greatly reduces memory consumption to fetch CM-handles in NCMP
by fetching in batches in a Flux. Full CM-handle search operations
now consume much less memory than before. The lower memory usage and
database pressure improves overall performance.

Issue-ID: CPS-2712
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: I7f653fadeadbf9612e0847f9451654b01a1a5604

3 months agoUse attribute-axis in NCMP [#4] 92/140592/2
emaclee [Mon, 24 Mar 2025 17:29:03 +0000 (17:29 +0000)]
Use attribute-axis in NCMP [#4]

- introduce getCmHandleReferencesByCpsPath for queries by cps
  path in replacement for use of
  'queryCmHandleAncestorsByCpsPath'

Issue-ID: CPS-2666
Change-Id: I38b76e1f255ad1751b13f6a22dbcf540fed764bd
Signed-off-by: emaclee <lee.anjella.macabuhay@est.tech>
3 months agoRefactor Consumers/Producers based on agreed format 50/140550/3
emaclee [Sun, 23 Mar 2025 18:53:04 +0000 (18:53 +0000)]
Refactor Consumers/Producers based on agreed format

- agreed: consumer over producer
- agreed: 'Consumer' is named based on what it consumes
- agreed: no 'Publisher' in names, use producer instead
- AsyncRestRequestResponseEventConsumer to DmiAsyncRequestResponseEventConsumer
- LcmEventsService to LcmEventsProducer
- CmAvcEventPublisher to InventoryEventProducer
- CpsDataUpdateEventsService to CpsDataUpdateEventsProducer
- see https://lf-onap.atlassian.net/wiki/spaces/DW/pages/16514237/CPS+Data+Notifications+Overview?force_transition=43836314-5d80-4b83-b9f4-7880332d79a4 for more info

Issue-ID: CPS-2597
Change-Id: Iaafb435fcf985372d4858bcbbcd98901ac778b52
Signed-off-by: emaclee <lee.anjella.macabuhay@est.tech>
3 months agoRemove private properties from DMI write operations 62/140562/1
sourabh_sourabh [Mon, 24 Mar 2025 13:40:44 +0000 (13:40 +0000)]
Remove private properties from DMI write operations

Issue-ID: CPS-2693
Change-Id: Ibef6a3bed095bc668d07324bf7cf011fdb01da09
Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
3 months agoOptimize SQL for fetching descendant fragments 60/140560/1
danielhanrahan [Sun, 9 Feb 2025 21:53:34 +0000 (21:53 +0000)]
Optimize SQL for fetching descendant fragments

This removes the INNER JOIN from the SQL query, giving
better performance when fetching smaller batches.

Issue-ID: CPS-2712
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: I40ec9b7b54c285cc29fd8188c23eb00b4442c75f

3 months agok6 script to do CM-handle registration only 22/140522/3
danielhanrahan [Wed, 19 Mar 2025 14:47:05 +0000 (14:47 +0000)]
k6 script to do CM-handle registration only

This script is intended to be used for populating the database with
CM-handles, which is needed when doing SQL performance analysis.

Issue-ID: CPS-2651
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: Ie644f5f4c86d91a95134b7c67ed96e0650464e0c

3 months agoMerge "Add initial Liquibase database tag for rollback support"
Daniel Hanrahan [Fri, 21 Mar 2025 13:37:23 +0000 (13:37 +0000)]
Merge "Add initial Liquibase database tag for rollback support"

3 months agoMerge "Implemented parallel execution for writeDataJob using ExecutorService with...
Daniel Hanrahan [Fri, 21 Mar 2025 13:36:47 +0000 (13:36 +0000)]
Merge "Implemented parallel execution for writeDataJob using ExecutorService with 10 concurrent threads"

3 months agoMerge "Use attribute-axis in NCMP [#3]"
Daniel Hanrahan [Fri, 21 Mar 2025 13:33:32 +0000 (13:33 +0000)]
Merge "Use attribute-axis in NCMP [#3]"

3 months agoImplemented parallel execution for writeDataJob using ExecutorService with 10 concurr... 94/140494/4
sourabh_sourabh [Tue, 18 Mar 2025 15:09:45 +0000 (15:09 +0000)]
Implemented parallel execution for writeDataJob using ExecutorService with 10 concurrent threads

Issue-ID: CPS-2692
Change-Id: I497e2e626e60b08c6cf28ffa94884808d68a1dd9
Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
3 months agoAdd initial Liquibase database tag for rollback support 37/140537/2
sourabh_sourabh [Thu, 20 Mar 2025 13:19:11 +0000 (13:19 +0000)]
Add initial Liquibase database tag for rollback support

- Introduced an initial Liquibase database tag (24-initial database tag) to support future rollbacks.
- Updated the Liquibase changelog to include a tagDatabase changeSet.
- Ensures that rollback workflows can reference a stable database state.
- No impact on existing functionality.

Issue-ID: CPS-2669
Change-Id: I4f932bb0f90505cf95ddf74d2e57d7b4ea8fba79
Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
3 months agoUse attribute-axis in NCMP [#3] 26/140526/2
emaclee [Thu, 20 Mar 2025 00:07:40 +0000 (00:07 +0000)]
Use attribute-axis in NCMP [#3]

- uses queryleaf API on the methods 'getCmHandleReferences'

Issue-ID: CPS-2664
Change-Id: I7552b4cdfcfa5eb285b94c1dcebfa5ba8327508c
Signed-off-by: emaclee <lee.anjella.macabuhay@est.tech>
3 months agoMerge "Introducing VES event standard schema"
Toine Siebelink [Thu, 20 Mar 2025 11:06:53 +0000 (11:06 +0000)]
Merge "Introducing VES event standard schema"

3 months agoMerge "Enhance batch operation performance with AlternateIdMatcher"
Toine Siebelink [Wed, 19 Mar 2025 18:48:34 +0000 (18:48 +0000)]
Merge "Enhance batch operation performance with AlternateIdMatcher"

3 months agoEnhance batch operation performance with AlternateIdMatcher 23/140523/4
leventecsanyi [Wed, 19 Mar 2025 11:09:12 +0000 (12:09 +0100)]
Enhance batch operation performance with AlternateIdMatcher

  - used more efficient methos in AlternateIdMatcher to get cmHandleIds
  - removed getYangModelCmHandlesFromCmHandleReferences from InventoryPersistence class (unused + bad performance)

Issue-ID: CPS-2607
Change-Id: Ia1970435aec57cd12713958a910a9ced4511440b
Signed-off-by: leventecsanyi <levente.csanyi@est.tech>
3 months agoIntroducing VES event standard schema 24/140524/2
mpriyank [Wed, 19 Mar 2025 15:52:39 +0000 (15:52 +0000)]
Introducing VES event standard schema

- ves event schema definition file
- modified schema to generate the pojo classes as per NCMP standard
- reference : https://docs.onap.org/projects/onap-vnfrqts-requirements/en/latest/Chapter8/ves_7_2/ves_event_listener_7_2.html#

Issue-ID: CPS-2710
Change-Id: I332e3f3756bbd79b4acc3d5d338e9ae44ed4330e
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
3 months agoMerge "Use only alternate id for passthrough read and write tests in k6 #2"
Daniel Hanrahan [Wed, 19 Mar 2025 13:21:52 +0000 (13:21 +0000)]
Merge "Use only alternate id for passthrough read and write tests in k6 #2"

3 months agoUse only alternate id for passthrough read and write tests in k6 #2 83/140483/3
halil.cakal [Thu, 13 Mar 2025 10:29:55 +0000 (10:29 +0000)]
Use only alternate id for passthrough read and write tests in k6 #2

- remove cm handle based passthrough read and write tests in k6
- increase passthrough read and write frequencies to match FS
  requirement for 200K

Issue-ID: CPS-2625

Change-Id: I9099163ea7e65d8cb8bc0226954bc9535ec6eb57
Signed-off-by: halil.cakal <halil.cakal@est.tech>
3 months agoUpdate release notes for attribute axis 88/140488/1
danielhanrahan [Fri, 14 Mar 2025 15:08:08 +0000 (15:08 +0000)]
Update release notes for attribute axis

Issue-ID: CPS-2624
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: I669c0af944e1e6ae87e756670f8e6976ee9a925e

3 months agoMerge "Add attribute-axis to CPS query nodes rest API"
Priyank Maheshwari [Fri, 14 Mar 2025 14:14:03 +0000 (14:14 +0000)]
Merge "Add attribute-axis to CPS query nodes rest API"

3 months agoMinor refactor of query parameters in FragmentQueryBuilder 79/140479/1
danielhanrahan [Thu, 13 Mar 2025 17:51:05 +0000 (17:51 +0000)]
Minor refactor of query parameters in FragmentQueryBuilder

Issue-ID: CPS-2623
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: Ib0f39dd0aeb5f8f52b856ff7aede635f3061927e

3 months agoMerge "Optimize Hazelcast usage in Trust Level Search"
Priyank Maheshwari [Thu, 13 Mar 2025 17:30:06 +0000 (17:30 +0000)]
Merge "Optimize Hazelcast usage in Trust Level Search"

3 months agoMerge "Add documentation for attribute-axis"
Priyank Maheshwari [Thu, 13 Mar 2025 17:07:24 +0000 (17:07 +0000)]
Merge "Add documentation for attribute-axis"

3 months agoAdd documentation for attribute-axis 77/140477/2
danielhanrahan [Thu, 13 Mar 2025 14:40:57 +0000 (14:40 +0000)]
Add documentation for attribute-axis

Issue-ID: CPS-2624
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: Iafa145d1fefbd26adc8786e4001d90883acf1463

3 months agoAdd attribute-axis to CPS query nodes rest API 89/140189/3
danielhanrahan [Thu, 13 Mar 2025 13:33:27 +0000 (13:33 +0000)]
Add attribute-axis to CPS query nodes rest API

Support attribute-axis in query nodes api for both JSON and XML:
  /cps/v2/dataspaces/{dataspace}/anchors/{anchor}/nodes/query

It allows such queries as:
  //books/@title
which returns a JSON response like: [{"title":"Matilda"},{"title":"Dune"}]
and an XML response like: <title>Matilda</title><title>Dune</title>

Issue-ID: CPS-2620
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: Iab51fbe76281740b8dbde373e11864d3509696ef

3 months agoBatch fetch all CM-handles for faster data job 55/140455/2
sourabh_sourabh [Wed, 12 Mar 2025 15:45:52 +0000 (15:45 +0000)]
Batch fetch all CM-handles for faster data job

This optimizes the write data job for the use-case where
most there will be many write operations affecting many CM-handles.
It works by fetching ALL CM-handles into memory.

Issue-ID: CPS-2692
Change-Id: I3a51a9f799ff7521a2a3736440482538de6aa204
Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
3 months agoMove CPS REST business logic to CPS-Service Layer 19/140419/7
ToineSiebelink [Mon, 10 Mar 2025 16:46:22 +0000 (16:46 +0000)]
Move CPS REST business logic to CPS-Service Layer
(scope limited to methods using PrefixResolver)

- Introduced CPSFacade (for methods invoking multiple CPS Services related to Prefix insertion)
- Introduced DataMapper to combine PrefixResolver & DataMapUtils
- Moved includeDecendants boolean to Enum conversion to Enum class
- Removed redundant tests from DataRestControllerSpec
- Removed redundant tests from QueryRestControllerSpec
- Cleaned up some legacy testware (adding assert etc)

Issue-ID: CPS-2428
Change-Id: Ib3b4dae941ada441be0dc76aaa5cd14e48685cf7
Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
3 months agoMerge "Add prometheus metrics for searches and id-searches"
Toine Siebelink [Thu, 13 Mar 2025 09:58:17 +0000 (09:58 +0000)]
Merge "Add prometheus metrics for searches and id-searches"

3 months agoAdd prometheus metrics for searches and id-searches 07/140407/7
mpriyank [Mon, 24 Feb 2025 15:23:09 +0000 (15:23 +0000)]
Add prometheus metrics for searches and id-searches

- Added counter to record the number of invocations for id-searches and
  searches endpoint for cm handle ids
- introducing a cps-interface tag to differentiate between inventory
  id-search and traditional id-search endpoints
- used AOP to have minimal code in the controller layers

Issue-ID: CPS-2611
Change-Id: Ib7db2a25f5f71d11872b779a23d38c1f7931410f
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
3 months agoOptimize Hazelcast usage in Trust Level Search 21/140421/2
seanbeirne [Fri, 7 Mar 2025 16:18:12 +0000 (16:18 +0000)]
Optimize Hazelcast usage in Trust Level Search

Issue-ID: CPS-2674
Change-Id: I1f2fa5dce82eefbc99906bc468c6541f0d35851b
Signed-off-by: seanbeirne <sean.beirne@est.tech>
3 months agoMerge "Allow limiting results in queryDataLeaf"
Toine Siebelink [Wed, 12 Mar 2025 17:21:28 +0000 (17:21 +0000)]
Merge "Allow limiting results in queryDataLeaf"

3 months agoMerge "Groovy performance test for attribute-axis"
Toine Siebelink [Wed, 12 Mar 2025 16:59:35 +0000 (16:59 +0000)]
Merge "Groovy performance test for attribute-axis"

3 months agoAdded performance test of DCM Write Operation 38/140438/1
sourabh_sourabh [Wed, 12 Mar 2025 13:13:35 +0000 (13:13 +0000)]
Added performance test of DCM Write Operation

- Improved maintainability by making alternateId generation customizable via function parameters
- Extracted common logic into registerSequenceOfCmHandles to eliminate duplication.

Issue-ID: CPS-2691
Change-Id: I3b7788115a74a89a87b5cddc93f4c5861e9ccd93
Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
3 months agoMerge "Increase healthcheck retries for cps-and-ncmp"
Daniel Hanrahan [Wed, 12 Mar 2025 11:31:00 +0000 (11:31 +0000)]
Merge "Increase healthcheck retries for cps-and-ncmp"

3 months agoMerge "Set a permanent directory for the container logs"
Daniel Hanrahan [Wed, 12 Mar 2025 11:27:47 +0000 (11:27 +0000)]
Merge "Set a permanent directory for the container logs"

3 months agoMerge "Refactor buildDataNodes to a separate service"
Priyank Maheshwari [Wed, 12 Mar 2025 09:22:22 +0000 (09:22 +0000)]
Merge "Refactor buildDataNodes to a separate service"

3 months agoRefactor buildDataNodes to a separate service 75/139275/23
Arpit Singh [Thu, 7 Nov 2024 10:03:39 +0000 (15:33 +0530)]
Refactor buildDataNodes to a separate service

- Moved the code for buildDataNodes from CpsDataServiceImpl.java to a
  separate service named DataNodeBuilderService.java
- Renamed the methods to be clear and in-line with their intended use in
  DataNodeBuilderService class
- Moved ROOT_NODE_XPATH and NO_PARENT_PATH to CpsPathUtils

Issue-ID: CPS-2487
Change-Id: I46cf843ab79b1e2547d968fbd30528270b95cc16
Signed-off-by: Arpit Singh <AS00745003@techmahindra.com>
3 months agoSet a permanent directory for the container logs 27/140427/1
halil.cakal [Tue, 11 Mar 2025 14:23:33 +0000 (14:23 +0000)]
Set a permanent directory for the container logs

- Currently the container logs (cps-and-ncmp) being stored in the cps
  repository (in k6-tests/logs directory). In every build, cps code base
  being fetched freshly. Thus, the zipped container logs being lost.
- Now, by using the WORKSPACE variable set by Jenkins job, the logs will
  be stored under the root directory of WORKSPACE permanently.

Issue-ID: CPS-2676

Change-Id: I0f7f9a46b94fc3e438de39bbab04f9a59daf446b
Signed-off-by: halil.cakal <halil.cakal@est.tech>
3 months agoIncrease healthcheck retries for cps-and-ncmp 11/140411/3
halil.cakal [Mon, 10 Mar 2025 11:11:29 +0000 (11:11 +0000)]
Increase healthcheck retries for cps-and-ncmp

- increase the healthcheck retries from 3 to 10

Issue-ID: CPS-2679

Change-Id: Idd541fd88eb804d552659c32f6c6c92a0919c405
Signed-off-by: halil.cakal <halil.cakal@est.tech>
3 months agoMerge "Refactor CM Handle Properties to be more realistic into K6 tests"
Toine Siebelink [Tue, 11 Mar 2025 10:07:37 +0000 (10:07 +0000)]
Merge "Refactor CM Handle Properties to be more realistic into K6 tests"

3 months agoMerge "Zip and store logs for containers"
Toine Siebelink [Tue, 11 Mar 2025 10:05:36 +0000 (10:05 +0000)]
Merge "Zip and store logs for containers"

3 months agoAllow limiting results in queryDataLeaf 01/140401/2
danielhanrahan [Wed, 5 Mar 2025 17:28:07 +0000 (17:28 +0000)]
Allow limiting results in queryDataLeaf

This exposes queryResultLimit parameter in queryDataLeaf,
same as was implemented for queryDataNodes API.

Issue-ID: CPS-2680
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: Ieb922ac1acc91dbfd67fb5ade7856213a2f93ce8

3 months agoGroovy performance test for attribute-axis 05/140405/2
danielhanrahan [Fri, 7 Mar 2025 16:57:52 +0000 (16:57 +0000)]
Groovy performance test for attribute-axis

This adds a groovy performance for attribute-axis feature
(queryDataLeaf API).

Issue-ID: CPS-2635
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: Ib7fe324897a3a829cac3ced3446b4d007dc2bee4

3 months agoMerge "Added query limits to NCMP service methods"
Toine Siebelink [Mon, 10 Mar 2025 16:43:00 +0000 (16:43 +0000)]
Merge "Added query limits to NCMP service methods"

3 months agoZip and store logs for containers 04/140404/2
halil.cakal [Fri, 7 Mar 2025 15:01:02 +0000 (15:01 +0000)]
Zip and store logs for containers

- keep console logs printed for k6 results
- zip and store container logs into jenkins' workspace so that it will
  be downloadable whenever needed

Issue-ID: CPS-2676

Change-Id: If2864c0c372d0b7319bba06a3732b49b53c371a4
Signed-off-by: halil.cakal <halil.cakal@est.tech>
3 months agoMerge "Optimize registration parameters"
Toine Siebelink [Mon, 10 Mar 2025 10:05:19 +0000 (10:05 +0000)]
Merge "Optimize registration parameters"

3 months agoMerge "Fix test-tools metrics script"
Priyank Maheshwari [Fri, 7 Mar 2025 17:26:06 +0000 (17:26 +0000)]
Merge "Fix test-tools metrics script"

3 months agoRefactor CM Handle Properties to be more realistic into K6 tests 21/140321/4
sourabh_sourabh [Thu, 27 Feb 2025 16:15:41 +0000 (16:15 +0000)]
Refactor CM Handle Properties to be more realistic into K6 tests

Issue-ID: CPS-2637
Change-Id: I627cb8be0738e6b0f82dace361eb02889f193ace
Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
3 months agoMerge "Omit decendents when resolving AlternateId"
Daniel Hanrahan [Fri, 7 Mar 2025 12:10:01 +0000 (12:10 +0000)]
Merge "Omit decendents when resolving AlternateId"

3 months agoOptimize registration parameters 98/140398/1
halil.cakal [Fri, 7 Mar 2025 10:24:41 +0000 (10:24 +0000)]
Optimize registration parameters

- change internal batch size from 100 to 300
- change input batch size from 100 to 2000 in k6 tests

Issue-ID: CPS-2686

Change-Id: If9645facaee6c0d745a1e9dd12962a27e110f787
Signed-off-by: halil.cakal <halil.cakal@est.tech>
3 months agoMerge "Randomize cm handle ids in a legacy batch array"
Daniel Hanrahan [Thu, 6 Mar 2025 18:41:52 +0000 (18:41 +0000)]
Merge "Randomize cm handle ids in a legacy batch array"

3 months agoRandomize cm handle ids in a legacy batch array 93/140393/2
leventecsanyi [Thu, 6 Mar 2025 15:15:16 +0000 (16:15 +0100)]
Randomize cm handle ids in a legacy batch array

  - added new JS method to get a random list of CmHandle IDs

Issue-ID: CPS-2687
Change-Id: I3b02d4b7c03af3a05860e30b32877475b7e70dba
Signed-off-by: leventecsanyi <levente.csanyi@est.tech>
3 months agoFix test-tools metrics script 95/140395/1
danielhanrahan [Wed, 5 Mar 2025 10:15:46 +0000 (10:15 +0000)]
Fix test-tools metrics script

The test script for generating spreadsheet report from prometheus
metrics is currently broken (produces garbage output).

- Issue is fixed by specifying space character as delimiter.
- Add more metrics to the report to make script more useful.

Issue-ID: CPS-2651
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: I6347521f15bdfc1654243552bfe87190058bd8db

3 months agoFix degradation in (de)registration performance 94/140394/1
ToineSiebelink [Thu, 6 Mar 2025 11:34:08 +0000 (11:34 +0000)]
Fix degradation in (de)registration performance

- Disabled CPS notifications by default (in yaml and java)
- minor refactoring of related production code
- Improved unit test regarding notifications being enabled/disabled to get 100% coverage
- Removed now redundant test for enable/disable scenarios (2 replaced by 1 better test)

Issue-ID: CPS-2684
Change-Id: If43cd9c06c1655e1d49c70c55830c4e3a579a6d4
Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
3 months agoAdded query limits to NCMP service methods 91/140391/1
leventecsanyi [Thu, 6 Mar 2025 12:33:12 +0000 (13:33 +0100)]
Added query limits to NCMP service methods

  - modified CmHandleQueryService if
  - added limits to certain Impl methods

Issue-ID: CPS-2678
Change-Id: Ia5fd58afcd6f48404aeafba08ee2977c3efc6dcc
Signed-off-by: leventecsanyi <levente.csanyi@est.tech>
3 months agoOmit decendents when resolving AlternateId 53/140353/2
seanbeirne [Wed, 19 Feb 2025 14:46:36 +0000 (14:46 +0000)]
Omit decendents when resolving AlternateId

Issue-ID: CPS-2652
Change-Id: Ifcaa62d251ab0e4c926f13180acde90a02778c74
Signed-off-by: seanbeirne <sean.beirne@est.tech>
3 months agoMerge "Add notes for request limitations"
Lee Anjella Macabuhay [Wed, 5 Mar 2025 16:08:44 +0000 (16:08 +0000)]
Merge "Add notes for request limitations"

3 months agoMerge "Use attribute-axis in NCMP [#2]"
Daniel Hanrahan [Wed, 5 Mar 2025 16:08:13 +0000 (16:08 +0000)]
Merge "Use attribute-axis in NCMP [#2]"

3 months agoMerge "Add APIs to control notification subscription"
Daniel Hanrahan [Wed, 5 Mar 2025 13:48:20 +0000 (13:48 +0000)]
Merge "Add APIs to control notification subscription"

3 months agoMerge "Configure allowed request size for Nginx"
Daniel Hanrahan [Wed, 5 Mar 2025 13:13:32 +0000 (13:13 +0000)]
Merge "Configure allowed request size for Nginx"

3 months agoMerge "Add conditionalProperty for DeviceTrustLevelMessageConsumer"
Daniel Hanrahan [Wed, 5 Mar 2025 13:12:24 +0000 (13:12 +0000)]
Merge "Add conditionalProperty for DeviceTrustLevelMessageConsumer"

3 months agoAdd notes for request limitations 79/140379/2
leventecsanyi [Tue, 4 Mar 2025 15:31:18 +0000 (16:31 +0100)]
Add notes for request limitations

Issue-ID: CPS-2673
Change-Id: Ida88320ca3a5866933ee9b2303ad6bec6885c9c2
Signed-off-by: leventecsanyi <levente.csanyi@est.tech>
3 months agoAdd APIs to control notification subscription 90/139790/20
rajesh.kumar [Tue, 24 Dec 2024 08:10:06 +0000 (13:40 +0530)]
Add APIs to control notification subscription

  - Add API for notification subscription
  - Add API for notification unsubscription
  - Add API for getting notification subscription information

Issue-ID: CPS-2428
Change-Id: I56c34400dc73c71b936a51260efd241224dccdba
Signed-off-by: rajesh.kumar <rk00747546@techmahindra.com>
3 months agoUse attribute-axis in NCMP [#2] 17/140317/4
emaclee [Thu, 27 Feb 2025 03:40:27 +0000 (03:40 +0000)]
Use attribute-axis in NCMP [#2]

- uses queryleaf API on the methods queryCmHandleAnyProperties

Issue-ID: CPS-2665
Change-Id: Ibad5888ae8ec8f23348d90d7c99871b075479e03
Signed-off-by: emaclee <lee.anjella.macabuhay@est.tech>
3 months agoMerge "Improved unit test related to cm handle reference lookup"
Lee Anjella Macabuhay [Tue, 4 Mar 2025 16:50:49 +0000 (16:50 +0000)]
Merge "Improved unit test related to cm handle reference lookup"

3 months agoImproved unit test related to cm handle reference lookup 78/140378/3
ToineSiebelink [Tue, 4 Mar 2025 15:12:32 +0000 (15:12 +0000)]
Improved unit test related to cm handle reference lookup

Issue-ID: CPS-2605
Change-Id: Iac36b4838f640fa0bb4bf6bcc41f8a72e8c3bd8e
Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
3 months agoMerge "Use attribute-axis in NCMP [#1]"
Daniel Hanrahan [Tue, 4 Mar 2025 12:37:32 +0000 (12:37 +0000)]
Merge "Use attribute-axis in NCMP [#1]"

3 months agoBump CPS to 3.6.2-SNAPSHOT 59/140359/2
egernug [Mon, 3 Mar 2025 15:36:15 +0000 (15:36 +0000)]
Bump CPS to 3.6.2-SNAPSHOT

Issue-ID: CPS-2670

Change-Id: Ida5b74651cca38749c43bd21f410ba539539d914
Signed-off-by: egernug <gerard.nugent@est.tech>
3 months agoContainer yaml for 3.6.1 58/140358/1
egernug [Mon, 3 Mar 2025 15:00:49 +0000 (15:00 +0000)]
Container yaml for 3.6.1

Issue-ID: CPS-2670

Change-Id: I260d97327063a7fb9d69fa7ec5df7e5d69900400
Signed-off-by: egernug <gerard.nugent@est.tech>
3 months agoAdding maven stage yaml 3.6.1 57/140357/1
egernug [Mon, 3 Mar 2025 14:42:36 +0000 (14:42 +0000)]
Adding maven stage yaml 3.6.1

Issue-ID: CPS-2670

Change-Id: If136f148a3762bc5bfbac92e0146844c6fb86701
Signed-off-by: egernug <gerard.nugent@est.tech>
3 months agoMerge "Release notes update for 3.6.1"
Priyank Maheshwari [Mon, 3 Mar 2025 14:27:51 +0000 (14:27 +0000)]
Merge "Release notes update for 3.6.1"

3 months agoRelease notes update for 3.6.1 54/140354/5
egernug [Mon, 3 Mar 2025 11:25:55 +0000 (11:25 +0000)]
Release notes update for 3.6.1

Issue-ID: CPS-2670

Change-Id: I525976f68f69f1f8d9bfd81788cb332fdc5303f0
Signed-off-by: egernug <gerard.nugent@est.tech>
3 months agoMerge "RTD update related to event schemas"
Lee Anjella Macabuhay [Mon, 3 Mar 2025 13:48:48 +0000 (13:48 +0000)]
Merge "RTD update related to event schemas"

3 months agoAdd conditionalProperty for DeviceTrustLevelMessageConsumer 69/140369/1
emaclee [Mon, 3 Mar 2025 12:52:13 +0000 (12:52 +0000)]
Add conditionalProperty for DeviceTrustLevelMessageConsumer

Issue-ID: CPS-2556
Change-Id: Id3be9bccdf40065794654cc414ae75a2184aebb8
Signed-off-by: emaclee <lee.anjella.macabuhay@est.tech>
3 months agoRTD update related to event schemas 28/140328/2
mpriyank [Fri, 28 Feb 2025 15:58:04 +0000 (15:58 +0000)]
RTD update related to event schemas

- moving the event schemas file to corresponding folder in the docs
  folder as it is in the cps-ncmp-events
- the files are updated as per the new event data schemas

Issue-ID: CPS-2645
Change-Id: Ibcc9b504c6db8a3556773eeaadebcf02f1a3bb96
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
3 months agoAdd CM Data Notification background Load to K6 16/140216/9
sourabh_sourabh [Thu, 13 Feb 2025 10:26:19 +0000 (10:26 +0000)]
Add CM Data Notification background Load to K6

- Implement Kafka message producer with controlled throughput
- Configured message rate to 1000 (default: 500).
- Implemented constant-arrival-rate scenario to maintain controlled throughput.
- Adjusted maxVUs from 1000 to prevent resource overload.
- Added graceful shutdown with a 10s stop period.
- Added it into main K6 suite

Issue-ID:CPS-2587
Change-Id: I75fd1fa83892fd4775b27132059f73e9c0ea4d75
Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
3 months agoMerge "Change order of CM Handle Reference lookup depending on special character"
Sourabh Sourabh [Fri, 28 Feb 2025 14:09:27 +0000 (14:09 +0000)]
Merge "Change order of CM Handle Reference lookup depending on special character"

3 months agoConfigure allowed request size for Nginx 52/140352/1
leventecsanyi [Thu, 27 Feb 2025 15:12:55 +0000 (16:12 +0100)]
Configure allowed request size for Nginx

Issue-ID: CPS-2668
Change-Id: Ie7f1b2dcaa9883a40bc3e0e9c447b44ddf681f59
Signed-off-by: leventecsanyi <levente.csanyi@est.tech>
3 months agoChange order of CM Handle Reference lookup depending on special character 98/140298/2
seanbeirne [Thu, 20 Feb 2025 11:16:11 +0000 (11:16 +0000)]
Change order of CM Handle Reference lookup depending on special character

- implemented new algorithm using validator to rule out standard id / prefer alternate id
- moved validator imp to cps-service (not in RI) TBC!!!
- changed order of characters tested in validator to fail fast (on '=')
- added Boolean variation validator method to reduce overhead and prevent logic based on exceptions
- improved integration test to cover all scenarios
- add performance test for alternate id look up (report only)
- ensured all performance test use alternate ids it '='
- added small groovy tests to restore cps-ri code coverage to 0.31

Issue-ID: CPS-2605
Change-Id: Id9c22bb69904b7f5d376b7f8319332428435333e
Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
Signed-off-by: seanbeirne <sean.beirne@est.tech>
3 months agoMerge "Event data schemas for NCMP"
Lee Anjella Macabuhay [Thu, 27 Feb 2025 11:16:56 +0000 (11:16 +0000)]
Merge "Event data schemas for NCMP"

3 months agoUse attribute-axis in NCMP [#1] 72/140272/3
emaclee [Tue, 18 Feb 2025 17:39:02 +0000 (17:39 +0000)]
Use attribute-axis in NCMP [#1]

- uses queryleaf API on the methods getCmHandleReferencesByTrustLevel,
getCmHandleReferencesByDmiPluginIdentifier

Issue-ID: CPS-2663
Change-Id: Ib9ff3ceb58b14664660f2a92b02e0bacf00bebda
Signed-off-by: emaclee <lee.anjella.macabuhay@est.tech>
3 months agoEvent data schemas for NCMP 54/139954/13
mpriyank [Thu, 16 Jan 2025 13:38:52 +0000 (13:38 +0000)]
Event data schemas for NCMP

- Updated the schema id as NCMP has a master copy of all the schemas
  that are used
- Introduced an enum to keep track of the dataschemas at a single place.
- Refactored NcmpEvent builder class to take type and dataschema as a
  parameter
- Cleaned up dependencies
- Refactored testware to prove the changes
- Changes are according to the decisions recorded here https://lf-onap.atlassian.net/wiki/spaces/DW/pages/16554840/CPS-2425+Event+Schemas+in+ONAP#Agreed-Event-Schema-Names

Issue-ID: CPS-2425
Change-Id: Icbda1aa20e3c4b0f2b6797d25b59e52cf9237c92
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
3 months agoChange metric name for LCM state gauge 92/140292/2
emaclee [Tue, 25 Feb 2025 07:37:52 +0000 (07:37 +0000)]
Change metric name for LCM state gauge

- change gauge name from cmHandlesByState to cps_ncmp_inventory_cm_handles_by_state

Issue-id: CPS-2662
Change-Id: I97a036b155b638cd6ed94a739e3dffb7b6f00172
Signed-off-by: emaclee <lee.anjella.macabuhay@est.tech>