<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 20:55:28 UTC 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>OpenDaylight JIRA</title>
    <link>https://jira.opendaylight.org</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>8.20.10</version>
        <build-number>820010</build-number>
        <build-date>22-06-2022</build-date>
    </build-info>


<item>
            <title>[YANGTOOLS-1203] Improve NormalizedNode formatting capabilities</title>
                <link>https://jira.opendaylight.org/browse/YANGTOOLS-1203</link>
                <project id="10188" key="YANGTOOLS">yangtools</project>
                    <description>&lt;p&gt;In case of data tree operation errors we end up dumping the NormalizedNode involved in the operation this way:&lt;/p&gt;
&lt;div class=&quot;preformatted panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;preformattedContent panelContent&quot;&gt;
&lt;pre&gt;[pool-3-thread-5] ERROR org.opendaylight.mdsal.dom.spi.store.SnapshotBackedWriteTransaction - Tx: OPER-34, failed to write /(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)bgp-rib/rib/rib[{(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)id=test-rib}]/loc-rib/tables/tables[{(urn:ope
ndaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)afi=(urn:opendaylight:params:xml:ns:yang:bgp-types?revision=2020-01-20)ipv4-address-family, (urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)safi=(urn:opendaylight:params:xml:ns:yang:bgp-types?revision=2020-01-20)unicast-subsequent-address-fam
ily}]/(urn:opendaylight:params:xml:ns:yang:bgp-inet?revision=2018-03-29)ipv4-routes/ipv4-route/ipv4-route[{(urn:opendaylight:params:xml:ns:yang:bgp-inet?revision=2018-03-29)path-id=1, (urn:opendaylight:params:xml:ns:yang:bgp-inet?revision=2018-03-29)route-key=1.1.1.1/32}]:ImmutableMapEntryNode{identifier=(urn:opend
aylight:params:xml:ns:yang:bgp-inet?revision=2018-03-29)ipv4-route[{(urn:opendaylight:params:xml:ns:yang:bgp-inet?revision=2018-03-29)path-id=1, (urn:opendaylight:params:xml:ns:yang:bgp-inet?revision=2018-03-29)route-key=1.1.1.1/32}], value=[ImmutableLeafNode{identifier=(urn:opendaylight:params:xml:ns:yang:bgp-inet
?revision=2018-03-29)prefix, value=1.1.1.1/32}, ImmutableContainerNode{identifier=(urn:opendaylight:params:xml:ns:yang:bgp-inet?revision=2018-03-29)attributes, value=[ImmutableContainerNode{identifier=(urn:opendaylight:params:xml:ns:yang:bgp-inet?revision=2018-03-29)origin, value=[ImmutableLeafNode{identifier=(urn:
opendaylight:params:xml:ns:yang:bgp-inet?revision=2018-03-29)value, value=igp}]}, ImmutableContainerNode{identifier=(urn:opendaylight:params:xml:ns:yang:bgp-inet?revision=2018-03-29)multi-exit-disc, value=[ImmutableLeafNode{identifier=(urn:opendaylight:params:xml:ns:yang:bgp-inet?revision=2018-03-29)med, value=0}]}
, ImmutableChoiceNode{identifier=(urn:opendaylight:params:xml:ns:yang:bgp-inet?revision=2018-03-29)c-next-hop, value=[ImmutableContainerNode{identifier=(urn:opendaylight:params:xml:ns:yang:bgp-inet?revision=2018-03-29)ipv4-next-hop, value=[ImmutableLeafNode{identifier=(urn:opendaylight:params:xml:ns:yang:bgp-inet?r
evision=2018-03-29)global, value=2.2.2.2}]}]}, ImmutableContainerNode{identifier=(urn:opendaylight:params:xml:ns:yang:bgp-inet?revision=2018-03-29)local-pref, value=[ImmutableLeafNode{identifier=(urn:opendaylight:params:xml:ns:yang:bgp-inet?revision=2018-03-29)pref, value=100}]}, ImmutableContainerNode{identifier=(
urn:opendaylight:params:xml:ns:yang:bgp-inet?revision=2018-03-29)as-path, value=[]}]}, ImmutableLeafNode{identifier=(urn:opendaylight:params:xml:ns:yang:bgp-inet?revision=2018-03-29)path-id, value=1}, ImmutableLeafNode{identifier=(urn:opendaylight:params:xml:ns:yang:bgp-inet?revision=2018-03-29)route-key, value=1.1
.1.1/32}]} in MutableDataTree [modification=ModifiedNode{identifier=(urn:ietf:params:xml:ns:netconf:base:1.0)data, operation=TOUCH, childModification={(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)bgp-rib=ModifiedNode{identifier=(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)bgp
-rib, operation=TOUCH, childModification={(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)rib=ModifiedNode{identifier=(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)rib, operation=TOUCH, childModification={(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)rib[{(urn:
opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)id=test-rib}]=ModifiedNode{identifier=(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)rib[{(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)id=test-rib}], operation=TOUCH, childModification={(urn:opendaylight:params:xml:ns:
yang:bgp-rib?revision=2018-03-29)loc-rib=ModifiedNode{identifier=(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)loc-rib, operation=TOUCH, childModification={(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)tables=ModifiedNode{identifier=(urn:opendaylight:params:xml:ns:yang:bgp-rib?
revision=2018-03-29)tables, operation=TOUCH, childModification={(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)tables[{(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)afi=(urn:opendaylight:params:xml:ns:yang:bgp-types?revision=2020-01-20)ipv4-address-family, (urn:opendaylight:para
ms:xml:ns:yang:bgp-rib?revision=2018-03-29)safi=(urn:opendaylight:params:xml:ns:yang:bgp-types?revision=2020-01-20)unicast-subsequent-address-family}]=ModifiedNode{identifier=(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)tables[{(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)afi
=(urn:opendaylight:params:xml:ns:yang:bgp-types?revision=2020-01-20)ipv4-address-family, (urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)safi=(urn:opendaylight:params:xml:ns:yang:bgp-types?revision=2020-01-20)unicast-subsequent-address-family}], operation=NONE}}}}}}}}}}}}}]

