Age | Commit message (Collapse) | Author | Files | Lines |
|
Issue-ID: CPS-2087
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: I62b452f34f08a32a6d80671c7af560fbceec1285
|
|
- bump CPS to 3.4.4-SNAPSHOT and update the docs
Issue-ID: CPS-2077
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: I1658c83642c8e64903f4bc03b74b6f5726d0227e
|
|
- add query parameters: module-name and revision to OpenAPI
- extend the controller method to hande the new parameters
- add the new method stack to the service layer
- extend the SQL query to support the new parameters
- add unit and integration testwares
Issue-ID: CPS-1135
Change-Id: I089ad2ad71effb58ac0ba809e9f441d6cdb59c4f
Signed-off-by: halil.cakal <halil.cakal@est.tech>
|
|
-Removed Lambda from CompositeStateUtils
-Restructured CpsDataPersistenceServiceImpl to more logical layout
Issue-ID: CPS-1238
Change-Id: I09096dab474230d04b15c204cbea95a2f1285366
Signed-off-by: seanbeirne <sean.beirne@est.tech>
|
|
- bump CPS to 3.4.3-SNAPSHOT and update the docs
Issue-ID: CPS-2026
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: If0036c6245ddbae2a401b712cc13e3208491ed2f
|
|
|
|
- Implement fragment ID sequence generator with allocation size of 100
- Enable write batching for insert and update, with batch size of 100
- Write performance is over 2x faster
Issue-ID: CPS-1795
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: I7ebd0f834abb57c593603e2cd3fafc7e3425ab1e
|
|
CpsDataService::saveListElementsBatch method is not needed as
saveListElements supports saving multiple list elements in a single
operation. This both simplifies implementation and greatly improves
performance when saving list elements, as the Yang parser need only
run once for the whole batch.
- Change InventoryPersistence to save CM-handles in batches of 100
using existing CpsDataService::saveListElements method.
- Remove not needed CpsDataService::saveListElementBatch.
Issue-ID: CPS-2019
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: I8b74dda2917e094d064b42f2c0e4d57029b90395
|
|
This change fixes a few issues related to JSON encoding of
FragmentEntity attributes (data leaves). This significantly
improves update performance in cases of partial updates.
- Normalize JSON and order leaves by name when comparing
data leaves during update operations.
- Update performance test timings.
Issue-ID: CPS-2018
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: Ia764a353bf96c05758827845e1358745247ee237
|
|
- bump CPS to 3.4.2-SNAPSHOT and update the docs
Issue-ID: CPS-2017
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: Iea58c1134bc9d25c76ef7ccc2c1d2de1c7aa0bfd
|
|
- Incl. integration test
- Prod code is changed to use new method that update yand module.
- updated module resource to return multiple modules.
Issue-ID: CPS-1806
Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
Change-Id: I751d9393ce78a3be9daeaff6d0252738c02115e0
Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
|
|
- bumped CPS to 3.4.1-SNAPSHOT
- updated the release notes
Issue-ID: CPS-1962
Change-Id: Iee9fa03a1890ac5d4c1204d0851a255c5b897720
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
|
|
- bump cps to 3.4.0-SNAPSHOT and update the docs
Issue-ID: CPS-1936
Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
Change-Id: I6a99662c72b236e49abcd79201156bf0a9572de7
|
|
- bump cps to 3.3.10-SNAPSHOT and update the docs
Issue-ID: CPS-1954
Change-Id: Id62f59d4b3c42ea6f791fad85f0700089e3125b9
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
|
|
- Added new schema to upgrade model into component.
- Modified Ncmp rest input mapper to add upgradedCmHandles attributes.
- Modified cm handle state mapper to add new lock reason.
- Added new method to parse and upgrade Cm handles in DmiRegistration.
- YANG data converter is modified to add "module-set-tag" atribute.
- Cm handle new query method is added for cps path without appending
ancestor.
- Modified setCompositeStateForRetry to add lock reason.
- New lock reason category is added.
- Existing module sync service is modified to upgrade the model
"syncAndCreateOrUpgradeSchemaSetAndAnchor".
- Sync util method "getModuleSyncFailedCmHandles" to modified to add
another lock reason "LOCKED_MISBEHAVING".
- Added new attribute "UpgradedCmHandles" into DmiPluginRegistration and DmiPluginRegistrationResponse.
- New attribute "moduleSetTag" is added into NcmpServiceCmHandle.
- New model "UpgradedCmHandles" is added.
- New method "updateSchemaSetWithExistingModules" is added into cps
module service to update cm handle with exsting model.
- Code coverage is reducced to 96 percentage that would be addressed and
pushed into new patch.
Issue-ID: CPS-1798
Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
Change-Id: I540acb404e38fc434de87a0d959bfde710a18b03
Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
|
|
- convert normal java strings to text block - feature from java 15
- handling callback for legacy events. Once the deprecated methods are
removed then this would not be needed.
Issue-ID: CPS-89
Change-Id: I9b537ebee2c284c8109e6cc6c8961a430ee9599d
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
|
|
Issue-ID: CPS-1903
Signed-off-by: egernug <gerard.nugent@est.tech>
Change-Id: If28a979513ed48a4382e8069b8b365f4f7f35135
|
|
To align with Ericsson Spring Boot is being uplifted to version 3.1.2
Issue-ID: CPS-1888
Signed-off-by: egernug <gerard.nugent@est.tech>
Change-Id: Icfe97df15ab67a7fb25e0a98e4bbbbe91f332321
|
|
Issue-ID: CPS-1789
Signed-off-by: egernug <gerard.nugent@est.tech>
Change-Id: Iee5c514ccdba36a387f83948d8a3ba26e6b1de5b
|
|
Issue-ID: CPS-1882
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: Iec6b6e8fed17ad8250a39436c7b4fd5572e5c916
|
|
This reverts commit 9693ec51cf6526082f0ad0c3ad208d144cbbb163.
Reason for revert: Bug fix delivery
Change-Id: I73bdc1528192c662983b0bbef73b10b6d612a719
Signed-off-by: egernug <gerard.nugent@est.tech>
Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
|
|
Issue-ID: CPS-1789
Signed-off-by: egernug <gerard.nugent@est.tech>
Change-Id: I932fca8a50cedf2ae0604401c5e2b27896e4d449
|
|
Issue-ID: CPS-1851
Signed-off-by: leventecsanyi <levente.csanyi@est.tech>
Change-Id: I15c1a9577ac940abfaae60689e3082f55455c28c
|
|
Issue-ID: CPS-475
Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
Change-Id: I43fb6e1be7595faddfb5a22932793e8909b036fc
|
|
- Exposed an interface to update anchor by schema set name.
- New interface is implemented into RI model.
- New native query is exposed to update id with given schema set name.
- A new integration test is written to test new interface into cps core.
Issue-ID: CPS-1800
Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
Change-Id: Ibf44712e11b53cb6673b04b9e3fd864321c90839
Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
|
|
The error is caused by the fetch-descendants code using
ResultSet.getLong which returns a 'long' primitive instead
of a 'Long' object. Thus a parent ID of 'NULL' becomes '0',
which causes an error during update. To preserve the NULL
value, ResultSet.getObject must be used.
Issue-ID: CPS-1841
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: Ida6837a04954cd3c23f0f2faabd7d0712d8ee19d
|
|
Issue-ID: CPS-475
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: I7623a8301fd4567bf96c605eb26bf6c02b1d3c76
|
|
|
|
Add pagination query parameters in query across all anchors API
pagination parameters (pageIndex and pageSize) are optional
default is to query all fragments
each pageSize represents number of records(number of anchors)
TotalRecords is returned in response header to find number of pages.
- If pagination option is provided in request then query number of
anchors equal to pageSize. pageIndex is used for setting offset.
- return number of records(one anchor per record) as per pagesize
and pageSize
Issue-ID: CPS-1605
Change-ID: I73f97f986a817d423f93a8d922dcd9647b2504bc
Signed-off-by: rajesh.kumar <rk00747546@techmahindra.com>
|
|
- getDataNodes can now retrieve list data nodes.
Issue-ID: CPS-1696
Signed-off-by: arpitsingh <as00745003@techmahindra.com>
Change-Id: I320a368d6cb73599d3f7c13fe9b8ab7d0cc69470
|
|
- Fixed (partly duplicated) exclusion list: all exlusings now in PARENT pom only
(this means module reports and aggregate report use same exclusion
- Set common minimum to 100% (3 modules now achieve this :-) )
- Added./clean cm-parsre test to get too 10% in that module too
- Increased module specif minima to actual coverge today
Issue-ID: CPS-475
Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
Change-Id: Ic155f963bfd472e11481fcab6ee8ca227903d9ae
|
|
Issue-ID: CPS-1797
Signed-off-by: egernug <gerard.nugent@est.tech>
Change-Id: Ib2b840b6b37131f16afd879720658d2e45387d6a
|
|
Apostrophe is not currently handled correctly, and having apostrophe in
the xpath will lead to various errors.
For example, normalizing this xpath works:
/path[@name="I'm quoted"] -> /path[@name='I\'m quoted']
However the resulting xpath will throw a PathParsingException if parsed!
(Thus path normalization is not idempotent.)
- Use '' for escaping apostrophe in single quoted leaf value,
to comply with XPath standard (and use "" for escaping in ").
- Use Liquibase to make existing data comply with new rules.
- Leaf values in data leaves are now unescaped, e.g. "I'm quoted"
- Quoting is now consistent for leaf/text/contains conditions.
Issue-ID: CPS-1769
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: Iafc287f738254d7f99706c6bc548091c0ecd5aa0
|
|
|
|
Issue-ID: CPS-1791
Signed-off-by: egernug <gerard.nugent@est.tech>
Change-Id: Ide0fcdfa41656e25395ac8478da1bb489fd8663e
|
|
Presently, a query using the same leaf name twice will fail:
//books[@price > 10 and @price < 20]
It is caused by storing data leaves in a Map.
This is fixed by storing data leaves in a List<DataLeaf>.
Issue-ID: CPS-1779
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: Ie6990ea5e622cf37e986b720a0a07fb69ce4f03b
|
|
Upgrade CPS component to Java 17
Issue-ID:CPS-1767
Signed-off-by: egernug <gerard.nugent@est.tech>
Change-Id: Ide1e75205851e025371b4822ee161f71f04a6af1
|
|
Issue-ID: CPS-1774
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: I52ff9074a9f8188e8635a811b0d2713a97cb4b10
|
|
This fixes issues with special characters for CPS-500, CPS-1756,
CPS-1758, and CPS-1760. It also improves query performance.
- use SQL LIKE instead of regex in Cps Path queries
Issue-ID: CPS-1763
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: I5c179882bfba71d3b009c60059e9073f46227e7d
|
|
If '%' and '_' are used in the contains-condition of a CpsPath query,
incorrect results will be returned. For example:
/bookstore/categories[contains(@code, "%")]
Special characters in the contains-condition value must be escaped.
Issue-ID: CPS-1762
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: I2fdd5a26433d510cd7d6af5b734a6779b537d63d
|
|
- updated the docs.
- Bumped the version to 3.3.4-SNAPSHOT for the next release.
Issue-ID: CPS-1773
Change-Id: Ibe9a694baadb33d284913868452b143c14d105cc
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
|
|
Avoid fetching descendants during batchUpdateDataLeaves,
as descendants are not needed:
- Remove prefetch descendants step from getFragmentEntities;
- Explicitly prefetch descendants in operations requiring it;
- Update performance tests (5x faster for batch update).
Issue-ID: CPS-1675
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: I7442a6f799cc0803b3a78f09d1ee53377f24b0b7
|
|
- Moved session manager test
- Improved schemaset concurrency test (retry testing)
- Cleaned up all ri (container based) integration test (setup)
- Applied some groovy best practice where needed
- internal ri module cover now down to 29%, covred by integration instead with
- Line coverage up by 41 lines to 99% (was 97%)
- Branch coverage up by 3 branches to 96% (was 93%)
Issue-ID: CPS-1687
Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
Change-Id: Ifb77a053e5a5db62a3f6a32ae60a3a8b10918efd
|
|
- Update version properties as well as we prepare for the next release.
Issue-ID: CPS-1750
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: I0626eee7834499d2fa96812fb416ce7daebf0529
|
|
Avoid using Spring Data "interface projection" in FragmentRepository.
The use of FragmentExtract in FragmentRepository is causing an
overhead of around 5 kilobytes per fragment, which is leading to
abnormally high memory usage when queries return a large number of
nodes. For example, around 250MB of additional memory is needlessly
used when fetching 50,000 datanodes.
- Remove FragmentExtract interface and FragmentEntityArranger class.
- Add FragmentPrefetchRepository, using JdbcTemplate and RowMapper
to fetch FragmentEntity descendants in a single SQL query.
- Many CpsDataService operations have memory reductions:
- queryDataNodes
- getDataNodesForMultipleXpaths
- updateDataNodesAndDescendants
- updateNodeLeaves
- and any NCMP methods using the above.
Issue-ID: CPS-1716
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: Ic47a2c9eb34150ed76bd5ce452fe1c9aaf9b4c5c
|
|
|
|
Recursive SQL queries are incorrectly returning maxDepth + 1 levels
of fragments due to incorrect comparison in the WHERE clause.
This code is used by getDataNodes and queryDataNodes to
prefetch the descendants before converting to datanodes.
Prefetching extra descendants causes high memory usage.
Issue-ID: CPS-1716
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: Ie22215c0c7018cd293f73cf75adca2cd55f218a6
|
|
- Moved all Data Intergation Test
- Added/improved some module Moudle Servcie test too
- Removed some unused (impossible) code-paths in prod code
- Replaced null's with meaningful strings (in edge case scenarios)
- Replaced @Shared with static (shorter) in some test
Issue-ID: CPS-1687
Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
Change-Id: Ib4b1ec1706ace7e3f5ac03d85177a6f7d4f6b8d0
|
|
Issue-ID: CPS-1273
Change-Id: I5d562463b9a49abfe0436047a637857d10596fff
Signed-off-by: Rudrangi Anupriya <ra00745022@techmahindra.com>
|
|
As Liquibase is used, JPA does not manage database definition.
Within Liquibase changelog, only Anchor and Fragment have BIGINT (Long)
IDs. Other entities have INTEGER IDs.
- Change AnchorEntity/AnchorRepository ID type to Long
- Change YangResourceEntity/YangResourceRepository and
ModuleReferenceRepository ID to Integer
- Modify datatypes of foreign key references in liquibase changelog to
use correct types for dataspace_id, schema_set_id, yang_resource_id
- Update test liquibase changelog
Issue-ID: CPS-1676
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: I26de6712b2e74d166fc5a48b1f8149de6a1e5199
Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
|