TogNMINotifications within fillOnds throws an error while requesting the path '/'
Querying all paths via gnmi results in an error.
Description
When requesting all paths via gosdn to a gnmi capable target and using gosdnc, an error is thrown because there are types which cannot be converted to gNMI notifications using ygot.TogNMINotifications.
Expected Behavior
Actual Behavior
An error is thrown:
INFO[0000] <nil> rpc error: code = Aborted desc = rpc error: code = Aborted desc = can't append path element key: cannot convert type struct to a string for use in a key: {BGP BGP}, can't append path element key: cannot convert type struct to a string for use in a key: {PIM PIM}, can't append path element key: cannot convert type struct to a string for use in a key: {DIRECTLY_CONNECTED DIRECTLY_CONNECTED}, can't append path element key: cannot convert type struct to a string for use in a key: {DIRECTLY_CONNECTED IPV4}, can't append path element key: cannot convert type struct to a string for use in a key: {DIRECTLY_CONNECTED IPV6}, unimplemented: keyless list cannot be output: &{[network-instances network-instance default vlans vlan 1 members member] [] false}
Possible Fix
With regard to this subject, there is already an issue: https://github.com/openconfig/ygot/issues/611. The suggestions there could be implemented in a fork and lead to a suitable solution.
Steps to Reproduce
- Request path:
/
via gosdnc - Now the error should be thrown
Context
It did not allow me to request all paths of an OND.
Your Environment
- Version used:
- Environment name and version (e.g. go v1.16.3 on FreeBSD 13.0-current):
- Server type and version:
- Operating System and version: