aboutsummaryrefslogtreecommitdiffstats
path: root/docs
diff options
context:
space:
mode:
Diffstat (limited to 'docs')
-rw-r--r--docs/admin-guide.rst51
-rw-r--r--docs/api/swagger/cps/openapi.yaml59
-rw-r--r--docs/cm-handle-lcm-events.rst12
-rw-r--r--docs/cps-events.rst6
-rw-r--r--docs/cps-ncmp-message-status-codes.rst10
-rw-r--r--docs/cps-scheduled-processes.rst20
-rw-r--r--docs/deployment.rst144
-rw-r--r--docs/modeling.rst22
-rw-r--r--docs/ncmp-data-operation.rst8
-rw-r--r--docs/overview.rst6
-rw-r--r--docs/policy-executor.rst16
-rw-r--r--docs/release-notes.rst139
12 files changed, 296 insertions, 197 deletions
diff --git a/docs/admin-guide.rst b/docs/admin-guide.rst
index 4a40f9b29c..9009de21c9 100644
--- a/docs/admin-guide.rst
+++ b/docs/admin-guide.rst
@@ -1,6 +1,6 @@
.. This work is licensed under a Creative Commons Attribution 4.0 International License.
.. http://creativecommons.org/licenses/by/4.0
-.. Copyright (C) 2021-2022 Nordix Foundation
+.. Copyright (C) 2021-2025 Nordix Foundation
.. DO NOT CHANGE THIS LABEL FOR RELEASE NOTES - EVEN THOUGH IT GIVES A WARNING
.. _adminGuide:
@@ -12,6 +12,40 @@ CPS Admin Guide
.. toctree::
:maxdepth: 1
+Regular Maintenance
+===================
+This section details tasks that an administrator of the CPS application should execute on regular basis
+to ensure optimum working of CPS.
+
+Dataspace Clean Up
+------------------
+Certain data in the CPS database might not be explicitly removed after it is no longer required ('orphaned data').
+For example, schema sets and their associated unique module resources no longer used by any anchor because of model upgrades.
+This data would unnecessarily take up space and could eventually affect the performance of the DB if it is not deleted.
+How often this needs to be done depends on how often schema sets are being deprecated.
+Typically once per month should suffice.
+
+To remove orphaned data in a given dataspace use the following post request:
+
+.. code::
+
+ http://<cps-component-service-name>:<cps-port>/v2/admin/dataspaces/<dataspace-name>/actions/clean
+
+for example
+
+.. code-block:: bash
+
+ curl --location --request POST 'http://cps:8080/admin/datsaspaces/bookstore/actions/clean' \
+ --header 'Content-Type: application/json; charset=utf-8'
+
+ Response : HTTP Status 204
+
+For more details refer to the CPS-Core API: :doc:`design`.
+
+.. note::
+ NCMP has no specific maintenance tasks but it will also build up orphaned data when CM Handles get updated and or deleted.
+ To delete this data execute the above procedure for the dataspace named 'NFP-Operational'.
+
Logging Configuration
=====================
@@ -192,17 +226,15 @@ Prometheus Metrics can be checked at the following endpoint
http://<cps-component-service-name>:8080/actuator/prometheus
-Hazelcast
----------
+Heap Dump and Thread Dump
+-------------------------
-Hazelcast cluster state and health check can be seen using the below endpoints
+On demand heap dump and thread dump generation using the below endpoints.
.. code::
- http://<cps-component-service-name>:<member-port>/hazelcast/health
- http://<cps-component-service-name>:<member-port>/hazelcast/rest/management/cluster/state
-
-See also : :ref:`cps_common_distributed_datastructures`
+ http://<cps-component-service-name>:8080/actuator/heapdump
+ http://<cps-component-service-name>:8080/actuator/threaddump
Naming Validation
-----------------
@@ -210,9 +242,8 @@ Naming Validation
As part of the Kohn 3.1.0 release, CPS has added validation to the names of the following components:
- Dataspace names
- - Schema Set names
- Anchor names
- - Cm-Handle identifiers
+ - CM Handle identifiers
The following characters along with spaces are no longer valid for naming of these components.
diff --git a/docs/api/swagger/cps/openapi.yaml b/docs/api/swagger/cps/openapi.yaml
index c84609b638..f6baadc8ea 100644
--- a/docs/api/swagger/cps/openapi.yaml
+++ b/docs/api/swagger/cps/openapi.yaml
@@ -330,6 +330,65 @@ paths:
summary: Get a dataspace
tags:
- cps-admin
+ /{apiVersion}/admin/dataspaces/{dataspace-name}/actions/clean:
+ post:
+ description: Clean the dataspace (remove orphaned schema sets and modules)
+ operationId: cleanDataspace
+ parameters:
+ - description: apiVersion
+ in: path
+ name: apiVersion
+ required: true
+ schema:
+ default: v2
+ enum:
+ - v1
+ - v2
+ type: string
+ - description: dataspace-name
+ in: path
+ name: dataspace-name
+ required: true
+ schema:
+ example: my-dataspace
+ type: string
+ responses:
+ "204":
+ content: {}
+ description: No Content
+ "400":
+ content:
+ application/json:
+ example:
+ status: 400
+ message: Bad Request
+ details: The provided request is not valid
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Bad Request
+ "403":
+ content:
+ application/json:
+ example:
+ status: 403
+ message: Request Forbidden
+ details: This request is forbidden
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Forbidden
+ "500":
+ content:
+ application/json:
+ example:
+ status: 500
+ message: Internal Server Error
+ details: Internal Server Error occurred
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Internal Server Error
+ summary: Clean the dataspace
+ tags:
+ - cps-admin
/v1/dataspaces/{dataspace-name}/anchors:
post:
deprecated: true
diff --git a/docs/cm-handle-lcm-events.rst b/docs/cm-handle-lcm-events.rst
index 8446834c31..38339e206a 100644
--- a/docs/cm-handle-lcm-events.rst
+++ b/docs/cm-handle-lcm-events.rst
@@ -1,6 +1,6 @@
.. This work is licensed under a Creative Commons Attribution 4.0 International License.
.. http://creativecommons.org/licenses/by/4.0
-.. Copyright (C) 2023 Nordix Foundation
+.. Copyright (C) 2023-2025 Nordix Foundation
.. DO NOT CHANGE THIS LABEL FOR RELEASE NOTES - EVEN THOUGH IT GIVES A WARNING
.. _cmHandleLcmEvents:
@@ -15,7 +15,7 @@ CM Handle Lifecycle Management (LCM) Events
Introduction
============
-LCM events for CM Handles are published when a CM Handle is created, deleted or another change in the cm handle state occurs.
+LCM events for CM Handles are published when a CM Handle is created, deleted or another change in the CM Handle state occurs.
**3 possible event types:**
@@ -55,7 +55,7 @@ Event payload varies based on the type of event.
**CREATE**
-Event payload for this event contains the properties of the new cm handle created.
+Event payload for this event contains the properties of the new CM Handle created.
*Create event payload prototype*
@@ -77,7 +77,7 @@ Event payload for this event contains the properties of the new cm handle create
**UPDATE**
-Event payload for this event contains the difference in state and properties of the cm handle.
+Event payload for this event contains the difference in state and properties of the CM Handle.
*Update event payload prototype*
@@ -106,7 +106,7 @@ Event payload for this event contains the difference in state and properties of
**DELETE**
-Event payload for this event contains the identifier of the deleted cm handle.
+Event payload for this event contains the identifier of the deleted CM Handle.
*Delete event payload prototype*
@@ -114,4 +114,4 @@ Event payload for this event contains the identifier of the deleted cm handle.
"event": {
"cmHandleId" : "cmhandle-001",
- } \ No newline at end of file
+ }
diff --git a/docs/cps-events.rst b/docs/cps-events.rst
index 47aa73f12e..1097af9a12 100644
--- a/docs/cps-events.rst
+++ b/docs/cps-events.rst
@@ -1,6 +1,6 @@
.. This work is licensed under a Creative Commons Attribution 4.0 International License.
.. http://creativecommons.org/licenses/by/4.0
-.. Copyright (C) 2022-2023 Nordix Foundation
+.. Copyright (C) 2022-2025 Nordix Foundation
.. DO NOT CHANGE THIS LABEL FOR RELEASE NOTES - EVEN THOUGH IT GIVES A WARNING
.. _cpsEvents:
@@ -16,9 +16,9 @@ CPS Events
cm-notification-subscriptions.rst
.. note::
- Legacy async response on a client supplied topic for single cm handle data request are no longer supported. Click link below for the legacy specification.
+ Legacy async response on a client supplied topic for single CM Handle data request are no longer supported. Click link below for the legacy specification.
.. toctree::
:maxdepth: 0
- ncmp-async-events.rst \ No newline at end of file
+ ncmp-async-events.rst
diff --git a/docs/cps-ncmp-message-status-codes.rst b/docs/cps-ncmp-message-status-codes.rst
index e0a3f0308b..799838ae44 100644
--- a/docs/cps-ncmp-message-status-codes.rst
+++ b/docs/cps-ncmp-message-status-codes.rst
@@ -1,6 +1,6 @@
.. This work is licensed under a Creative Commons Attribution 4.0 International License.
.. http://creativecommons.org/licenses/by/4.0
-.. Copyright (C) 2023-2024 Nordix Foundation
+.. Copyright (C) 2023-2025 Nordix Foundation
.. DO NOT CHANGE THIS LABEL FOR RELEASE NOTES - EVEN THOUGH IT GIVES A WARNING
.. _dataOperationMessageStatusCodes:
@@ -16,9 +16,9 @@ CPS-NCMP Message Status Codes
+-----------------+------------------------------------------------------+-----------------------------------+
| 1 | ACCEPTED | CM Data Notification Subscription |
+-----------------+------------------------------------------------------+-----------------------------------+
- | 100 | cm handle id(s) is(are) not found | All features |
+ | 100 | CM Handle id(s) is(are) not found | All features |
+-----------------+------------------------------------------------------+-----------------------------------+
- | 101 | cm handle(s) not ready | Data Operation |
+ | 101 | CM Handle(s) not ready | Data Operation |
+-----------------+------------------------------------------------------+-----------------------------------+
| 102 | dmi plugin service is not responding | Data Operation |
+-----------------+------------------------------------------------------+-----------------------------------+
@@ -30,9 +30,9 @@ CPS-NCMP Message Status Codes
+-----------------+------------------------------------------------------+-----------------------------------+
| 108 | Unknown error | All features |
+-----------------+------------------------------------------------------+-----------------------------------+
- | 109 | cm-handle already exists | Inventory |
+ | 109 | CM Handle already exists | Inventory |
+-----------------+------------------------------------------------------+-----------------------------------+
- | 110 | cm-handle has an invalid character(s) in id | Inventory |
+ | 110 | CM Handle has an invalid character(s) in id | Inventory |
+-----------------+------------------------------------------------------+-----------------------------------+
| 111 | alternate id already associated | Inventory |
+-----------------+------------------------------------------------------+-----------------------------------+
diff --git a/docs/cps-scheduled-processes.rst b/docs/cps-scheduled-processes.rst
index c204e6ca0a..9af9a81c0c 100644
--- a/docs/cps-scheduled-processes.rst
+++ b/docs/cps-scheduled-processes.rst
@@ -1,6 +1,6 @@
.. This work is licensed under a Creative Commons Attribution 4.0 International License.
.. http://creativecommons.org/licenses/by/4.0
-.. Copyright (C) 2022 Nordix Foundation
+.. Copyright (C) 2022-2025 Nordix Foundation
.. DO NOT CHANGE THIS LABEL FOR RELEASE NOTES - EVEN THOUGH IT GIVES A WARNING
@@ -21,17 +21,17 @@ The following section is a list of the current scheduled processes running withi
Module Sync
-----------
The module sync is a user :ref:`configurable timed process<additional-cps-ncmp-customizations>`,
-which is set to search for CM-Handles within CPS with an *'ADVISED'* state.
-Once the CM-Handle is processed by the module sync, the CM-Handle state is then set to *'READY'*, if the process completes successfully.
-If for any reason the module sync fails, the CM-Handle state will then be set to *'LOCKED'*,
+which is set to search for CM Handles within CPS with an *'ADVISED'* state.
+Once the CM Handle is processed by the module sync, the CM Handle state is then set to *'READY'*, if the process completes successfully.
+If for any reason the module sync fails, the CM Handle state will then be set to *'LOCKED'*,
and the reason for the lock will also be stored within CPS.
-CM-Handles in the *'LOCKED'* state will be retried when the system has availability. CM-Handles in a *'LOCKED'*
-state are processed by the retry mechanism, by setting CM-Handle state back to *'ADVISED'* so the next sync cycle will process those again.
+CM Handles in the *'LOCKED'* state will be retried when the system has availability. CM Handles in a *'LOCKED'*
+state are processed by the retry mechanism, by setting CM Handle state back to *'ADVISED'* so the next sync cycle will process those again.
Data Sync
---------
The data sync is a user :ref:`configurable timed process<additional-cps-ncmp-customizations>`,
-which is set to search for CM-Handles with a sync state of *'UNSYNCHRONIZED'*.
-Once the CM-Handle(s) with a sync state of *'UNSYNCHRONIZED'* is processed by the data sync,
-the CM-Handle sync state is then set to *'SYNCHRONIZED'*, if the process completes successfully.
-If the data sync fails, the CM-Handle sync state will remain as *'UNSYNCHRONIZED'*, and will be re-attempted.
+which is set to search for CM Handles with a sync state of *'UNSYNCHRONIZED'*.
+Once the CM Handle(s) with a sync state of *'UNSYNCHRONIZED'* is processed by the data sync,
+the CM Handle sync state is then set to *'SYNCHRONIZED'*, if the process completes successfully.
+If the data sync fails, the CM Handle sync state will remain as *'UNSYNCHRONIZED'*, and will be re-attempted.
diff --git a/docs/deployment.rst b/docs/deployment.rst
index 940bc50923..840ab8e116 100644
--- a/docs/deployment.rst
+++ b/docs/deployment.rst
@@ -22,14 +22,24 @@ set appropriately. For example, given a database with 2GB of memory, 512MB is a
CPS and NCMP Configuration
==========================
+CPU and Memory Requirements
+---------------------------
+
+The following are minimum requirements for NCMP:
+
+* For 20,000 CM-handles: 2 CPUs and 2 GB RAM per instance, with 70% heap allocation.
+* For 50,000 CM-handles: 3 CPUs and 3 GB RAM per instance, with 70% heap allocation.
+
JVM Memory Allocation
+^^^^^^^^^^^^^^^^^^^^^
-Allocating 75% of the container's memory to the JVM heap ensures efficient memory management.
-This helps the JVM make the best use of the allocated resources while leaving enough memory for other processes.
+When running with 2 GB or more memory per instance, allocating 70% of the JVM memory to the heap ensures efficient
+memory management. It is not recommended to go above 70%.
.. code-block:: yaml
- JAVA_TOOL_OPTIONS: "-XX:InitialRAMPercentage=75.0 -XX:MaxRAMPercentage=75.0"
+ JAVA_TOOL_OPTIONS: "-XX:InitialRAMPercentage=70.0 -XX:MaxRAMPercentage=70.0"
+
Load balancer configuration
===========================
@@ -191,21 +201,16 @@ Any spring supported property can be configured by providing in ``config.additio
| Property | Description | Default Value |
+===========================================+=========================================================================================================+===============================+
| config.appUserName | User name used by cps-core service to configure the authentication for REST API it exposes. | ``cpsuser`` |
-| | | |
| | This is the user name to be used by cps-core REST clients to authenticate themselves. | |
+-------------------------------------------+---------------------------------------------------------------------------------------------------------+-------------------------------+
| config.appUserPassword | Password used by cps-core service to configure the authentication for REST API it exposes. | Not defined |
-| | | |
| | If not defined, the password is generated when deploying the application. | |
-| | | |
| | See also :ref:`cps_common_credentials_retrieval`. | |
+-------------------------------------------+---------------------------------------------------------------------------------------------------------+-------------------------------+
| postgres.config.pgUserName | Internal user name used by cps-core to connect to its own database. | ``cps`` |
+-------------------------------------------+---------------------------------------------------------------------------------------------------------+-------------------------------+
| postgres.config.pgUserPassword | Internal password used by cps-core to connect to its own database. | Not defined |
-| | | |
| | If not defined, the password is generated when deploying the application. | |
-| | | |
| | See also :ref:`cps_common_credentials_retrieval`. | |
+-------------------------------------------+---------------------------------------------------------------------------------------------------------+-------------------------------+
| postgres.config.pgDatabase | Database name used by cps-core | ``cpsdb`` |
@@ -225,28 +230,24 @@ Any spring supported property can be configured by providing in ``config.additio
+-------------------------------------------+---------------------------------------------------------------------------------------------------------+-------------------------------+
| config.eventPublisher. | Kafka security protocol. | ``SASL_PLAINTEXT`` |
| spring.kafka.security.protocol | Some possible values are: | |
-| | | |
| | * ``PLAINTEXT`` | |
| | * ``SASL_PLAINTEXT``, for authentication | |
| | * ``SASL_SSL``, for authentication and encryption | |
+-------------------------------------------+---------------------------------------------------------------------------------------------------------+-------------------------------+
| config.eventPublisher. | Kafka security SASL mechanism. Required for SASL_PLAINTEXT and SASL_SSL protocols. | Not defined |
| spring.kafka.properties. | Some possible values are: | |
-| sasl.mechanism | | |
-| | * ``PLAIN``, for PLAINTEXT | |
+| sasl.mechanism | * ``PLAIN``, for PLAINTEXT | |
| | * ``SCRAM-SHA-512``, for SSL | |
+-------------------------------------------+---------------------------------------------------------------------------------------------------------+-------------------------------+
| config.eventPublisher. | Kafka security SASL JAAS configuration. Required for SASL_PLAINTEXT and SASL_SSL protocols. | Not defined |
| spring.kafka.properties. | Some possible values are: | |
-| sasl.jaas.config | | |
-| | * ``org.apache.kafka.common.security.plain.PlainLoginModule required username="..." password="...";``, | |
-| | for PLAINTEXT | |
+| sasl.jaas.config | * ``org.apache.kafka.common.security.plain.PlainLoginModule required username="..." password="...";``, | |
+| | for PLAINTEXT | |
| | * ``org.apache.kafka.common.security.scram.ScramLoginModule required username="..." password="...";``, | |
-| | for SSL | |
+| | for SSL | |
+-------------------------------------------+---------------------------------------------------------------------------------------------------------+-------------------------------+
| config.eventPublisher. | Kafka security SASL SSL store type. Required for SASL_SSL protocol. | Not defined |
| spring.kafka.ssl.trust-store-type | Some possible values are: | |
-| | | |
| | * ``JKS`` | |
+-------------------------------------------+---------------------------------------------------------------------------------------------------------+-------------------------------+
| config.eventPublisher. | Kafka security SASL SSL store file location. Required for SASL_SSL protocol. | Not defined |
@@ -293,35 +294,84 @@ Any spring supported property can be configured by providing in ``config.additio
Additional CPS-NCMP Customizations
==================================
-+-------------------------------------------+---------------------------------------------------------------------------------------------------------+-------------------------------+
-| config.dmiPluginUserName | User name used by cps-core to authenticate themselves for using ncmp-dmi-plugin service. | ``dmiuser`` |
-+-------------------------------------------+---------------------------------------------------------------------------------------------------------+-------------------------------+
-| config.dmiPluginUserPassword | Internal password used by cps-core to connect to ncmp-dmi-plugin service. | Not defined |
-| | | |
-| | If not defined, the password is generated when deploying the application. | |
-| | | |
-| | See also :ref:`cps_common_credentials_retrieval`. | |
-+-------------------------------------------+---------------------------------------------------------------------------------------------------------+-------------------------------+
-| config.ncmp.timers | Specifies the delay in milliseconds in which the module sync watch dog will wake again after finishing. | ``5000`` |
-| .advised-modules-sync.sleep-time-ms | | |
-| | | |
-+-------------------------------------------+---------------------------------------------------------------------------------------------------------+-------------------------------+
-| config.ncmp.timers | Specifies the delay in milliseconds in which the data sync watch dog will wake again after finishing. | ``30000`` |
-| .cm-handle-data-sync.sleep-time-ms | | |
-| | | |
-+-------------------------------------------+---------------------------------------------------------------------------------------------------------+-------------------------------+
-| config.additional.ncmp.dmi.httpclient | Specifies the maximum time in seconds, to wait for establishing a connection for the HTTP Client. | ``30`` |
-| .connectionTimeoutInSeconds | | |
-+-------------------------------------------+---------------------------------------------------------------------------------------------------------+-------------------------------+
-| config.additional.ncmp.dmi.httpclient | Specifies the maximum number of connections allowed per route in the HTTP client. | ``50`` |
-| .maximumConnectionsPerRoute | | |
-+-------------------------------------------+---------------------------------------------------------------------------------------------------------+-------------------------------+
-| config.additional.ncmp.dmi.httpclient | Specifies the maximum total number of connections that can be held by the HTTP client. | ``100`` |
-| .maximumConnectionsTotal | | |
-+-------------------------------------------+---------------------------------------------------------------------------------------------------------+-------------------------------+
-| config.additional.ncmp.dmi.httpclient | Specifies the duration in seconds for the threshold, after which idle connections will be evicted | ``5`` |
-| .idleConnectionEvictionThresholdInSeconds | from the connection pool by the HTTP client. | |
-+-------------------------------------------+---------------------------------------------------------------------------------------------------------+-------------------------------+
+
++-------------------------------------------------+---------------------------------------------------------------------------------------+---------------------------------+
+| Property | Description | Default Value |
++=================================================+=======================================================================================+=================================+
+| config.dmiPluginUserName | User name used by cps-core to authenticate themselves for using ncmp-dmi-plugin | ``dmiuser`` |
+| | service. | |
++-------------------------------------------------+---------------------------------------------------------------------------------------+---------------------------------+
+| config.dmiPluginUserPassword | Internal password used by cps-core to connect to ncmp-dmi-plugin service. | Not defined |
+| | If not defined, the password is generated when deploying the application. | |
+| | See also :ref:`cps_common_credentials_retrieval`. | |
++-------------------------------------------------+---------------------------------------------------------------------------------------+---------------------------------+
+| config.ncmp.timers | Specifies the delay in milliseconds in which the module sync watch dog will wake again| ``5000`` |
+| .advised-modules-sync.sleep-time-ms | after finishing. | |
++-------------------------------------------------+---------------------------------------------------------------------------------------+---------------------------------+
+| config.ncmp.timers | Specifies the delay in milliseconds in which the data sync watch dog will wake again | ``30000`` |
+| .cm-handle-data-sync.sleep-time-ms | after finishing. | |
+| | | |
++-------------------------------------------------+---------------------------------------------------------------------------------------+---------------------------------+
+| config.additional.ncmp | Maximum size (in MB) of the in-memory buffer for HTTP response data. | ``16`` |
+| .[app] | | |
+| .httpclient | | |
+| .[services] | | |
+| .maximumInMemorySizeInMegabytes | | |
++-------------------------------------------------+---------------------------------------------------------------------------------------+---------------------------------+
+| config.additional.ncmp | Maximum number of simultaneous connections allowed in the connection pool. | ``100`` |
+| .[app] | | |
+| .httpclient | | |
+| .[services] | | |
+| .maximumConnectionsTotal | | |
++-------------------------------------------------+---------------------------------------------------------------------------------------+---------------------------------+
+| config.additional.ncmp | Maximum number of pending requests when the connection pool is full. | ``50`` |
+| .[app] | | |
+| .httpclient | | |
+| .[services] | | |
+| .pendingAcquireMaxCount | | |
++-------------------------------------------------+---------------------------------------------------------------------------------------+---------------------------------+
+| config.additional.ncmp | Specifies the maximum time in seconds, to wait for establishing a connection for the | ``30`` |
+| .[app] | HTTP Client. | |
+| .httpclient | | |
+| .[services] | | |
+| .connectionTimeoutInSeconds | | |
++-------------------------------------------------+---------------------------------------------------------------------------------------+---------------------------------+
+| config.additional.ncmp | Timeout (in seconds) for reading data from the server after the connection is | ``30`` |
+| .[app] | established. | |
+| .httpclient | | |
+| .[services] | | |
+| .readTimeoutInSeconds | | |
++-------------------------------------------------+---------------------------------------------------------------------------------------+---------------------------------+
+| config.additional.ncmp | Timeout (in seconds) for writing data to the server. | ``30`` |
+| .[app] | | |
+| .httpclient | | |
+| .[services] | | |
+| .writeTimeoutInSeconds | | |
++-------------------------------------------------+---------------------------------------------------------------------------------------+---------------------------------+
+| config.additional.ncmp | Total timeout (in seconds) for receiving a complete response, including all processing| ``60`` |
+| .[app] | stages. | |
+| .httpclient | | |
+| .[services] | | |
+| .responseTimeoutInSeconds | | |
++-------------------------------------------------+---------------------------------------------------------------------------------------+---------------------------------+
+| config.additional.ncmp.policy-executor | Enables or disables the policy-executor feature. | ``false`` |
+| .enabled | | |
++-------------------------------------------------+---------------------------------------------------------------------------------------+---------------------------------+
+| config.additional.ncmp.policy-executor | The default (fallback) decision in case a problem with the external service occurs. | ``allow`` |
+| .defaultDecision | | |
++-------------------------------------------------+---------------------------------------------------------------------------------------+---------------------------------+
+| config.additional.ncmp.policy-executor | The server address for the external policy executor service. | ``http://policy-executor-stub`` |
+| .server.address | | |
++-------------------------------------------------+---------------------------------------------------------------------------------------+---------------------------------+
+| config.additional.ncmp.policy-executor | The port used for the external policy executor service. | ``8093`` |
+| .server.port | | |
++-------------------------------------------------+---------------------------------------------------------------------------------------+---------------------------------+
+
+.. note::
+
+ - [app] : can be 'policy-executor' or 'dmi'.
+ - [services] 'all-services' for 'policy-executor'.
+ - [services] 'data-services' and 'model-services' for 'dmi'.
CPS-Core Docker Installation
============================
@@ -342,13 +392,13 @@ Below are the list of distributed datastructures that we have.
+--------------+------------------------------------+-----------------------------------------------------------+
| Component | Data Structure Name | Use |
+==============+====================================+===========================================================+
-| cps-ncmp | moduleSyncStartedOnCmHandles | Watchdog process to register cm handles. |
+| cps-ncmp | moduleSyncStartedOnCmHandles | Watchdog process to register CM Handles. |
+--------------+------------------------------------+-----------------------------------------------------------+
| cps-ncmp | dataSyncSemaphores | Watchdog process to sync data from the nodes. |
+--------------+------------------------------------+-----------------------------------------------------------+
| cps-ncmp | moduleSyncWorkQueue | Queue used internally for workers to pick the task. |
+--------------+------------------------------------+-----------------------------------------------------------+
-| cps-ncmp | trustLevelPerCmHandle | Stores the trust level per cm handle id |
+| cps-ncmp | trustLevelPerCmHandle | Stores the trust level per CM Handle id |
+--------------+------------------------------------+-----------------------------------------------------------+
| cps-ncmp | trustLevelPerDmiPlugin | Stores the trust level for the dmi-plugins. |
+--------------+------------------------------------+-----------------------------------------------------------+
diff --git a/docs/modeling.rst b/docs/modeling.rst
index 7ebf6fecd5..65e4aa97ca 100644
--- a/docs/modeling.rst
+++ b/docs/modeling.rst
@@ -1,7 +1,7 @@
.. This work is licensed under a Creative Commons Attribution 4.0 International License.
.. http://creativecommons.org/licenses/by/4.0
.. Copyright (C) 2021 Pantheon.tech
-.. Modifications Copyright (C) 2021-2023 Nordix Foundation
+.. Modifications Copyright (C) 2021-2025 Nordix Foundation
.. _modeling:
.. toctree::
@@ -89,31 +89,31 @@ Note: Although additional-properties are present in the model of the dmi-registr
Basic Concepts
--------------
-- **CM-Handle** represents an instance a modeled Network Function(node) in ONAP.
+- **CM Handle** represents an instance a modeled Network Function(node) in ONAP.
These are stored as Anchors within CPS-Core.
- - **CM-Handle States** are used to represent the potential states in which a CM-Handle can transition between.
+ - **CM Handle States** are used to represent the potential states in which a CM Handle can transition between.
- The 5 possible CM-Handle states are: ADVISED, READY, LOCKED, DELETING, DELETED
+ The 5 possible CM Handle states are: ADVISED, READY, LOCKED, DELETING, DELETED
- **ADVISED** indicates that a CM-Handle has been registered successfully, and is waiting for the module synchronization process to sync the CM-Handle.
+ **ADVISED** indicates that a CM Handle has been registered successfully, and is waiting for the module synchronization process to sync the CM Handle.
- **READY** indicates that the CM-Handle has been synced successfully.
+ **READY** indicates that the CM Handle has been synced successfully.
- **LOCKED** indicates that the CM-Handle has not synced successfully. A retry mechanism within CPS will set the state back to ADVISED after a set time.
+ **LOCKED** indicates that the CM Handle has not synced successfully. A retry mechanism within CPS will set the state back to ADVISED after a set time.
- **DELETING** indicates that the CM-Handle is currently being deleted.
+ **DELETING** indicates that the CM Handle is currently being deleted.
- **DELETED** indicates that the CM-Handle has been deleted successfully.
+ **DELETED** indicates that the CM Handle has been deleted successfully.
- - **Data-sync state** is the state of the data synchronization process of the CM-Handle
+ - **Data-sync state** is the state of the data synchronization process of the CM Handle
There are 3 possibles states: NONE_REQUESTED, UNSYNCHRONIZED, SYNCHRONIZED
**NONE_REQUESTED** indicates that the data sync is not requested by the user
- **UNSYNCHRONIZED** indicates the cm-handle is waiting for the data sync watchdog operation to carry out the sync process
+ **UNSYNCHRONIZED** indicates the CM Handle is waiting for the data sync watchdog operation to carry out the sync process
**SYNCHRONIZED** indicates the watchdog process has finished the data synchronization successfully
diff --git a/docs/ncmp-data-operation.rst b/docs/ncmp-data-operation.rst
index 10c3bfaca5..e0b7bb88cd 100644
--- a/docs/ncmp-data-operation.rst
+++ b/docs/ncmp-data-operation.rst
@@ -1,6 +1,6 @@
.. This work is licensed under a Creative Commons Attribution 4.0 International License.
.. http://creativecommons.org/licenses/by/4.0
-.. Copyright (C) 2023-2024 Nordix Foundation
+.. Copyright (C) 2023-2025 Nordix Foundation
.. DO NOT CHANGE THIS LABEL FOR RELEASE NOTES - EVEN THOUGH IT GIVES A WARNING
.. _cmHandleDataOperation:
@@ -15,7 +15,7 @@ Data Operations Endpoint
Introduction
============
-For all data operations on cm handle(s), we have a post endpoint:
+For all data operations on CM Handle(s), we have a post endpoint:
- /ncmp/v1/data?topic={client-topic-name} forward request to it's dmi plugin service.
@@ -50,7 +50,7 @@ This endpoint executes data operation for given array of operations:
| | | implementation. For ONAP DMI Plugin it will be RESTConf paths but it can|
| | | really be anything. |
+--------------------------+-------------+-------------------------------------------------------------------------+
- | targetIds | Yes | List of cm handle references |
+ | targetIds | Yes | List of CM Handle references |
+--------------------------+-------------+-------------------------------------------------------------------------+
The status codes used in the events resulting from these operations are defined here:
@@ -156,4 +156,4 @@ DMI Service 2 (POST) : `http://{dmi-host-name}:{dmi-port}/dmi/v1/data?topic=my-t
Above examples are for illustration purposes only. Please refer to link below for latest schema.
-:download:`Data operation event schema <schemas/data-operation-event-schema-1.0.0.json>` \ No newline at end of file
+:download:`Data operation event schema <schemas/data-operation-event-schema-1.0.0.json>`
diff --git a/docs/overview.rst b/docs/overview.rst
index 19ab8b4847..bc99214e2e 100644
--- a/docs/overview.rst
+++ b/docs/overview.rst
@@ -1,6 +1,8 @@
.. This work is licensed under a Creative Commons Attribution 4.0 International License.
.. http://creativecommons.org/licenses/by/4.0
-.. Copyright (C) 2021 Pantheon.tech, Nordix Foundation
+.. Copyright (C) 2021 Pantheon.tech
+.. Modifications Copyright (C) 2021-2025 Nordix Foundation
+
.. _overview:
CPS Overview
@@ -45,7 +47,7 @@ even though CPS-Core could be deployed without the NCMP extension.
NCMP-DMI-Plugin
---------------
-The Data-Model-Inventory (DMI) Plugin is a rest interface used to synchronize CM-Handles data between CPS and DMI through the DMI-Plugin.
+The Data-Model-Inventory (DMI) Plugin is a rest interface used to synchronize CM Handles data between CPS and DMI through the DMI-Plugin.
This is built previously from the CPS-NF-Proxy component.
CPS Project
diff --git a/docs/policy-executor.rst b/docs/policy-executor.rst
index b934a579b1..712b4fcf38 100644
--- a/docs/policy-executor.rst
+++ b/docs/policy-executor.rst
@@ -1,11 +1,10 @@
.. This work is licensed under a Creative Commons Attribution 4.0 International License.
.. http://creativecommons.org/licenses/by/4.0
-.. Copyright (C) 2024 Nordix Foundation
+.. Copyright (C) 2024-2025 Nordix Foundation
-.. DO NOT CHANGE THIS LABEL FOR RELEASE NOTES - EVEN THOUGH IT GIVES A WARNING
+.. DO NOT CHANGE THIS LABEL - EVEN THOUGH IT GIVES A WARNING
.. _policy_executor:
-
Policy Executor
###############
@@ -15,7 +14,16 @@ Policy Executor
Introduction
============
-Work In Progress: This feature is not yet completed and does not affect current NCMP functionality.
+The Policy Executor feature can be used to connect an external system to make decisions on CM write operation.
+When the feature is enabled, NCMP will first call the configured external system and depending on the response, return an error or continue.
+The details of the interface can be found in the ':ref:`policy_executor_consumed_apis`' section.
+
+This feature is available on 'legacy data interface' for operation on a single cm handle: "/v1/ch/{cm-handle}/data/ds/{datastore-name}" and only applies to "ncmp-datastore:passthrough-running".
+
+By default, the feature is not enabled. This is controlled by 'config.additional.ncmp.policy-executor.enabled' and other deployment parameters in the same group to enable it. See :ref:`additional-cps-ncmp-customizations`
+
+.. DO NOT CHANGE THIS LABEL - EVEN THOUGH IT GIVES A WARNING
+.. _policy_executor_consumed_apis:
Consumed APIs
-------------
diff --git a/docs/release-notes.rst b/docs/release-notes.rst
index 9c825e4d35..d2ed1b8044 100644
--- a/docs/release-notes.rst
+++ b/docs/release-notes.rst
@@ -1,6 +1,6 @@
.. This work is licensed under a Creative Commons Attribution 4.0 International License.
.. http://creativecommons.org/licenses/by/4.0
-.. Copyright (C) 2021-2024 Nordix Foundation
+.. Copyright (C) 2021-2025 Nordix Foundation
.. DO NOT CHANGE THIS LABEL FOR RELEASE NOTES - EVEN THOUGH IT GIVES A WARNING
.. _release_notes:
@@ -15,6 +15,29 @@ CPS Release Notes
.. * * * PARIS * * *
.. ====================
+Version: 3.6.1
+==============
+
+Release Data
+------------
+
++--------------------------------------+--------------------------------------------------------+
+| **CPS Project** | |
+| | |
++--------------------------------------+--------------------------------------------------------+
+| **Docker images** | onap/cps-and-ncmp:3.6.1 |
+| | |
++--------------------------------------+--------------------------------------------------------+
+| **Release designation** | 3.6.1 Paris |
+| | |
++--------------------------------------+--------------------------------------------------------+
+| **Release date** | Not yet released |
+| | |
++--------------------------------------+--------------------------------------------------------+
+
+Features
+--------
+
Version: 3.6.0
==============
@@ -31,15 +54,19 @@ Release Data
| **Release designation** | 3.6.0 Paris |
| | |
+--------------------------------------+--------------------------------------------------------+
-| **Release date** | Not yet released |
+| **Release date** | 2025 January 29 |
| | |
+--------------------------------------+--------------------------------------------------------+
Bug Fixes
---------
+ - `CPS-2563 <https://lf-onap.atlassian.net/browse/CPS-2563>`_ Fix for internal error code during duplicated registration.
+ - `CPS-2576 <https://lf-onap.atlassian.net/browse/CPS-2576>`_ Fix for cm handle stuck in LOCKED state during registration.
Features
--------
+ - `CPS-2249 <https://lf-onap.atlassian.net/browse/CPS-2249>`_ NCMP to support Conflict Handling.
+ - `CPS-2540 <https://lf-onap.atlassian.net/browse/CPS-2540>`_ One schemaset per module set tag.
.. ====================
@@ -68,21 +95,19 @@ Release Data
Bug Fixes
---------
-3.5.5
- `CPS-2509 <https://lf-onap.atlassian.net/browse/CPS-2509>`_ Fix module endpoints using alternate identifier.
- `CPS-2517 <https://lf-onap.atlassian.net/browse/CPS-2517>`_ Make Content-Type header default to JSON for CPS APIs.
- - `CPS-2530 <https://lf-onap.atlassian.net/browse/CPS-2530>`_ NCMP Modules API giving empty response on READY cm handles if two sub systems discovered in parallel.
+ - `CPS-2530 <https://lf-onap.atlassian.net/browse/CPS-2530>`_ NCMP Modules API giving empty response on READY CM Handles if two sub systems discovered in parallel.
Features
--------
-3.5.5
- `CPS-2009 <https://lf-onap.atlassian.net/browse/CPS-2009>`_ Update legacy NCMP APIs interfaces to support alternate id.
- `CPS-2082 <https://lf-onap.atlassian.net/browse/CPS-2082>`_ Support XML content type to data node APIs in cps-core.
- `CPS-2433 <https://lf-onap.atlassian.net/browse/CPS-2433>`_ Remove traces of unmaintained CPS-TBDMT repository.
- `CPS-2436 <https://lf-onap.atlassian.net/browse/CPS-2436>`_ CM Avc Event to publish source key to target key while forwarding.
- `CPS-2445 <https://lf-onap.atlassian.net/browse/CPS-2445>`_ Expose CPS and NCMP version information using git plugin.
- `CPS-2451 <https://lf-onap.atlassian.net/browse/CPS-2451>`_ Removing oparent from CPS-NCMP and ONAP DMI Plugin repository.
- - `CPS-2478 <https://lf-onap.atlassian.net/browse/CPS-2478>`_ Optimized Cm Handle Registration and De-Registration use case.
+ - `CPS-2478 <https://lf-onap.atlassian.net/browse/CPS-2478>`_ Optimized CM Handle Registration and De-Registration use case.
- `CPS-2507 <https://lf-onap.atlassian.net/browse/CPS-2507>`_ Upgrade liquibase to 4.30.0 version.
Performance
@@ -111,12 +136,10 @@ Release Data
Bug Fixes
---------
-3.5.4
- `CPS-2403 <https://lf-onap.atlassian.net/browse/CPS-2403>`_ Improve lock handling and queue management during CM-handle Module Sync.
Features
--------
-3.5.4
- `CPS-2408 <https://lf-onap.atlassian.net/browse/CPS-2408>`_ One Hazelcast instance per JVM to manage the distributed data structures.
Version: 3.5.3
@@ -141,7 +164,6 @@ Release Data
Bug Fixes
---------
-3.5.3
- `CPS-2353 <https://lf-onap.atlassian.net/browse/CPS-2353>`_ Slow cmHandle registration when we use moduleSetTag, alternateId and dataProducerIdentifier
- `CPS-2395 <https://lf-onap.atlassian.net/browse/CPS-2395>`_ Retry mechanism (with back off algorithm) is removed with more frequent watchdog poll
- `CPS-2409 <https://lf-onap.atlassian.net/browse/CPS-2409>`_ Return NONE for get effective trust level api if the trust level caches empty (restart case)
@@ -150,9 +172,6 @@ Bug Fixes
Features
--------
-3.5.3
- - `CPS-2247 <https://lf-onap.atlassian.net/browse/CPS-2247>`_ Policy Executor: Invoke Policy Executor and handle 'deny' response
- - `CPS-2412 <https://lf-onap.atlassian.net/browse/CPS-2412>`_ Policy Executor: handle errors
- `CPS-2417 <https://lf-onap.atlassian.net/browse/CPS-2417>`_ Remove Hazelcast cache for prefix resolver
@@ -178,14 +197,12 @@ Release Data
Bug Fixes
---------
-3.5.2
- `CPS-2306 <https://lf-onap.atlassian.net/browse/CPS-2306>`_ Update response message for data validation failure and make it consistent across APIs
- `CPS-2319 <https://lf-onap.atlassian.net/browse/CPS-2319>`_ Fix "Create a node" and "Add List Elements" APIs response code
- `CPS-2372 <https://lf-onap.atlassian.net/browse/CPS-2372>`_ Blank alternate ID overwrites existing one
Features
--------
-3.5.2
- `CPS-1812 <https://lf-onap.atlassian.net/browse/CPS-1812>`_ CM Data Subscriptions ( Create, Delete and Merging ) with positive scenarios
- `CPS-2326 <https://lf-onap.atlassian.net/browse/CPS-2326>`_ Uplift liquibase-core dependency to 4.28.0
- `CPS-2353 <https://lf-onap.atlassian.net/browse/CPS-2353>`_ Improve registration performance with moduleSetTag
@@ -213,14 +230,12 @@ Release Data
Bug Fixes
---------
-3.5.1
- `CPS-2302 <https://lf-onap.atlassian.net/browse/CPS-2302>`_ Fix handling of special characters in moduleSetTag.
Features
--------
-3.5.1
- `CPS-2121 <https://lf-onap.atlassian.net/browse/CPS-2121>`_ Enabled http client prometheus metrics and manage high cardinality using URL template.
- - `CPS-2289 <https://lf-onap.atlassian.net/browse/CPS-2289>`_ Support for CPS Path Query in NCMP Inventory Cm Handle Search.
+ - `CPS-2289 <https://lf-onap.atlassian.net/browse/CPS-2289>`_ Support for CPS Path Query in NCMP Inventory CM Handle Search.
Version: 3.5.0
==============
@@ -242,13 +257,8 @@ Release Data
| | |
+--------------------------------------+--------------------------------------------------------+
-Bug Fixes
----------
-3.5.0
-
Features
--------
-3.5.0
- `CPS-989 <https://lf-onap.atlassian.net/browse/CPS-989>`_ Replace RestTemplate with WebClient.
- `CPS-2172 <https://lf-onap.atlassian.net/browse/CPS-2172>`_ Support for OpenTelemetry Tracing.
@@ -278,12 +288,10 @@ Release Data
Bug Fixes
---------
-3.4.9
- `CPS-2211 <https://lf-onap.atlassian.net/browse/CPS-2211>`_ Toggle switch to disable CPS Core change events if not used by application. Set CPS_CHANGE_EVENT_NOTIFICATIONS_ENABLED environment variable for the same.
Features
--------
-3.4.9
- `CPS-1836 <https://lf-onap.atlassian.net/browse/CPS-1836>`_ Delta between anchor and JSON payload.
Version: 3.4.8
@@ -308,15 +316,11 @@ Release Data
Bug Fixes
---------
-3.4.8
- `CPS-2186 <https://lf-onap.atlassian.net/browse/CPS-2186>`_ Report async task failures to client topic during data operations request
- `CPS-2190 <https://lf-onap.atlassian.net/browse/CPS-2190>`_ Improve performance of NCMP module searches
- `CPS-2194 <https://lf-onap.atlassian.net/browse/CPS-2194>`_ Added defaults for CPS and DMI username and password
- `CPS-2204 <https://lf-onap.atlassian.net/browse/CPS-2204>`_ Added error handling for yang module upgrade operation
-Features
---------
-
Version: 3.4.7
==============
@@ -339,12 +343,10 @@ Release Data
Bug Fixes
---------
-3.4.7
- `CPS-2150 <https://lf-onap.atlassian.net/browse/CPS-2150>`_ Fix for Async task execution failed by TimeoutException.
Features
--------
-3.4.7
- `CPS-2061 <https://lf-onap.atlassian.net/browse/CPS-2061>`_ Liquibase Steps Condensing and Cleanup.
- `CPS-2101 <https://lf-onap.atlassian.net/browse/CPS-2101>`_ Uplift Spring Boot to 3.2.4 version.
@@ -370,7 +372,6 @@ Release Data
Bug Fixes
---------
-3.4.6
- `CPS-2126 <https://lf-onap.atlassian.net/browse/CPS-2126>`_ Passing HTTP Authorization Bearer Token to DMI Plugins.
@@ -406,10 +407,6 @@ Release Data
| | |
+--------------------------------------+--------------------------------------------------------+
-Bug Fixes
----------
-3.4.5
-
Features
--------
@@ -438,7 +435,6 @@ Release Data
Bug Fixes
---------
-3.4.4
- `CPS-2027 <https://lf-onap.atlassian.net/browse/CPS-2027>`_ Upgrade Yang modules using module set tag functionalities fix
Features
@@ -469,7 +465,6 @@ Release Data
Bug Fixes
---------
-3.4.3
- `CPS-2000 <https://lf-onap.atlassian.net/browse/CPS-2000>`_ Fix for Schema object cache not being distributed.
- `CPS-2027 <https://lf-onap.atlassian.net/browse/CPS-2027>`_ Fixes for upgrade yang modules using module set tag.
- `CPS-2070 <https://lf-onap.atlassian.net/browse/CPS-2070>`_ Add retry interval for Kafka consumer.
@@ -506,11 +501,6 @@ Release Data
| | |
+--------------------------------------+--------------------------------------------------------+
-Bug Fixes
----------
-3.4.2
-
-
Features
--------
- `CPS-1638 <https://lf-onap.atlassian.net/browse/CPS-1638>`_ Introduce trust level for CM handle.
@@ -530,7 +520,7 @@ Known Limitations, Issues and Workarounds
For upgrading, CPS uses Liquibase for database upgrades. In order to enable Hibernate write batching
(`CPS-1795 <https://lf-onap.atlassian.net/browse/CPS-1795>`_), a change to the database entity ID generation is required.
As such, *this release does not fully support In-Service Software Upgrade* - CPS will not store new DataNodes and
-NCMP will not register new CM-handles during an upgrade with old and new versions of CPS running concurrently.
+NCMP will not register new CM Handles during an upgrade with old and new versions of CPS running concurrently.
Other operations (read, update, delete) are not impacted.
@@ -556,7 +546,6 @@ Release Data
Bug Fixes
---------
-3.4.1
- `CPS-1979 <https://lf-onap.atlassian.net/browse/CPS-1979>`_ Bug fix for Invalid topic name suffix.
Features
@@ -594,7 +583,6 @@ Release Data
Bug Fixes
---------
-3.4.0
- `CPS-1956 <https://lf-onap.atlassian.net/browse/CPS-1956>`_ Bug fix for No yang resources stored during cmhandle discovery.
.. ========================
@@ -623,13 +611,9 @@ Release Data
Bug Fixes
---------
-3.3.9
- `CPS-1923 <https://lf-onap.atlassian.net/browse/CPS-1923>`_ CPS and NCMP changed management endpoint and port from /manage to /actuator and port same as cps application port.
- `CPS-1933 <https://lf-onap.atlassian.net/browse/CPS-1933>`_ Setting up the class loader explicitly in hazelcast config.
-Features
---------
-
Version: 3.3.8
==============
@@ -650,10 +634,6 @@ Release Data
| | |
+--------------------------------------+--------------------------------------------------------+
-Bug Fixes
----------
-3.3.8
-
Features
--------
- `CPS-1888 <https://lf-onap.atlassian.net/browse/CPS-1888>`_ Uplift Spring Boot to 3.1.2.
@@ -680,7 +660,6 @@ Release Data
Bug Fixes
---------
-3.3.7
- `CPS-1866 <https://lf-onap.atlassian.net/browse/CPS-1866>`_ Fix ClassDefNotFoundError in opendaylight Yang parser
Features
@@ -713,7 +692,6 @@ Release Data
Bug Fixes
---------
-3.3.6
- `CPS-1841 <https://lf-onap.atlassian.net/browse/CPS-1841>`_ Update of top-level data node fails with exception
- `CPS-1842 <https://lf-onap.atlassian.net/browse/CPS-1842>`_ Replace event-id with correlation-id for data read operation cloud event
@@ -743,10 +721,6 @@ Release Data
| | |
+--------------------------------------+--------------------------------------------------------+
-Bug Fixes
----------
-3.3.5
-
Features
--------
- `CPS-1760 <https://lf-onap.atlassian.net/browse/CPS-1760>`_ Improve handling of special characters in Cps Paths
@@ -771,10 +745,6 @@ Release Data
| | |
+--------------------------------------+--------------------------------------------------------+
-Bug Fixes
----------
-3.3.4
-
Features
--------
- `CPS-1767 <https://lf-onap.atlassian.net/browse/CPS-1767>`_ Upgrade CPS to java 17
@@ -799,13 +769,9 @@ Release Data
| | |
+--------------------------------------+--------------------------------------------------------+
-Bug Fixes
----------
-3.3.3
-
Features
--------
- - `CPS-1515 <https://lf-onap.atlassian.net/browse/CPS-1515>`_ Support Multiple CM-Handles for NCMP Get Operation
+ - `CPS-1515 <https://lf-onap.atlassian.net/browse/CPS-1515>`_ Support Multiple CM Handles for NCMP Get Operation
- `CPS-1675 <https://lf-onap.atlassian.net/browse/CPS-1675>`_ Persistence write performance improvement(s)
- `CPS-1745 <https://lf-onap.atlassian.net/browse/CPS-1745>`_ Upgrade to Openapi 3.0.3
@@ -831,7 +797,6 @@ Release Data
Bug Fixes
---------
-3.3.2
- `CPS-1716 <https://lf-onap.atlassian.net/browse/CPS-1716>`_ NCMP: Java Heap OutOfMemory errors and slow registration in case of 20k cmhandles
Features
@@ -862,11 +827,6 @@ Release Data
| | |
+--------------------------------------+--------------------------------------------------------+
-Bug Fixes
----------
-3.3.1
- - None
-
Features
--------
- `CPS-1272 <https://lf-onap.atlassian.net/browse/CPS-1272>`_ Add Contains operation to CPS Path
@@ -895,11 +855,6 @@ Release Data
| | |
+--------------------------------------+--------------------------------------------------------+
-Bug Fixes
----------
-3.3.0
- - None
-
Features
--------
- `CPS-1215 <https://lf-onap.atlassian.net/browse/CPS-1215>`_ Add OR operation for CPS Path
@@ -931,7 +886,6 @@ Release Data
Bug Fixes
---------
-3.2.6
- `CPS-1526 <https://lf-onap.atlassian.net/browse/CPS-1526>`_ Fix response message for PATCH operation
- `CPS-1563 <https://lf-onap.atlassian.net/browse/CPS-1563>`_ Fix 500 response error on id-searches with empty parameters
@@ -961,13 +915,8 @@ Release Data
Bug Fixes
---------
-3.2.5
- `CPS-1537 <https://lf-onap.atlassian.net/browse/CPS-1537>`_ Introduce control switch for model loader functionality.
-Features
---------
- - None
-
Version: 3.2.4
==============
@@ -1265,7 +1214,7 @@ Features
- `CPS-869 <https://lf-onap.atlassian.net/browse/CPS-869>`_ Apply Standardized logging fields to adhere to ONAP Best practice REQ-1072
- `CPS-870 <https://lf-onap.atlassian.net/browse/CPS-870>`_ Align CPS-Core output with SDN-C output (add module name)
- `CPS-875 <https://lf-onap.atlassian.net/browse/CPS-875>`_ CM Handle State: Watchdog-process that syncs 'ADVISED' CM Handles
- - `CPS-877 <https://lf-onap.atlassian.net/browse/CPS-877>`_ CM Handle State: Exclude any CM-Handles from queries/operations that are not in state 'READY'
+ - `CPS-877 <https://lf-onap.atlassian.net/browse/CPS-877>`_ CM Handle State: Exclude any CM Handles from queries/operations that are not in state 'READY'
- `CPS-899 <https://lf-onap.atlassian.net/browse/CPS-899>`_ Start and stop sessions on Java API
- `CPS-909 <https://lf-onap.atlassian.net/browse/CPS-909>`_ Separate NCMP endpoint for ch/{cm-handle}/properties and ch/{cm-handle}/state
- `CPS-917 <https://lf-onap.atlassian.net/browse/CPS-917>`_ Structured Errors response for passthrough use-cases in NCMP
@@ -1278,7 +1227,7 @@ Features
- `CPS-1099 <https://lf-onap.atlassian.net/browse/CPS-1099>`_ Expose simplified 'external' lock reason enum state over REST interface
- `CPS-1101 <https://lf-onap.atlassian.net/browse/CPS-1101>`_ Introducing the DELETING and DELETED Cmhandle State
- `CPS-1102 <https://lf-onap.atlassian.net/browse/CPS-1102>`_ Register the Cmhandle Sends Advised State notification.
- - `CPS-1133 <https://lf-onap.atlassian.net/browse/CPS-1133>`_ Enable/Disable Data Sync for Cm Handle
+ - `CPS-1133 <https://lf-onap.atlassian.net/browse/CPS-1133>`_ Enable/Disable Data Sync for CM Handle
- `CPS-1136 <https://lf-onap.atlassian.net/browse/CPS-1136>`_ DMI Audit Support (get all CM Handles for a registered DMI)
@@ -1379,27 +1328,27 @@ Features
- `CPS-559 <https://lf-onap.atlassian.net/browse/CPS-559>`_ Define response objects (schemas) in cps-ncmp
- `CPS-636 <https://lf-onap.atlassian.net/browse/CPS-636>`_ Update operation for datastore pass through running
- `CPS-638 <https://lf-onap.atlassian.net/browse/CPS-638>`_ Delete operation for datastore pass through running
- - `CPS-677 <https://lf-onap.atlassian.net/browse/CPS-677>`_ Support 'public' Cm Handle Properties
- - `CPS-741 <https://lf-onap.atlassian.net/browse/CPS-741>`_ Re sync after removing cm handles
+ - `CPS-677 <https://lf-onap.atlassian.net/browse/CPS-677>`_ Support 'public' CM Handle Properties
+ - `CPS-741 <https://lf-onap.atlassian.net/browse/CPS-741>`_ Re sync after removing CM Handles
- `CPS-777 <https://lf-onap.atlassian.net/browse/CPS-777>`_ Ensure all DMI operations use POST method
- `CPS-780 <https://lf-onap.atlassian.net/browse/CPS-780>`_ Add examples for parameters, request and response in openapi yaml for cps-core
- `CPS-789 <https://lf-onap.atlassian.net/browse/CPS-789>`_ CPS Data Updated Event Schema V2 to support delete operation
- `CPS-791 <https://lf-onap.atlassian.net/browse/CPS-791>`_ CPS-Core sends delete notification event
- - `CPS-817 <https://lf-onap.atlassian.net/browse/CPS-817>`_ Create Endpoint For Get Cm Handles (incl. public properties) By Name
+ - `CPS-817 <https://lf-onap.atlassian.net/browse/CPS-817>`_ Create Endpoint For Get CM Handles (incl. public properties) By Name
- `CPS-837 <https://lf-onap.atlassian.net/browse/CPS-837>`_ Add Remove and Update properties (DMI and Public) as part of CM Handle Registration update
Bug Fixes
---------
- - `CPS-762 <https://lf-onap.atlassian.net/browse/CPS-762>`_ Query cm handles for module names returns incorrect cm handle identifiers
+ - `CPS-762 <https://lf-onap.atlassian.net/browse/CPS-762>`_ Query CM Handles for module names returns incorrect CM Handle identifiers
- `CPS-788 <https://lf-onap.atlassian.net/browse/CPS-788>`_ Yang Resource formatting is incorrect
- - `CPS-783 <https://lf-onap.atlassian.net/browse/CPS-783>`_ Remove cm handle does not completely remove all cm handle information
+ - `CPS-783 <https://lf-onap.atlassian.net/browse/CPS-783>`_ Remove CM Handle does not completely remove all CM Handle information
- `CPS-841 <https://lf-onap.atlassian.net/browse/CPS-841>`_ Upgrade log4j to 2.17.1 as recommended by ONAP SECCOM
- `CPS-856 <https://lf-onap.atlassian.net/browse/CPS-856>`_ Retry mechanism not working for concurrent CmHandle registration
- `CPS-867 <https://lf-onap.atlassian.net/browse/CPS-867>`_ Database port made configurable through env variable DB_PORT
- `CPS-886 <https://lf-onap.atlassian.net/browse/CPS-886>`_ Fragment handling decreasing performance for large number of cmHandles
- `CPS-887 <https://lf-onap.atlassian.net/browse/CPS-887>`_ Increase performance of cmHandle registration for large number of schema sets in DB
- - `CPS-892 <https://lf-onap.atlassian.net/browse/CPS-892>`_ Fixed the response code during CM-Handle Registration from 201 CREATED to 204 NO_CONTENT
+ - `CPS-892 <https://lf-onap.atlassian.net/browse/CPS-892>`_ Fixed the response code during CM Handle Registration from 201 CREATED to 204 NO_CONTENT
- `CPS-893 <https://lf-onap.atlassian.net/browse/CPS-893>`_ NCMP Java API depends on NCMP-Rest-API (cyclic) through json properties on Java API
Known Limitations, Issues and Workarounds
@@ -1407,9 +1356,9 @@ Known Limitations, Issues and Workarounds
*System Limitations*
-Null can no longer be passed within the dmi plugin service names when registering a cm handle, as part of
+Null can no longer be passed within the dmi plugin service names when registering a CM Handle, as part of
`CPS-837 <https://lf-onap.atlassian.net/browse/CPS-837>`_ null is now used to indicate if a property should be removed as part
-of cm handle registration.
+of CM Handle registration.
The Absolute path to list with integer key will not work. Please refer `CPS-961 <https://lf-onap.atlassian.net/browse/CPS-961>`_
for more information.