Age | Commit message (Collapse) | Author | Files | Lines |
|
- Add SQL query that can fetch needed fragments to any given depth
- Update getFragmentEntities to use new query
- Remove now unused FragmentRepositoryMultiPathQuery
- Remove unused TempTableCreator method
- Result: getDataNodesForMultipleXpaths is up to 10 times faster
Issue-ID: CPS-1525
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: I07cbc9da5ab994ce7e0c2b02d7ca05089f05dab0
|
|
- Remove unneeded calls to DataspaceRepository::getByName
- Remove unneeded calls to AnchorRepository::getByDataspaceAndName
- Refactor FragmentRepository
Issue-ID: CPS-1536
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: I2121f6247070ee4a7c000e06ec66a6278b758540
|
|
- Make deleteDataNode and deleteListDataNode call deleteDataNodes
- Add onlySupportListDeletion option to deleteDataNodes to support
original deleteListDataNode behaviour
- Allow delete root xpath in deleteDataNodes
- Fix incorrect use of PathParsingException in deleteDataNode
- Update performance tests timings
Issue-ID: CPS-1523
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: I92c3c3ce606a5ab2cb8e6779d1ee0f9853529982
|
|
- added data (folders) for different models and json data
- added base and data for cps-ncmp (registry) specific test cases
- integrated Ahila's (large) openroadm model and data
(corrected version provided by Lee Anjella)
- created profiles to exclude/include *PerfTest
- fixed dependency test check
- included integration test for overall coverage
- increased margings in existing perf test to reduce nordix intermitten failures
Issue-ID: CPS-1516
Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
Change-Id: Ia82826f610636c14aa7e8939b385c278e5039817
|
|
Current implementation of NCMP handle de-registration relies on
DataNodeNotFoundException being thrown to report errors.
- Make deleteDataNodes throw DataNodeFoundExceptionBatch
- Update performance test timings
Issue-ID: CPS-1481
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: Ib833bdb4a23d24e1784bdaf4e5e5e8a9acb41c54
|
|
List elements cannot be lists. Filtering list elements before trying
to delete lists by xpaths doubles performance when deleting list
elements (which doubles performance of CM handle de-registration).
Issue-ID: CPS-1511
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: Ieb6002212d006396d468f27f853708b5aa1e31f2
|
|
- Extract method getFragmentEntities from getDataNodes
- Remove unused code from getFragmentEntity
- Use bulk getFragmentEntities in updateDataNodesAndDescendants
- Update performance test timings
Issue-ID: CPS-1504
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: Icd2c6a0e6009e152de43090cbc23a21349703da2
|
|
Issue-ID: CPS-1504
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: I1356e4a67a40d03cd71a98dad1571583229f414d
|
|
- Use SQL IN operator instead of temp table when deleting nodes
- Use Postgresql LIKE ANY array operator when deleting lists
- Update delete perf test timings
- Refactor adding cascade delete constraint
Issue-ID: CPS-1502
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: Ic90b867e7c71ec1981f05a9122322ece84dd8bde
|
|
- Tighten delete perf test timings
- Fix timings for getDataNodes
Issue-ID: CPS-1502
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: Ib89a70ef90b1b30e2720e48ebfb66650a2fafa12
|
|
|
|
- Modified the GET Data Node API so it returns all the data nodes when
xpath set to root "/"
- Fragment Repository now returns a collection of Fragment Entities
- Instead of returning only the first Fragment Entity now all fragment
entities are returned when xpath is set to root
- The Fragemnt Entities are further processed to a Collection of Data
Nodes. As opposed to singular Data Node in current implementation.
- Finally the DataRestController also returns a Collection of Data
Nodes when xpath is set to root and valid data is present
- Response body changed from JSON object to JSON Array.
- Exception handling for invalid xpath and non-existing xpath is now
done separately at persistence layer.
- Refactored code against CPS-1422
- Deprecated getDataNode method from Service and Persistence layer
- Modified V1 of Get Data Node API to use the getDataNodes method and
get the first data node from the collection returned.
- Modified NCMP to use getDataNodes method
- NCMP still does not support multiple data nodes. It retrieves the
first data node from the collection returned by getDataNodes
Signed-off-by: arpitsingh <as00745003@techmahindra.com>
Change-Id: I494a5740a53f65376d135fcb9f1e2e8900a2803e
|
|
- Bulk delete anchors and datanodes associated with schemasets.
Improves de-registration performance by approx 10%
Issue-ID: CPS-1423
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: Ie38e8b4c64356bf5935d8c7a5d3f5bfa73fb1714
|
|
- 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
|
|
- 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
|
|
- 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
|
|
Issue-ID: CPS-1458
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: I64abf97317afe4335c8d04169689ee1396e75860
|
|
- 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>
|
|
|
|
Issue-ID: CPS-1381
Change-ID: I73f97f986a817d423f93a8d922dcd9647b1206bb
Signed-off-by: rajesh.kumar <rk00747546@techmahindra.com>
|
|
Issue-ID: CPS-1457
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: I93d19666c168aa69da73eadbfef0fc54181aec52
|
|
- 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
|
|
|
|
- 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
|
|
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
|
|
Issue-ID: CPS-1437
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: If940d7633ab6f85b6e1e311af7077ce2006cfa6a
|
|
- 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
|
|
- 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
|
|
- 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
|
|
-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
|
|
|
|
- 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>
|
|
- 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
|
|
- Increased duration times
Issue-Id: CPS-1420
Change-Id: I510801a65194b63ce72a716ee3fc7258aef61207
Signed-off-by: leventecsanyi <levente.csanyi@est.tech>
|
|
|
|
Issue-ID: CPS-1187
Change-ID: I73f97f986a817d423f93a8d922dcd9647b0914aa
Signed-off-by: rajesh.kumar <rk00747546@techmahindra.com>
|
|
- 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
|
|
|
|
Issue-ID: CPS-1351
Signed-off-by: seanbeirne <sean.beirne@est.tech>
Change-Id: I91624b74fc712078a22b9dc18851ca0b5de6a911
|
|
Issue-ID: CPS-1186
Change-ID: I73f97f986a817d423f93a8d922dcd9647b0829aa
Signed-off-by: rajesh.kumar <rk00747546@techmahindra.com>
|
|
|
|
- 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>
|
|
- temporarily updating the registry to test the failing tests.
Issue-ID: CPS-1360
Change-Id: I7e303bb72b3f87565e27bcca7b1d9f5afc2b1417
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
|
|
- 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>
|
|
Reviewers: Joe, Levente, Luke
Issie-ID: CPS-1351
Signed-off-by: seanbeirne <sean.beirne@est.tech>
Change-Id: Ia7b9a4bbf103d6b54f6fde9dd2d80a3c825c3046
|
|
- 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
|
|
- 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
|
|
- 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>
|
|
Changed CPS Validator from static to non-static
Moved CPSValidator implementation to rest interface layer to prevent duplicated usage
Created CPSValidator interface in persistence layer
Removed unnecessary tests
Refactored misplaced tests
Copyright fixes
Copyright Check Script output formatting fix
Issue-ID: CPS-1228
Signed-off-by: lukegleeson <luke.gleeson@est.tech>
Change-Id: I4c99a51870e7d3b8e416bc1f909aeed5dc3baa42
|
|
Build was failing locally for me with development applications open (intellij, chrome, etc...)
After discussion with Toine we are prioritising performance test pipeline with suggested increase from 3.5 seconds to 6 seconds.
Issue-ID: CPS-1171
Signed-off-by: lukegleeson <luke.gleeson@est.tech>
Change-Id: I335fda7ba19b1fb8f4aa543833df65de26d9ccc3
|