<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 20:15:23 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>[NETCONF-581] restconf to netconf translation doesn&apos;t honor the order of the keys for lists with multiple keys</title>
                <link>https://jira.opendaylight.org/browse/NETCONF-581</link>
                <project id="10142" key="NETCONF">netconf</project>
                    <description>&lt;p&gt;Yang snippet of my device:&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;module ibn { 
  namespace &quot;http://www.nokia.com/management-solutions/ibn&quot;;
  prefix &quot;ibn&quot;;
  import ietf-yang-types { prefix yang; }
  import ibn-administration { prefix ibn-administration; }

  organization &quot;Nokia&quot;;
  revision &quot;2017-11-28&quot; {

    description &quot;Initial version.&quot;;
    reference &quot;ibn&quot;;
  }
 
  container ibn {
    list intent {
      key &quot;target intent-type&quot;;
      leaf target {
        type string {
          length &quot;1..300&quot;;
        }
        mandatory true;
        description &quot;Uniquely identifies an intent within an intent-type&quot;;
      }
      leaf intent-type {
        type leafref {
          path &quot;/ibn-administration:ibn-administration/ibn-administration:intent-type-catalog&quot;
             + &quot;/ibn-administration:intent-type/ibn-administration:name&quot;;
        }
        mandatory true;
        description &quot;Name of the intent type&quot;;
      }
[...]&#160;
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;So we have a list of intents with two keys.&lt;/p&gt;

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

&lt;p&gt;When I create an entity through the ODL restconf API I pass the following body:&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;{
  &quot;intent&quot;:
  {
    &quot;target&quot;: &quot;test4&quot;,
    &quot;intent-type&quot;: &quot;sddpu-cfas-h-infra&quot;,
    &quot;configuration&quot;: {
      &quot;sddpu-cfas-h-infra:sddpu-cfas-h-infra&quot;: {
      &quot;mcast-network-vlan&quot;: 1002
    }
  },
  &quot;sync-directly&quot;: false,
  &quot;intent-type-version&quot; : 1
  }
}&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;However what comes out is:&lt;/p&gt;

&lt;p&gt;&#160;&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;
&amp;lt;rpc message-id=&lt;span class=&quot;code-quote&quot;&gt;&quot;m-19&quot;&lt;/span&gt; xmlns=&lt;span class=&quot;code-quote&quot;&gt;&quot;urn:ietf:params:xml:ns:netconf:base:1.0&quot;&lt;/span&gt;&amp;gt;
 &amp;lt;edit-config&amp;gt;
 &amp;lt;target&amp;gt;
 &amp;lt;running/&amp;gt;
 &amp;lt;/target&amp;gt;
 &amp;lt;error-option&amp;gt;rollback-on-error&amp;lt;/error-option&amp;gt;
 &amp;lt;config&amp;gt;
 &amp;lt;ibn xmlns=&lt;span class=&quot;code-quote&quot;&gt;&quot;http:&lt;span class=&quot;code-comment&quot;&gt;//www.nokia.com/management-solutions/ibn&quot;&lt;/span&gt;&amp;gt;
&lt;/span&gt; &amp;lt;intent xmlns:a=&lt;span class=&quot;code-quote&quot;&gt;&quot;urn:ietf:params:xml:ns:netconf:base:1.0&quot;&lt;/span&gt; a:operation=&lt;span class=&quot;code-quote&quot;&gt;&quot;replace&quot;&lt;/span&gt;&amp;gt;
 &amp;lt;intent-type&amp;gt;sddpu-cfas-h-infra&amp;lt;/intent-type&amp;gt;
 &amp;lt;target&amp;gt;test4&amp;lt;/target&amp;gt;
 &amp;lt;sync-directly&amp;gt;&lt;span class=&quot;code-keyword&quot;&gt;false&lt;/span&gt;&amp;lt;/sync-directly&amp;gt;
 &amp;lt;configuration&amp;gt;
 &amp;lt;sddpu-cfas-h-infra xmlns=&lt;span class=&quot;code-quote&quot;&gt;&quot;http:&lt;span class=&quot;code-comment&quot;&gt;//www.nokia.com/management-solutions/sddpu-cfas-h-infra&quot;&lt;/span&gt;&amp;gt;
&lt;/span&gt; &amp;lt;mcast-network-vlan&amp;gt;1002&amp;lt;/mcast-network-vlan&amp;gt;
 &amp;lt;/sddpu-cfas-h-infra&amp;gt;
 &amp;lt;/configuration&amp;gt;
 &amp;lt;intent-type-version&amp;gt;1&amp;lt;/intent-type-version&amp;gt;
 &amp;lt;/intent&amp;gt;
 &amp;lt;/ibn&amp;gt;
 &amp;lt;/config&amp;gt;
 &amp;lt;/edit-config&amp;gt;
 &amp;lt;/rpc&amp;gt;
 , response: &amp;lt;rpc-reply xmlns=&lt;span class=&quot;code-quote&quot;&gt;&quot;urn:ietf:params:xml:ns:netconf:base:1.0&quot;&lt;/span&gt; message-id=&lt;span class=&quot;code-quote&quot;&gt;&quot;m-19&quot;&lt;/span&gt;&amp;gt;
 &amp;lt;rpc-error&amp;gt;
 &amp;lt;error-type&amp;gt;application&amp;lt;/error-type&amp;gt;
 &amp;lt;error-tag&amp;gt;missing-element&amp;lt;/error-tag&amp;gt;
 &amp;lt;error-severity&amp;gt;error&amp;lt;/error-severity&amp;gt;
 &amp;lt;error-path xmlns:ibn=&lt;span class=&quot;code-quote&quot;&gt;&quot;http:&lt;span class=&quot;code-comment&quot;&gt;//www.nokia.com/management-solutions/ibn&quot;&lt;/span&gt;&amp;gt;/ibn:ibn/ibn:intent[ibn:intent-type=&lt;span class=&quot;code-quote&quot;&gt;&apos;sddpu-cfas-h-infra&apos;&lt;/span&gt;][ibn:target=&lt;span class=&quot;code-quote&quot;&gt;&apos;test4&apos;&lt;/span&gt;]&amp;lt;/error-path&amp;gt;
&lt;/span&gt; &amp;lt;error-message&amp;gt;Expected list key(s) [target, intent-type] is not placed in the proper location in the message&amp;lt;/error-message&amp;gt;
 &amp;lt;error-info&amp;gt;
 &amp;lt;bad-element&amp;gt;target&amp;lt;/bad-element&amp;gt;
 &amp;lt;bad-element&amp;gt;intent-type&amp;lt;/bad-element&amp;gt;
 &amp;lt;/error-info&amp;gt;
 &amp;lt;/rpc-error&amp;gt;
 &amp;lt;/rpc-reply&amp;gt;&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;So the keys are swapped&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;</description>
                <environment></environment>
        <key id="31017">NETCONF-581</key>
            <summary>restconf to netconf translation doesn&apos;t honor the order of the keys for lists with multiple keys</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="10002">Duplicate</resolution>
                                        <assignee username="svanhoof">Steven Van Hoof</assignee>
                                    <reporter username="svanhoof">Steven Van Hoof</reporter>
                        <labels>
                    </labels>
                <created>Tue, 13 Nov 2018 13:18:37 +0000</created>
                <updated>Thu, 26 Dec 2019 17:36:26 +0000</updated>
                            <resolved>Thu, 26 Dec 2019 17:28:13 +0000</resolved>
                                                    <fixVersion>Neon SR3</fixVersion>
                    <fixVersion>Magnesium</fixVersion>
                    <fixVersion>Sodium SR2</fixVersion>
                                    <component>netconf</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>4</watches>
                                                                                                                <comments>
                            <comment id="67553" author="jluhrsen" created="Tue, 10 Dec 2019 18:13:35 +0000"  >&lt;p&gt;for completeness copy/paste from an email request that hit netconf-dev alias from kowsalyasaravanan@gmail.com :&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;
Hi Steven,
We need some additional information/steps to reproduce the issue NETCONF-581. We are planning to include the given yang that contains list with two keys in sodium and trying to reproduce it. Please let us know &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; there is any other way to reproduce it.
Thanks
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</comment>
                            <comment id="67556" author="rovarga" created="Wed, 11 Dec 2019 22:15:01 +0000"  >&lt;p&gt;Also, which version is this encountered with? It smells related to &lt;a href=&quot;https://jira.opendaylight.org/browse/YANGTOOLS-1037&quot; class=&quot;external-link&quot; rel=&quot;nofollow&quot;&gt;https://jira.opendaylight.org/browse/YANGTOOLS-1037&lt;/a&gt; ...&lt;/p&gt;</comment>
                            <comment id="67558" author="kowsalyachandru" created="Mon, 16 Dec 2019 09:46:40 +0000"  >&lt;p&gt;This issue is similar to &lt;a href=&quot;https://jira.opendaylight.org/browse/YANGTOOLS-1037&quot; title=&quot;Mis-ordered keyed list children in NETCONF requests&quot; class=&quot;issue-link&quot; data-issue-key=&quot;YANGTOOLS-1037&quot;&gt;&lt;del&gt;YANGTOOLS-1037&lt;/del&gt;&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;In &lt;a href=&quot;https://jira.opendaylight.org/browse/YANGTOOLS-1037&quot; title=&quot;Mis-ordered keyed list children in NETCONF requests&quot; class=&quot;issue-link&quot; data-issue-key=&quot;YANGTOOLS-1037&quot;&gt;&lt;del&gt;YANGTOOLS-1037&lt;/del&gt;&lt;/a&gt;, tenant-id to be encoded first rather than access-control-list-id as per key order defined in yang. Device throwing error during delete operation:&lt;br/&gt;
In &lt;a href=&quot;https://jira.opendaylight.org/browse/NETCONF-581&quot; title=&quot;restconf to netconf translation doesn&amp;#39;t honor the order of the keys for lists with multiple keys&quot; class=&quot;issue-link&quot; data-issue-key=&quot;NETCONF-581&quot;&gt;&lt;del&gt;NETCONF-581&lt;/del&gt;&lt;/a&gt;, target to be encoded first rather than the intent-type as per key defined in yang. Device throwing error during replace operation. &lt;br/&gt;
In &lt;a href=&quot;https://jira.opendaylight.org/browse/YANGTOOLS-1037&quot; title=&quot;Mis-ordered keyed list children in NETCONF requests&quot; class=&quot;issue-link&quot; data-issue-key=&quot;YANGTOOLS-1037&quot;&gt;&lt;del&gt;YANGTOOLS-1037&lt;/del&gt;&lt;/a&gt;, already the logic has been modified to recreate the NodeIdentifierWithPredicates if the provided order doesn&apos;t match it.&lt;br/&gt;
ImmutableOffsetMap is used which is guaranteed to be taken as-is. This seems to be a duplicate one.&lt;br/&gt;
Robert - Please review and provide your feedback on this.&#160;&lt;/p&gt;</comment>
                            <comment id="67593" author="rovarga" created="Thu, 26 Dec 2019 17:36:26 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.opendaylight.org/secure/ViewProfile.jspa?name=svanhoof&quot; class=&quot;user-hover&quot; rel=&quot;svanhoof&quot;&gt;svanhoof&lt;/a&gt; this looks like a duplicate of &lt;a href=&quot;https://jira.opendaylight.org/browse/YANGTOOLS-1037&quot; title=&quot;Mis-ordered keyed list children in NETCONF requests&quot; class=&quot;issue-link&quot; data-issue-key=&quot;YANGTOOLS-1037&quot;&gt;&lt;del&gt;YANGTOOLS-1037&lt;/del&gt;&lt;/a&gt; and &lt;a href=&quot;https://jira.opendaylight.org/secure/ViewProfile.jspa?name=KowsalyaChandru&quot; class=&quot;user-hover&quot; rel=&quot;KowsalyaChandru&quot;&gt;KowsalyaChandru&lt;/a&gt; &apos;s testing indicates that the issue is fixed in current snapshots (Neon SR3/Sodium SR2/Magnesium).&lt;/p&gt;

&lt;p&gt;Please confirm that is the case and if not, please reopen this issue.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10002">
                    <name>Duplicate</name>
                                            <outwardlinks description="duplicates">
                                        <issuelink>
            <issuekey id="32167">YANGTOOLS-1037</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|i03kev:</customfieldvalue>

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