<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 20:54:36 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-891] LeafRefValidatation can&apos;t find target node for relative refs defined in external grouping</title>
                <link>https://jira.opendaylight.org/browse/YANGTOOLS-891</link>
                <project id="10188" key="YANGTOOLS">yangtools</project>
                    <description>&lt;p&gt;LeafRefPatch is built using namespace of the module which contains leafref.&lt;br/&gt;
 Such approach probably originates from --&lt;del&gt;&lt;a href=&quot;https://jira.opendaylight.org/browse/YANGTOOLS-749&quot; title=&quot;Unable to create LeafRefContext for leafref from different model imported with different than default prefix&quot; class=&quot;issue-link&quot; data-issue-key=&quot;YANGTOOLS-749&quot;&gt;&lt;del&gt;YANGTOOLS-749&lt;/del&gt;&lt;/a&gt;&lt;/del&gt;--, but fails 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;
org.opendaylight.yangtools.yang.data.impl.leafref.LeafRefDataValidationFailedException:
Invalid leafref value
[...]
allowed values []
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;for uscase as simple as:&lt;/p&gt;

&lt;p&gt;&lt;b&gt;bar.yang:&lt;/b&gt;&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;
    grouping grouping-with-list {
        list list-in-grouping {
            key &lt;span class=&quot;code-quote&quot;&gt;&quot;name&quot;&lt;/span&gt;;
            leaf name {
                type leafref {
                    path &lt;span class=&quot;code-quote&quot;&gt;&quot;../container-in-list/name&quot;&lt;/span&gt;;
                }
            }
            container container-in-list {
                leaf name {
                    type string;
                }
            }
        }
    }
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;&lt;b&gt;foo.yang:&lt;/b&gt;&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;
    container foo-top {
        uses bar:grouping-with-list;
    }
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</description>
                <environment></environment>
        <key id="30370">YANGTOOLS-891</key>
            <summary>LeafRefValidatation can&apos;t find target node for relative refs defined in external grouping</summary>
                <type id="10104" iconUrl="https://jira.opendaylight.org/secure/viewavatar?size=xsmall&amp;avatarId=10303&amp;avatarType=issuetype">Bug</type>
                                            <priority id="3" iconUrl="https://jira.opendaylight.org/images/icons/priorities/major.svg">Medium</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="mgradzki">Marek Gradzki</assignee>
                                    <reporter username="mgradzki">Marek Gradzki</reporter>
                        <labels>
                    </labels>
                <created>Tue, 24 Jul 2018 12:34:05 +0000</created>
                <updated>Thu, 16 Aug 2018 14:31:26 +0000</updated>
                            <resolved>Thu, 2 Aug 2018 08:50:18 +0000</resolved>
                                    <version>2.0.9</version>
                                    <fixVersion>2.0.10</fixVersion>
                    <fixVersion>2.0.6.2</fixVersion>
                                        <due></due>
                            <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="64172" author="mgradzki@cisco.com" created="Tue, 24 Jul 2018 12:36:54 +0000"  >&lt;p&gt;Failing unit test (HC):&lt;br/&gt;