org.opendaylight.yangtools.yang.data.impl.schema.tree.SchemaValidationFailedException: Child /(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)bgp-rib/rib/rib[{(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)id=test-rib}]/loc-rib/tables/tables[{(urn:opendaylight:params:xml:ns:yang:b
gp-rib?revision=2018-03-29)afi=(urn:opendaylight:params:xml:ns:yang:bgp-types?revision=2020-01-20)ipv4-address-family, (urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)safi=(urn:opendaylight:params:xml:ns:yang:bgp-types?revision=2020-01-20)unicast-subsequent-address-family}]/(urn:opendaylight:params
:xml:ns:yang:bgp-inet?revision=2018-03-29)ipv4-routes is not present in schema tree.

 &#160;&#160;&#160;at org.opendaylight.yangtools.yang.data.impl.schema.tree.InMemoryDataTreeModification.resolveModificationFor(InMemoryDataTreeModification.java:182)

 &#160;&#160;&#160;at org.opendaylight.yangtools.yang.data.impl.schema.tree.InMemoryDataTreeModification.write(InMemoryDataTreeModification.java:95)

 &#160;&#160;&#160;at org.opendaylight.mdsal.dom.spi.store.SnapshotBackedWriteTransaction.write(SnapshotBackedWriteTransaction.java:72)

 &#160;&#160;&#160;at org.opendaylight.mdsal.dom.broker.DOMForwardedWriteTransaction.put(DOMForwardedWriteTransaction.java:87)

 &#160;&#160;&#160;at org.opendaylight.mdsal.dom.spi.ForwardingDOMDataReadWriteTransaction.put(ForwardingDOMDataReadWriteTransaction.java:48)

 &#160;&#160;&#160;at org.opendaylight.protocol.bgp.rib.impl.LocRibWriter.updateLocRib(LocRibWriter.java:372)

 &#160;&#160;&#160;at org.opendaylight.protocol.bgp.rib.impl.LocRibWriter.walkThrough(LocRibWriter.java:344)

 &#160;&#160;&#160;at org.opendaylight.protocol.bgp.rib.impl.LocRibWriter.onDataTreeChanged(LocRibWriter.java:216)

 &#160;&#160;&#160;at org.opendaylight.mdsal.dom.store.inmemory.InMemoryDOMStoreTreeChangePublisher.lambda$new$0(InMemoryDOMStoreTreeChangePublisher.java:43)

 &#160;&#160;&#160;at org.opendaylight.yangtools.util.concurrent.AbstractQueuedNotificationManager.executeBatch(AbstractQueuedNotificationManager.java:88)

 &#160;&#160;&#160;at org.opendaylight.yangtools.util.concurrent.AbstractBatchingExecutor$DispatcherTask.invokeWorker(AbstractBatchingExecutor.java:305)

 &#160;&#160;&#160;at org.opendaylight.yangtools.util.concurrent.AbstractBatchingExecutor$DispatcherTask.run(AbstractBatchingExecutor.java:292)

 &#160;&#160;&#160;at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)

 &#160;&#160;&#160;at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)

 &#160;&#160;&#160;at java.base/java.lang.Thread.run(Thread.java:834)


&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;which does contain a lot of information, but it is in a very unfriendly format.&lt;/p&gt;

&lt;p&gt;Improve NormalizedNode with:&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;
&lt;span class=&quot;code-keyword&quot;&gt;interface&lt;/span&gt; NormalizedNode {
   Supplier&amp;lt;&lt;span class=&quot;code-object&quot;&gt;String&lt;/span&gt;&amp;gt; prettyTree();
}
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;which will return a memoizing supplier:&lt;/p&gt;
&lt;div class=&quot;preformatted panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;preformattedContent panelContent&quot;&gt;
&lt;pre&gt;final class NormalizedNodePrettyTree implements Supplier&amp;lt;String&amp;gt; {
   private @Nullable String str;

    // Lazy init, etc.
   
    @Override
    public String toString() {
        return get();
    }
}&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;The resulting string should be very similar to what NormalizedNodes.toStringTree() does, except it needs to print augmentations (as a list of single-namespace nodes) and omit namespaces only when unnecessary.&lt;/p&gt;</description>
                <environment></environment>
        <key id="33710">YANGTOOLS-1203</key>
            <summary>Improve NormalizedNode formatting capabilities</summary>
                <type id="10100" iconUrl="https://jira.opendaylight.org/secure/viewavatar?size=xsmall&amp;avatarId=10310&amp;avatarType=issuetype">Improvement</type>
                                            <priority id="2" iconUrl="https://jira.opendaylight.org/images/icons/priorities/critical.svg">High</priority>
                        <status id="5" iconUrl="https://jira.opendaylight.org/images/icons/statuses/resolved.png" description="A resolution has been taken, and it is awaiting verification by reporter. From here issues are either reopened, or are closed.">Resolved</status>
                    <statusCategory id="3" key="done" colorName="green"/>
                                    <resolution id="10000">Done</resolution>
                                        <assignee username="ivanhrasko">Ivan Hrasko</assignee>
                                    <reporter username="rovarga">Robert Varga</reporter>
                        <labels>
                            <label>pt</label>
                    </labels>
                <created>Fri, 1 Jan 2021 14:33:52 +0000</created>
                <updated>Sun, 25 Apr 2021 08:36:28 +0000</updated>
                            <resolved>Sun, 25 Apr 2021 08:36:28 +0000</resolved>
                                                    <fixVersion>7.0.0</fixVersion>
                                    <component>data-impl</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="68920" author="rovarga" created="Fri, 1 Jan 2021 15:54:37 +0000"  >&lt;p&gt;The NormalizedNode portion should roughly follow this pattern:&lt;/p&gt;
