YANG key list and unique fixes

* Fixed: YANG key list check bad performance
  * List key check did unique "xpath" lookup instead of direct child traverse
* Fixed: YANG unique single schema-nodeid required "canonical" namespace
  * E.g., `a/b` did not work even if there was default namespace in XML
* Memory leak in xpath parser
This commit is contained in:
Olof hagsand 2022-04-17 10:34:55 +02:00
parent 580396d32f
commit feec3a21d9
3 changed files with 97 additions and 64 deletions

View file

@ -86,6 +86,13 @@ Users may have to change how they access the system
### Corrected Bugs
* Fixed: YANG key list check bad performance
* List key check did unique "xpath" lookup instead of direct child traverse
* Fixed: YANG unique single schema-nodeid required "canonical" namespace
* E.g., `a/b` did not work even if there was default namespace in XML
* Disabled xpath optimization for hierarchical list
* When `XPATH_LIST_OPTIMIZE` is set, patterns like `y[k='3']` is optimized
* But hierarchical lists should not be, ie when `a/y[k='3']` and `a` is a list
* Fixed: Removed warning at startup: `No YANG spec for module-set`
* Fixed: HTTP/1 multiple write requests in single session appended data between writes, eg PUT+PUT.
* Fixed: [Broken pipe error seen in client (cli) when backend restarts and CLICON_SOCK is recreated](https://github.com/clicon/clixon/issues/312)
@ -168,9 +175,6 @@ Users may have to change how they access the system
### Corrected Bugs
* Disabled xpath optimization for hierarchical list
* When `XPATH_LIST_OPTIMIZE` is set, patterns like `y[k='3']` is optimized
* But hierarchical lists should not be, ie when `a/y[k='3']` and `a` is a list
* Fixed: [Validate error when appending module B grouping to module A item use augment statement #308](https://github.com/clicon/clixon/issues/308)
* Fixed: [Restconf PATCH method request failed on item defined by submodule #306](https://github.com/clicon/clixon/issues/306)
* Fixed: [restconf GET json response does not encode top level node with namespace as per rfc #303](https://github.com/clicon/clixon/issues/303)