[CONTROLLER-1308] Netconf Operational info from netopeer gives ERROR Created: 13/May/15 Updated: 19/Oct/17 Resolved: 18/Jun/15 |
|
| Status: | Resolved |
| Project: | controller |
| Component/s: | netconf |
| Affects Version/s: | Post-Helium |
| Fix Version/s: | None |
| Type: | Bug | ||
| Reporter: | Luis Gomez | Assignee: | Maros Marsalek |
| Resolution: | Done | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Environment: |
Operating System: Linux |
||
| External issue ID: | 3191 |
| Description |
|
Issue detected in the CI automation: https://jenkins.opendaylight.org/controller/job/controller-csit-1node-cds-netconf-only-master/ To reproduce just follow the steps in this wiki to install netopeer: https://wiki.opendaylight.org/view/OpenDaylight_Controller:Config:Examples:Netconf There is 1 failure when fetching operational info from mounted device: Returns 500 Problem to get data from transaction. |
| Comments |
| Comment by Luis Gomez [ 13/May/15 ] |
|
This is working in stable/helium with inventory URIs |
| Comment by Luis Gomez [ 13/May/15 ] |
|
Karaf log is available in the jenkins link. |
| Comment by Maros Marsalek [ 18/May/15 ] |
|
The problem is: unknown child node in the payload: Unknown child(ren) node(s) detected, identified by: (http://netconfcentral.org/ns/toaster)toaster This is correct behavior in ODL since netopeer did not provide yang schema for the toaster module: 2015-05-17 00:39:46,758 | WARN | oupCloseable-6-2 | NetconfDeviceCommunicator | 171 - org.opendaylight.controller.sal-netconf-connector - 1.2.0.SNAPSHOT | RemoteDevice {netopeer}: Error reply from remote device, request: <rpc message-id="m-3" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> ... there are more schemas that could not be downloaded, not only toaster. You should configure netopeer to provide all necessary yang models. This works with helium, because helium did not contain proper data validation and used CompositeNodes. Currently, NormalizedNodes are in use and they do not allow unknown children(according to the schema) in the payload. This was essentially a bug with the old mount point APIs and the test relied on it. |
| Comment by Luis Gomez [ 18/May/15 ] |
|
Hi Maros, I can comment out the TC on Lithium but can you please update the netconf wiki with the things that currently work: https://wiki.opendaylight.org/view/OpenDaylight_Controller:Config:Examples:Netconf Thanks/Luis |
| Comment by Maros Marsalek [ 19/May/15 ] |
|
Yeah, the netopeer related stuff should probably be updated so that the installed netopeer works fine with ODL .. |
| Comment by Maros Marsalek [ 02/Jun/15 ] |
|
Quick update: Its not missing schemas in netopper after all. Its a bug in netopeer's libnetconf lib. The library cannot parse prefixed values in xml properly e.g. yang leaves with identityref type. Get-schema rpc contains an identityref leaf for input parameter format. ODL serializes identityrefs properly, but netopper cannot parse them and returns rpc-error for each attempt to download yang schemas. This xml is ok with netopper: but this one is not: Both above xmls are correct, but netopper accepts only the simpler one. What we can do: optimize identityref serialization so that the prefix is not included if not necessary (like in above case where the namespace of serialized identity is equal to namespace of parent tag). This will optimize serialized xml and also serve as a workaround for when connecting to Netopper netconf. In addition, we need to report that bug for libnetconf library. |
| Comment by Maros Marsalek [ 02/Jun/15 ] |
| Comment by Tony Tkacik [ 10/Jun/15 ] |
|
Maros could you provide link to libnetconfd bug? |
| Comment by Maros Marsalek [ 10/Jun/15 ] |