&lt;div class=&quot;preformatted panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;preformattedContent panelContent&quot;&gt;
&lt;pre&gt;ImmutableMapEntryNode{
 &#160;&#160;&#160;identifier=(urn:opendaylight:params:xml:ns:yang:bgp-inet?revision=2018-03-29)ipv4-route[{(urn:opendaylight:params:xml:ns:yang:bgp-inet?revision=2018-03-29)path-id=1, (urn:opendaylight:params:xml:ns:yang:bgp-inet?revision=2018-03-29)route-key=1.1.1.1/32}], value=[
 &#160;&#160;&#160;&#160;&#160;&#160;&#160;ImmutableLeafNode{identifier=(urn:opendaylight:params:xml:ns:yang:bgp-inet?revision=2018-03-29)prefix, value=1.1.1.1/32},
 &#160;&#160;&#160;&#160;&#160;&#160;&#160;ImmutableContainerNode{identifier=(urn:opendaylight:params:xml:ns:yang:bgp-inet?revision=2018-03-29)attributes, value=[
 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;ImmutableContainerNode{identifier=(urn:opendaylight:params:xml:ns:yang:bgp-inet?revision=2018-03-29)origin, value=[
 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;ImmutableLeafNode{identifier=(urn:opendaylight:params:xml:ns:yang:bgp-inet?revision=2018-03-29)value, value=igp}]},
 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;ImmutableContainerNode{identifier=(urn:opendaylight:params:xml:ns:yang:bgp-inet?revision=2018-03-29)multi-exit-disc, value=[
 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;ImmutableLeafNode{identifier=(urn:opendaylight:params:xml:ns:yang:bgp-inet?revision=2018-03-29)med, value=0}]},
 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;ImmutableChoiceNode{identifier=(urn:opendaylight:params:xml:ns:yang:bgp-inet?revision=2018-03-29)c-next-hop, value=[
 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;ImmutableContainerNode{identifier=(urn:opendaylight:params:xml:ns:yang:bgp-inet?revision=2018-03-29)ipv4-next-hop, value=[
 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;ImmutableLeafNode{identifier=(urn:opendaylight:params:xml:ns:yang:bgp-inet?revision=2018-03-29)global, value=2.2.2.2}]}]},
 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;ImmutableContainerNode{identifier=(urn:opendaylight:params:xml:ns:yang:bgp-inet?revision=2018-03-29)local-pref, value=[
 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;ImmutableLeafNode{identifier=(urn:opendaylight:params:xml:ns:yang:bgp-inet?revision=2018-03-29)pref, value=100}]},
 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;ImmutableContainerNode{identifier=(urn:opendaylight:params:xml:ns:yang:bgp-inet?revision=2018-03-29)as-path, value=[]}]},
 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;ImmutableLeafNode{identifier=(urn:opendaylight:params:xml:ns:yang:bgp-inet?revision=2018-03-29)path-id, value=1},
 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;ImmutableLeafNode{identifier=(urn:opendaylight:params:xml:ns:yang:bgp-inet?revision=2018-03-29)route-key, value=1.1.1.1/32}]}

&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;but improve on naming (mapEntry instead of ImmutableMapEntry) and namespace compression (i.e. inherit from parent, including predicate names).&lt;/p&gt;</comment>
                            <comment id="68921" author="rovarga" created="Sat, 2 Jan 2021 19:05:36 +0000"  >&lt;p&gt;While we&apos;re a it, the MutableDataTree portion should roughly follow this pattern:&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;
&lt;div class=&quot;preformatted panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;preformattedContent panelContent&quot;&gt;
&lt;pre&gt;MutableDataTree [
 &#160;&#160;&#160;modification=ModifiedNode{
 &#160;&#160;&#160;&#160;&#160;&#160;&#160;identifier=(urn:ietf:params:xml:ns:netconf:base:1.0)data, operation=TOUCH, childModification={
 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)bgp-rib=ModifiedNode{
 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;identifier=(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)bgp-rib, operation=TOUCH, childModification={
 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)rib=ModifiedNode{
 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;identifier=(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)rib, operation=TOUCH, childModification={
 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)rib[{(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)id=test-rib}]=ModifiedNode{
 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;identifier=(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)rib[{(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)id=test-rib}], operation=TOUCH, childModification={
 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)loc-rib=ModifiedNode{
 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;identifier=(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)loc-rib, operation=TOUCH, childModification={
 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)tables=ModifiedNode{
 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;identifier=(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)tables, operation=TOUCH, childModification={
 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)tables[{
 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)afi=(urn:opendaylight:params:xml:ns:yang:bgp-types?revision=2020-01-20)ipv4-address-family,
 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)safi=(urn:opendaylight:params:xml:ns:yang:bgp-types?revision=2020-01-20)unicast-subsequent-address-family}]=ModifiedNode{
 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;identifier=(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)tables[{
 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)afi=(urn:opendaylight:params:xml:ns:yang:bgp-types?revision=2020-01-20)ipv4-address-family,
 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(urn:opendaylight:params:xml:ns:yang:bgp-rib?revision=2018-03-29)safi=(urn:opendaylight:params:xml:ns:yang:bgp-types?revision=2020-01-20)unicast-subsequent-address-family}], operation=NONE}}}}}}}}}}}}}]
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;but obviously needs to deal with namespace compression.&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10300">
                    <name>Issue split</name>
                                            <outwardlinks description="split to">
                                        <issuelink>
            <issuekey id="33926">YANGTOOLS-1280</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                            <customfield id="customfield_11400" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10000" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|i03wof:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                </customfields>
    </item>
</channel>
</rss>