-
Improvement
-
Resolution: Unresolved
-
Medium
-
None
-
None
When new list elements are inserted via Restconf/Netconf (topology connected device) each list element is processed in a separate edit-config request causing significant performance impact.
For example if there is PUT of a new element with insert=first into a list of 10 items, then there will be 1 (`replace` for new item) + 10 * 2 (`remove` + `replace` for each earlier item) = 21 netconf requests as a part of single restconf transaction.
See NetconfRestconfTransaction.java -> createImpl() and replaceImpl() methods,
removeImpl() and deleteImpl() expected to be updated via NETCONF-1177
It seems reasonable to move list recognition (and conversion into multiple elements within same request) to NetconfDataTreeService implementation (netconf-client-mdsal) -> see AbstractNetconfDataTreeService
Alternatively or in addition the NetconfDataTreeService API can be extended to accept multiple data nodes, not single node per request.
The NetconfRestconfTransaction to be adjusted accordingly
- relates to
-
NETCONF-1177 PUT requests failing with "insert" query parameter on testool models
- Confirmed