&lt;a href=&quot;https://gerrit.fd.io/r/#/c/13292/2/infra/bgp-distribution-test/src/test/java/io/fd/honeycomb/infra/bgp/distro/BgpDistributionTest.java&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://gerrit.fd.io/r/#/c/13292/2/infra/bgp-distribution-test/src/test/java/io/fd/honeycomb/infra/bgp/distro/BgpDistributionTest.java&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="64174" author="mgradzki@cisco.com" created="Tue, 24 Jul 2018 13:01:58 +0000"  >&lt;p&gt;It looks like LeafRefValidatation wrongly computes absolute schema node identifier:&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;
[...]
(urn:opendaylight:params:xml:ns:yang:bgp:openconfig-extensions?revision=Optional[2017-12-07])afi-safi/
(http:&lt;span class=&quot;code-comment&quot;&gt;//openconfig.net/yang/bgp-multiprotocol?revision=Optional[2015-10-09])config/
&lt;/span&gt;(http:&lt;span class=&quot;code-comment&quot;&gt;//openconfig.net/yang/bgp-multiprotocol?revision=Optional[2015-10-09])afi-safi-name&lt;/span&gt;
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;for the following augment:&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;
    augment /netinst:network-instances/netinst:network-instance/netinst:protocols/netinst:protocol {
        uses openconfig-bgp:bgp-top {
            augment bgp/neighbors/neighbor/afi-safis/afi-safi {
                uses openconfig-bgp:bgp-neighbor-add-paths_config;
            }
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;But according to the &lt;a href=&quot;https://tools.ietf.org/html/rfc7950#section-7.13:&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://tools.ietf.org/html/rfc7950#section-7.13:&lt;/a&gt;&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;The identifiers defined in the grouping are not bound to a namespace
until the contents of the grouping are added to the schema tree via a
&quot;uses&quot; statement that does not appear inside a &quot;grouping&quot; statement,
at which point they are bound to the namespace of the current module.
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;So correct path should be:&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;
[...]
(urn:opendaylight:params:xml:ns:yang:bgp:openconfig-extensions?revision=Optional[2017-12-07])afi-safi/
(urn:opendaylight:params:xml:ns:yang:bgp:openconfig-extensions?revision=Optional[2017-12-07])config/
(urn:opendaylight:params:xml:ns:yang:bgp:openconfig-extensions?revision=Optional[2017-12-07])afi-safi-name
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</comment>
                            <comment id="64305" author="rovarga" created="Fri, 27 Jul 2018 19:11:03 +0000"  >&lt;p&gt;Looks legit.&lt;/p&gt;</comment>
                            <comment id="64402" author="mgradzki@cisco.com" created="Mon, 30 Jul 2018 08:48:55 +0000"  >&lt;p&gt;Looks like LeafRefPatch is built using namespace of the module which contains leafref.&lt;br/&gt;
 Such approach probably originates from &lt;del&gt;&lt;a href=&quot;https://jira.opendaylight.org/browse/YANGTOOLS-749&quot; title=&quot;Unable to create LeafRefContext for leafref from different model imported with different than default prefix&quot; class=&quot;issue-link&quot; data-issue-key=&quot;YANGTOOLS-749&quot;&gt;&lt;del&gt;YANGTOOLS-749&lt;/del&gt;&lt;/a&gt;&lt;/del&gt;, but fails for uscase as simple as:&lt;/p&gt;

&lt;p&gt;&lt;b&gt;bar.yang:&lt;/b&gt;&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;
    grouping grouping-with-list {
        list list-in-grouping {
            key &lt;span class=&quot;code-quote&quot;&gt;&quot;name&quot;&lt;/span&gt;;
            leaf name {
                type leafref {
                    path &lt;span class=&quot;code-quote&quot;&gt;&quot;../container-in-list/name&quot;&lt;/span&gt;;
                }
            }
            container container-in-list {
                leaf name {
                    type string;
                }
            }
        }
    }
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;&lt;b&gt;foo.yang:&lt;/b&gt;&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;
    container foo-top {
        uses bar:grouping-with-list;
    }
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</comment>
                            <comment id="64403" author="mgradzki@cisco.com" created="Mon, 30 Jul 2018 09:12:11 +0000"  >&lt;p&gt;Fix for the grouping case:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://git.opendaylight.org/gerrit/#/c/74630/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/#/c/74630/&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="64404" author="mgradzki@cisco.com" created="Mon, 30 Jul 2018 09:15:38 +0000"  >&lt;p&gt;Unfortunately it does not fully fix the issue with LeafRefValidatation for the BGP data.&lt;br/&gt;
Target path is now correct, but set of allowed values is still empty:&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;
Caused by: org.opendaylight.yangtools.yang.data.impl.leafref.LeafRefDataValidationFailedException:
Invalid leafref value [(http:&lt;span class=&quot;code-comment&quot;&gt;//openconfig.net/yang/bgp-types?revision=2015-10-09)IPV4-UNICAST] allowed values [] of LEAFREF node: (urn:opendaylight:params:xml:ns:yang:bgp:openconfig-extensions?revision=2017-12-07)afi-safi-name leafRef target path: Absolute path:/(http://openconfig.net/yang/network-instance?revision=Optional[2015-10-18])network-instances/(http://openconfig.net/yang/network-instance?revision=Optional[2015-10-18])network-instance/(http://openconfig.net/yang/network-instance?revision=Optional[2015-10-18])protocols/(http://openconfig.net/yang/network-instance?revision=Optional[2015-10-18])protocol/(urn:opendaylight:params:xml:ns:yang:bgp:openconfig-extensions?revision=Optional[2017-12-07])bgp/(urn:opendaylight:params:xml:ns:yang:bgp:openconfig-extensions?revision=Optional[2017-12-07])neighbors/(urn:opendaylight:params:xml:ns:yang:bgp:openconfig-extensions?revision=Optional[2017-12-07])neighbor/(urn:opendaylight:params:xml:ns:yang:bgp:openconfig-extensions?revision=Optional[2017-12-07])afi-safis/(urn:opendaylight:params:xml:ns:yang:bgp:openconfig-extensions?revision=Optional[2017-12-07])afi-safi/(urn:opendaylight:params:xml:ns:yang:bgp:openconfig-extensions?revision=Optional[2017-12-07])config/(urn:opendaylight:params:xml:ns:yang:bgp:openconfig-extensions?revision=Optional[2017-12-07])afi-safi-name
&lt;/span&gt;&#160;&#160; &#160;at org.opendaylight.yangtools.yang.data.impl.leafref.LeafRefValidatation.validate0(LeafRefValidatation.java:86) ~[yang-data-impl-2.0.5.jar:na]
&#160;&#160; &#160;at org.opendaylight.yangtools.yang.data.impl.leafref.LeafRefValidatation.validate(LeafRefValidatation.java:60) ~[yang-data-impl-2.0.5.jar:na]
&#160;&#160; &#160;at io.fd.honeycomb.data.impl.ModifiableDataTreeManager$ConfigSnapshot.commit(ModifiableDataTreeManager.java:112) ~[data-impl-1.18.10-SNAPSHOT.jar:na]
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</comment>
                            <comment id="64449" author="rovarga" created="Tue, 31 Jul 2018 22:38:19 +0000"  >&lt;p&gt;Can you add a minimal failing test case as a patch, please?&lt;/p&gt;</comment>
                            <comment id="64455" author="mgradzki@cisco.com" created="Wed, 1 Aug 2018 08:30:26 +0000"  >&lt;p&gt;Sure, but probably no sooner than next week.&lt;/p&gt;</comment>
                            <comment id="64456" author="mgradzki@cisco.com" created="Wed, 1 Aug 2018 08:30:37 +0000"  >&lt;p&gt;FYI 74630 is self-contained in my opinion.&lt;br/&gt;
I can create another ticket for the grouping case if you want.&lt;/p&gt;</comment>
                            <comment id="64470" author="rovarga" created="Thu, 2 Aug 2018 08:49:49 +0000"  >&lt;p&gt;Yeah, please go ahead and open a new one for follow-up.&lt;/p&gt;</comment>
                            <comment id="64471" author="mgradzki@cisco.com" created="Thu, 2 Aug 2018 10:08:57 +0000"  >&lt;p&gt;Scope of the issue was reduced to the grouping case (see the updated description).&lt;/p&gt;

&lt;p&gt;Original issue was moved to &lt;a href=&quot;https://jira.opendaylight.org/browse/YANGTOOLS-892&quot; title=&quot;LeafRefValidatation can&amp;#39;t find target node afi-safi-name (bgp-openconfig-extensions@2017-12-07)&quot; class=&quot;issue-link&quot; data-issue-key=&quot;YANGTOOLS-892&quot;&gt;&lt;del&gt;YANGTOOLS-892&lt;/del&gt;&lt;/a&gt;.&lt;/p&gt;</comment>
                            <comment id="64624" author="mgradzki@cisco.com" created="Tue, 14 Aug 2018 13:47:09 +0000"  >&lt;p&gt;Somewhat simplified version of the issue (now &lt;a href=&quot;https://jira.opendaylight.org/browse/YANGTOOLS-892&quot; title=&quot;LeafRefValidatation can&amp;#39;t find target node afi-safi-name (bgp-openconfig-extensions@2017-12-07)&quot; class=&quot;issue-link&quot; data-issue-key=&quot;YANGTOOLS-892&quot;&gt;&lt;del&gt;YANGTOOLS-892&lt;/del&gt;&lt;/a&gt;) with failing test case:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://git.opendaylight.org/gerrit/#/c/75190/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/#/c/75190/&lt;/a&gt;&#160;&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10000">
                    <name>Blocks</name>
                                            <outwardlinks description="blocks">
                                        <issuelink>
            <issuekey id="30546">YANGTOOLS-892</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|i03h0f:</customfieldvalue>

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