11-19-2018 04:52 PM
I am trying to run the below query against a xrv9k machine running 6.5.1:
lacp_bundle = Cisco_IOS_XR_bundlemgr_oper.LacpBundles() bundle = lacp_bundle.bundles.Bundle() bundle.bundle_interface = "Bundle-Ether1" member = bundle.members.Member() member.member_interface = YFilter.read member.bandwidth = YFilter.read bundle.data.actor_bundle_data.mac_address = YFilter.read bundle.data.actor_bundle_data.bundle_interface_name = YFilter.read bundle.data.actor_bundle_data.available_bandwidth = YFilter.red bundle.data.actor_bundle_data.available_bandwidth = YFilter.read bundle.data.actor_bundle_data.effective_bandwidth = YFilter.read bundle.data.actor_bundle_data.configured_bandwidth = YFilter.read bundle.data.actor_bundle_data.minimum_active_links = YFilter.read bundle.data.actor_bundle_data.active_member_count = YFilter.read bundle.members.member.append(member) lacp_bundle.bundles.bundle.append(bundle)
netconf rpc request to box:
<rpc xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"><get xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<filter><lacp-bundles xmlns="http://cisco.com/ns/yang/Cisco-IOS-XR-bundlemgr-oper">
<bundles>
<bundle>
<bundle-interface>Bundle-Ether1</bundle-interface>
<data>
<actor-bundle-data>
<bundle-interface-name/>
<available-bandwidth/>
<effective-bandwidth/>
<configured-bandwidth/>
<minimum-active-links/>
<active-member-count/>
</actor-bundle-data>
</data>
<members>
<member>
<member-interface/>
<bandwidth/>
</member>
</members>
</bundle>
</bundles>
</lacp-bundles></filter>
</get>
</rpc>
reply from the box:
<?xml version="1.0"?>
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="10">
<data>
<lacp-bundles xmlns="http://cisco.com/ns/yang/Cisco-IOS-XR-bundlemgr-oper">
<bundles>
<bundle>
<bundle-interface>Bundle-Ether1</bundle-interface>
<data>
<actor-bundle-data>
<bundle-interface-name>Bundle-Ether1</bundle-interface-name>
<available-bandwidth>0</available-bandwidth>
<effective-bandwidth>0</effective-bandwidth>
<configured-bandwidth>4294967295</configured-bandwidth>
<minimum-active-links>1</minimum-active-links>
<active-member-count>0</active-member-count>
</actor-bundle-data>
</data>
<members>
<member>
<member-interface>GigabitEthernet0/0/0/4</member-interface>
<bandwidth>1000000</bandwidth>
</member>
</members>
</bundle>
</bundles>
</lacp-bundles>
</data>
</rpc-reply>
YDK-PY while parsing the below output raises a parser error possibly due to multiple data items
Entity: line 15: parser error : Premature end of data in tag bundle line 4
</data>
^
Entity: line 15: parser error : Premature end of data in tag bundles line 3
</data>
^
Entity: line 15: parser error : Premature end of data in tag lacp-bundles line 2
</data>
^
Entity: line 15: parser error : Premature end of data in tag data line 1
</data>
^
Data is invalid according to the yang model. Error details: Missing closing element tag "data". Path: '/lacp-bundles/bundles/bundle/data'
Parsing failed with message Missing closing element tag "data".
The xml response seems normal to me, if i remove the data container from the netconf request, I do not get any parsing errors.
Thanks,
Mufaddal
Solved! Go to Solution.
11-20-2018 09:56 AM
I agree with you that this is a bug in YANG model. It should not use "data" as a container name, because it is name of a tag in the RPC "get" defined in ietf-netconf.yang. I have opened a bug against XR software.
Unfortunately there is no workaround for this bug as it is embedded into LACP bundle model. In the meanwhile I would suggest just not to use "data" container in YDK quires.
11-20-2018 09:56 AM
I agree with you that this is a bug in YANG model. It should not use "data" as a container name, because it is name of a tag in the RPC "get" defined in ietf-netconf.yang. I have opened a bug against XR software.
Unfortunately there is no workaround for this bug as it is embedded into LACP bundle model. In the meanwhile I would suggest just not to use "data" container in YDK quires.
11-26-2018 04:31 PM
Thanks,probably something to fix in the lacp model. Also saw this open issue with ydk-gen which mentions the same bug https://github.com/CiscoDevNet/ydk-gen/issues/799
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide