summaryrefslogtreecommitdiffstats
path: root/cps-ri
AgeCommit message (Collapse)AuthorFilesLines
2023-02-15Bulk delete schemasets in CM handle deregistrationdanielhanrahan5-7/+61
- Batch delete schema sets in single query - Call deleteUnusedYangResourceModules once per batch, not per CM handle - Results for deregistering 10k: 14 mins before; 6 mins after Issue-ID: CPS-1423 Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech> Change-Id: Ia3a86a0dc88677323e2f386253a99022a7f02603
2023-02-08Release Process Step 7mpriyank1-1/+1
- updated pom to 3.2.3-SNAPSHOT - updated version.properties and updated the release notes to properly depict the correct version Issue-ID: CPS-1476 Change-Id: Ied60194c6dd4153b58a43715cb729ad75b8e12bf Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
2023-02-01Create plural version of deleteDataNodedanielhanrahan9-90/+262
- Add method to CpsDataService to batch delete data nodes and lists - Use native queries to batch delete fragment entities by xpaths, for data nodes and lists - Add performance tests for batch delete - Refactor FragmentNativeRepository - Add single-column version of createTemporaryTable - Renamed metric cps.data.service.datanode.batch.delete to cps.data.service.datanode.all.delete Issue-ID: CPS-1438 Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech> Change-Id: I1851f9c7ef0b1be4bd421b3352d9697a2dd23f79
2023-01-31Introduce InstrumentationToineSiebelink3-21/+46
- Add instrumentation related dependency - Added Timed Instrumentation - CPS-Service Crud methods - CPS Yang parsing - NCMP Registration methods - NCMP Events handling - Remove manual Gauge for YanResources Cache as (better!) instrumentation is already built into the 3PP - Sorted dependecies alphabetically (as we used to enforce, to prevent duplicates) - Added ## P E R F O R M A N C E T E S T R E S U L T S ### mini report - (unrelated) test improvement (because of bug that turned out to be invalid) Reviewers: Sourabh,Priyank, Luke Issue-ID: CPS-1457 Signed-off-by: ToineSiebelink <toine.siebelink@est.tech> Change-Id: I34b20bece2f59488b022b8effa9470704c57be4d
2023-01-27Update version files for release processseanbeirne1-1/+1
- Updated version.properties - Updated release-notes - Updated pom files Issue-ID: CPS-1835 Signed-off-by: seanbeirne <sean.beirne@est.tech> Change-Id: I0f837ac41d24b41d7c2b9e3dfe2dacc550c0aafa
2023-01-26Merge "Springboot Integration tests improvements"Sourabh Sourabh1-1/+3
2023-01-25Springboot Integration tests improvementslukegleeson1-1/+3
Creation of CpsIntegrationSpecBase Demonstration of test class implementing CpsIntegrationSpecBase in CpsPersistenceSpec Tests use reduced liquibase steps, basic bookstore yang model and bookstore json payload Issue-ID: CPS-1379 Signed-off-by: lukegleeson <luke.gleeson@est.tech> Change-Id: I38202d0888808d08d85fce1aab45fc43e8b0cec3
2023-01-24Handle root xpaths in getDataNodesdanielhanrahan3-6/+19
Issue-ID: CPS-1458 Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech> Change-Id: I64abf97317afe4335c8d04169689ee1396e75860
2023-01-23Use native query to delete data nodessourabh_sourabh6-13/+110
- Used hashcode to remove child fragment based on it's xpath - Used native query to delete fragment by altering fragment_parent_id_fkey CONSTRAINT. Issue-ID: CPS-1439 Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech> Change-Id: If19c449818e18f8fd666503b7346704eeb4a95d0 Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
2023-01-23Merge "Added depth parameter in query nodes API."Toine Siebelink1-5/+9
2023-01-23Added depth parameter in query nodes API.rajesh.kumar1-5/+9
Issue-ID: CPS-1381 Change-ID: I73f97f986a817d423f93a8d922dcd9647b1206bb Signed-off-by: rajesh.kumar <rk00747546@techmahindra.com>
2023-01-19Normalize xpaths for getDataNodesdanielhanrahan5-24/+74
Issue-ID: CPS-1457 Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech> Change-Id: I93d19666c168aa69da73eadbfef0fc54181aec52
2023-01-17Add delete performance testsdanielhanrahan3-78/+236
- move existing delete tests to new class - add tests for deleting lists and list elements - add test for deleting root node Issue-ID: CPS-1437 Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech> Change-Id: I81228aa9473ed28d550db64b28c38abb1c1016f5
2023-01-16Merge "Fetch CM handles by collection of xpaths"Sourabh Sourabh8-34/+197
2023-01-11Fetch CM handles by collection of xpathsseanbeirne8-34/+197
- Added FragmentRepositoryMultiPathQuery - Removed Hibernate method for same - Added perf. test - Handle escaping of single qoutes in sql-data - Increased timing for path paser performance test Issue-ID: CPS-1422 Signed-off-by: seanbeirne <sean.beirne@est.tech> Change-Id: Ibea12a44bffd29ed43cc1560b507d1fa7e968b8b
2023-01-11CPS PATCH operation does not merge existing datalukegleeson2-2/+33
Altered code to add attributes and not overwrite attributes + tests Issue-ID: CPS-1442 Signed-off-by: lukegleeson <luke.gleeson@est.tech> Change-Id: I23c5f6a65b98ea1b05af62a38a874c228cc82067
2023-01-05Add delete performance testsdanielhanrahan1-1/+37
Issue-ID: CPS-1437 Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech> Change-Id: If940d7633ab6f85b6e1e311af7077ce2006cfa6a
2022-12-23Organize performance testToineSiebelink2-3/+3
- Separated CpsPathUtil performance tests in dedicated file - Used smaller sample to speed up CpsPathUtil test - Increased margin on CpsModuleReferenceRepository performance test to rpevent accidental failures - Added profiles to cps path parser module - Use Regex to include any (future) perforamcne test using same naming Issue-ID: CPS-1421 Signed-off-by: ToineSiebelink <toine.siebelink@est.tech> Change-Id: I9da1614b6f067e946a4f088c6417479fa6c71988
2022-12-22Temp Table Creation improvementsToineSiebelink7-60/+231
- extracted methods for more generic temp table creation - optimized - added perf test on use case that depends on temp table creation - had some doubts about stopwatch use in recent tests, but was all OK, just renamed some Issue-ID: CPS-1422 Signed-off-by: ToineSiebelink <toine.siebelink@est.tech> Change-Id: I22cabb9b0ba1b0aa8576a2d756d77af46eebc1b0
2022-12-21CpsPath Query OptimizationToineSiebelink6-126/+243
- Optimized CpsPathqueries with descendants that only care about the xpath (no attribuets checks) - Use native query with regular expression for target xpath and descendants - Refactored so existing sql-geneartion code can be re-used in different repository implementations - Adjusted related performance test expectations Issue-ID: CPS-1421 Signed-off-by: ToineSiebelink <toine.siebelink@est.tech> Change-Id: I3a807a14478c4b3272a5335d31c9aa3615eb2bee
2022-12-19Fix Delete uses case with '/' in pathToineSiebelink2-13/+33
-Extend and use cpsPath parser (util) classes instead of regex Issue-ID: CPS-1409 Signed-off-by: ToineSiebelink <toine.siebelink@est.tech> Change-Id: I230c9eb71cc34264983830b39149511b95c4b4a6
2022-12-16Merge "CPS-341 Support for multiple data tree instances under 1 anchor"Toine Siebelink3-56/+115
2022-12-15CPS-341 Support for multiple data tree instances under 1 anchorarpitsingh3-56/+115
- Updated the parseJsonData method so it can parse JSON with multiple data trees, now it returns a ContainerNode - ContainerNode holds a collection of NormalizedNodes - Updated DataNodeBuilder and FragmentRepository as well to support collection of NormalizedNodes - Added new methods in CpsDataPersistenceService to store multiple Data Nodes - Added new test cases - Updated existing test cases and fixed code coverage - Addressed comments from previous patch Issue-ID: CPS-341 Change-Id: Ie893e91c0fbfb139a1a406e962721b0f52412ced Signed-off-by: arpitsingh <as00745003@techmahindra.com>
2022-12-15Merge "Query Optimization"Joseph Keenan1-26/+49
2022-12-13Merge "Fixing SonarQube violations"Toine Siebelink2-6/+9
2022-12-12Query OptimizationToineSiebelink1-26/+49
- Refactor performance tests as multiple separate (data driven) tests - This to improve redability and re-use and amke sure al tets are always ran (makign it easier to test/change thresholds for multiple scenarios at once) - Add new query performance tests (on many descendants) Issue-ID: CPS-475 Signed-off-by: ToineSiebelink <toine.siebelink@est.tech> Change-Id: If5703fcb9e2233ded64d31d2342de2e7f5549687
2022-12-12Increase performance test marginsleventecsanyi1-8/+8
- Increased duration times Issue-Id: CPS-1420 Change-Id: I510801a65194b63ce72a716ee3fc7258aef61207 Signed-off-by: leventecsanyi <levente.csanyi@est.tech>
2022-12-12Fixing SonarQube violationsleventecsanyi2-6/+9
- Code smell fixes Signed-off-by: leventecsanyi <levente.csanyi@est.tech> Issue-ID: CPS-475 Change-Id: I4b47ece82aed7e4b31aaa28e601e419fb6f06718
2022-12-09Merge "Added API to get all schema sets for a given dataspace."Toine Siebelink3-0/+47
2022-12-09Added API to get all schema sets for a given dataspace.rajesh.kumar3-0/+47
Issue-ID: CPS-1187 Change-ID: I73f97f986a817d423f93a8d922dcd9647b0914aa Signed-off-by: rajesh.kumar <rk00747546@techmahindra.com>
2022-12-08Merge "Fix SonarQube Violations"Sourabh Sourabh1-2/+1
2022-12-07Merge "Update outdated dependencies"Toine Siebelink1-0/+1
2022-12-06Merge "Enhance read performance tests"Toine Siebelink2-19/+70
2022-12-06Merge "Upgrade Open daylight yang tool to version 8.0.6"Toine Siebelink1-1/+6
2022-12-06Upgrade Open daylight yang tool to version 8.0.6emaclee1-1/+6
- changed classes according to upgrade of yang tool - changed methods in YangUtils class to accomodate change for jSonParserStream method - updated unit tests for the upgrade Signed-off-by: emaclee <lee.anjella.macabuhay@est.tech> Change-Id: Ib62fe424150ed0695eed168e1ae21f4d9a61cdf4
2022-12-05Fix SonarQube Violationsleventecsanyi2-3/+1
Signed-off-by: leventecsanyi <levente.csanyi@est.tech> Issue-ID: CPS-475 Change-Id: Ic5c83cf2952c649fb634c6a1660696e7575cc1c7
2022-12-04Update outdated dependenciesleventecsanyi1-0/+1
- Updated cps-dependecies spring-web & jackson-databind & postgres version numbers Signed-off-by: leventecsanyi <levente.csanyi@est.tech> Change-Id: I3c9e72cafafb734852a594d14184edfc459db9fb Issue-ID: CPS-1397
2022-12-02Enhance read performance testsToineSiebelink2-19/+70
- Use cleaner base-data to prevent aready existing exception on generated IDs - Increased sample size to 10K - Test 3 scenarios now: get parent, get root and query as all 3 required separate perf improvements - Adjusted Timing for new size (allowing approx 10% margin in Nordix build) Issue-ID: CPS-1171 Signed-off-by: ToineSiebelink <toine.siebelink@est.tech> Change-Id: Id3867c8d33cd2c57d4d815c687561e23d1029bfd
2022-12-01Filter on private properties of CM Handlesleventecsanyi1-1/+1
- Moved cm handle query validation to cps-ncmp-service (where it belongs!) - Added new enum type for private/public field types - Created new methods for private and public queries - Added new REST endpoint - Created service methods for filtering on different types of properties - Refactored getPublicPropertyPairs and queryCmHandleAnyProperties - Added unit test for the controller layer - Fixed refactoring suggestions - Imporved code coverage with unit tests - Refactoring - Added new functionality to NcmpRestInputMapper - Updated version number to 3.2.1-SNAPSHOT and updated release-notes.rst Issue-ID: CPS-1236 Change-Id: I0ddf6866473f7c3c6b8507d222d441bf97ca6bdc Signed-off-by: leventecsanyi <levente.csanyi@est.tech>
2022-11-22Merge "Performance Test settings exploration"Toine Siebelink1-4/+4
2022-11-18Performance Test settings explorationseanbeirne1-4/+4
Issue-ID: CPS-1351 Signed-off-by: seanbeirne <sean.beirne@est.tech> Change-Id: I91624b74fc712078a22b9dc18851ca0b5de6a911
2022-11-18Added get APIs for dataspace.rajesh.kumar2-0/+47
Issue-ID: CPS-1186 Change-ID: I73f97f986a817d423f93a8d922dcd9647b0829aa Signed-off-by: rajesh.kumar <rk00747546@techmahindra.com>
2022-11-11Merge "Node API - Find root by anchor method performance"Toine Siebelink6-34/+54
2022-11-11Node API - Find root by anchor method performancesourabh_sourabh6-34/+54
- Modified findFirstRootByAnchor - Used fragment extract to build fragment entity to get root data node. Reviewers : Toine, Priyank and Joe Issue-ID: CPS-1171 Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech> Change-Id: I843f270e4781f91ae496f39b976e2a7f2a14d55e Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
2022-11-11Temporary registry updatempriyank1-2/+3
- temporarily updating the registry to test the failing tests. Issue-ID: CPS-1360 Change-Id: I7e303bb72b3f87565e27bcca7b1d9f5afc2b1417 Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
2022-11-08Node API - GET Method performance issuesourabh_sourabh3-26/+58
- Modified toDataNode call based on fetch descendants option. - Used fragment extract to build fragment entity. - Modified data set to have correct parent id for descendants. Reviewers : Toine, Priyank and Joe Issue-ID: CPS-1171 Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech> Change-Id: I27a537fe72dd396722e6cfde7d8c454ed2579ec0 Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
2022-11-04CPS-RI performance profiles implementaionseanbeirne2-4/+27
Reviewers: Joe, Levente, Luke Issie-ID: CPS-1351 Signed-off-by: seanbeirne <sean.beirne@est.tech> Change-Id: Ia7b9a4bbf103d6b54f6fde9dd2d80a3c825c3046
2022-11-02Ensure prefix is correct module prefixToineSiebelink9-310/+39
- Moved Prefix logic from RI to Service layer - Prefix is no PREFIX propety, not the moduel name! == RI (DB Layer) Changes - Removed prefix logic incl hazelcast - Added new basic ri-test for getDataNode and assert prefix is null - Updated exsiting ri-test to us getDataNode - Updated existing ri-test to only use " where really needed == CPS Service Layer Changes - Introduced PrefixResolver with clear and limited responsibility - Use PrefixResolver where needed - Cache prefix map per anchor, use cached entry when available - Disabled SONAR on new Regex == REST Layer - Use PrefixResolver where needed Issue-ID: CPS-1353 Signed-off-by: ToineSiebelink <toine.siebelink@est.tech> Change-Id: Ie16f0e1ee1c280f3eb69c9e64fab69a780fb692a
2022-10-27Read Performance Improvement - Using Native QueryToineSiebelink9-77/+215
- Native query for FragmentExtracts - Convert FragmentExtracts to tree of FragmentEntity - Native Query now used for all Gets with descendants (orignal hibernate option only used when descendanst ommited) - Added error handling for not-found on native query - Ommit descendants by default on many udpate use-cases (this might have a signifcant perf. improvemnt impact too) - Improved legacy tests for delete use-cases - Corrected performace test expectation - Fix TTL test realizing TTL resolution is whole seconds! Issue-ID: CPS-1301 Signed-off-by: ToineSiebelink <toine.siebelink@est.tech> Change-Id: I658ac1b7b7036f01050f30bdf9e5bd175725ef1d
2022-10-26Creation of DataNodeBuilder with module name prefix is very slowToineSiebelink9-14/+274
- Created a new hazelcast distributed cache for anchor data config use cases. - Module name prefix is added for root data node only. - Cached module name prefix by anchor name on demand from database at first call. - Introduced a new cache holder to have module name prefix of diff. levels. Issue-ID: CPS-1326 Change-Id: I9072f5efdeea59843cd827ac556d3c0547a3a0cf Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech> Signed-off-by: ToineSiebelink <toine.siebelink@est.tech> Signed-off-by: mpriyank <priyank.maheshwari@est.tech>