<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 19:55:02 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>[CONTROLLER-1238] Clustering : Unable to read from datastore root with clustering enabled</title>
                <link>https://jira.opendaylight.org/browse/CONTROLLER-1238</link>
                <project id="10113" key="CONTROLLER">controller</project>
                    <description>&lt;p&gt;When reading from the datastore root(YangInstanceIdentifier.builder().build()) we get java.util.NoSuchElementException the offending line is rwTx.read(LogicalDatastoreType.OPERATIONAL, YangInstanceIdentifier.builder().build()).checkedGet();&lt;/p&gt;

&lt;p&gt;This is possible with just pure IMDS but with clustering enabled by default we get this exception.&lt;/p&gt;

&lt;p&gt;Steps to reproduce with netconf-mdsal-northbound:&lt;/p&gt;

&lt;p&gt;1) feature:install odl-restconf odl-netconf-connector-all odl-netconf-mdsal&lt;/p&gt;

&lt;p&gt;2) send a POST request to:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://127.0.0.1:8181/restconf/config/opendaylight-inventory:nodes/node/controller-config/yang-ext:mount/config:modules&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://127.0.0.1:8181/restconf/config/opendaylight-inventory:nodes/node/controller-config/yang-ext:mount/config:modules&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;with payload:&lt;/p&gt;

&lt;p&gt;&amp;lt;module xmlns=&quot;urn:opendaylight:params:xml:ns:yang:controller:config&quot;&amp;gt;&lt;br/&gt;
  &amp;lt;type xmlns:prefix=&quot;urn:opendaylight:params:xml:ns:yang:controller:md:sal:connector:netconf&quot;&amp;gt;prefix:sal-netconf-connector&amp;lt;/type&amp;gt;&lt;br/&gt;
  &amp;lt;name&amp;gt;mdsal-config&amp;lt;/name&amp;gt;&lt;br/&gt;
  &amp;lt;address xmlns=&quot;urn:opendaylight:params:xml:ns:yang:controller:md:sal:connector:netconf&quot;&amp;gt;127.0.0.1&amp;lt;/address&amp;gt;&lt;br/&gt;
  &amp;lt;port xmlns=&quot;urn:opendaylight:params:xml:ns:yang:controller:md:sal:connector:netconf&quot;&amp;gt;2830&amp;lt;/port&amp;gt;&lt;br/&gt;
  &amp;lt;username xmlns=&quot;urn:opendaylight:params:xml:ns:yang:controller:md:sal:connector:netconf&quot;&amp;gt;admin&amp;lt;/username&amp;gt;&lt;br/&gt;
  &amp;lt;password xmlns=&quot;urn:opendaylight:params:xml:ns:yang:controller:md:sal:connector:netconf&quot;&amp;gt;admin&amp;lt;/password&amp;gt;&lt;br/&gt;
  &amp;lt;tcp-only xmlns=&quot;urn:opendaylight:params:xml:ns:yang:controller:md:sal:connector:netconf&quot;&amp;gt;false&amp;lt;/tcp-only&amp;gt;&lt;br/&gt;
  &amp;lt;event-executor xmlns=&quot;urn:opendaylight:params:xml:ns:yang:controller:md:sal:connector:netconf&quot;&amp;gt;&lt;br/&gt;
    &amp;lt;type xmlns:prefix=&quot;urn:opendaylight:params:xml:ns:yang:controller:netty&quot;&amp;gt;prefix:netty-event-executor&amp;lt;/type&amp;gt;&lt;br/&gt;
    &amp;lt;name&amp;gt;global-event-executor&amp;lt;/name&amp;gt;&lt;br/&gt;
  &amp;lt;/event-executor&amp;gt;&lt;br/&gt;
  &amp;lt;binding-registry xmlns=&quot;urn:opendaylight:params:xml:ns:yang:controller:md:sal:connector:netconf&quot;&amp;gt;&lt;br/&gt;
    &amp;lt;type xmlns:prefix=&quot;urn:opendaylight:params:xml:ns:yang:controller:md:sal:binding&quot;&amp;gt;prefix:binding-broker-osgi-registry&amp;lt;/type&amp;gt;&lt;br/&gt;
    &amp;lt;name&amp;gt;binding-osgi-broker&amp;lt;/name&amp;gt;&lt;br/&gt;
  &amp;lt;/binding-registry&amp;gt;&lt;br/&gt;
  &amp;lt;dom-registry xmlns=&quot;urn:opendaylight:params:xml:ns:yang:controller:md:sal:connector:netconf&quot;&amp;gt;&lt;br/&gt;
    &amp;lt;type xmlns:prefix=&quot;urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom&quot;&amp;gt;prefix:dom-broker-osgi-registry&amp;lt;/type&amp;gt;&lt;br/&gt;
    &amp;lt;name&amp;gt;dom-broker&amp;lt;/name&amp;gt;&lt;br/&gt;
  &amp;lt;/dom-registry&amp;gt;&lt;br/&gt;
  &amp;lt;client-dispatcher xmlns=&quot;urn:opendaylight:params:xml:ns:yang:controller:md:sal:connector:netconf&quot;&amp;gt;&lt;br/&gt;
    &amp;lt;type xmlns:prefix=&quot;urn:opendaylight:params:xml:ns:yang:controller:config:netconf&quot;&amp;gt;prefix:netconf-client-dispatcher&amp;lt;/type&amp;gt;&lt;br/&gt;
    &amp;lt;name&amp;gt;global-netconf-dispatcher&amp;lt;/name&amp;gt;&lt;br/&gt;
  &amp;lt;/client-dispatcher&amp;gt;&lt;br/&gt;
  &amp;lt;processing-executor xmlns=&quot;urn:opendaylight:params:xml:ns:yang:controller:md:sal:connector:netconf&quot;&amp;gt;&lt;br/&gt;
    &amp;lt;type xmlns:prefix=&quot;urn:opendaylight:params:xml:ns:yang:controller:threadpool&quot;&amp;gt;prefix:threadpool&amp;lt;/type&amp;gt;&lt;br/&gt;
    &amp;lt;name&amp;gt;global-netconf-processing-executor&amp;lt;/name&amp;gt;&lt;br/&gt;
  &amp;lt;/processing-executor&amp;gt;&lt;br/&gt;
&amp;lt;/module&amp;gt;&lt;/p&gt;

&lt;p&gt;3) try to read data from mdsal-loopback connection: &lt;br/&gt;
 &lt;a href=&quot;http://127.0.0.1:8181/restconf/operational/network-topology:network-topology/topology/topology-netconf/node/mdsal-config/yang-ext:mount&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://127.0.0.1:8181/restconf/operational/network-topology:network-topology/topology/topology-netconf/node/mdsal-config/yang-ext:mount&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;it fails with applicationoperation-failedProblem to get data from transaction.&lt;br/&gt;
and this exception in karaf log :&lt;/p&gt;

&lt;p&gt;2015-04-07 13:30:35,379 | ERROR | oupCloseable-6-4 | NetconfOperationRouterImpl       | 220 - org.opendaylight.controller.netconf-impl - 0.3.0.SNAPSHOT | Unexpected exception during netconf operation execution&lt;br/&gt;
java.util.NoSuchElementException&lt;br/&gt;
	at com.google.common.collect.Iterators$1.next(Iterators.java:80)&lt;span class=&quot;error&quot;&gt;&amp;#91;78:com.google.guava:18.0.0&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.cluster.datastore.shardstrategy.ShardStrategyFactory.getModuleName(ShardStrategyFactory.java:47)&lt;span class=&quot;error&quot;&gt;&amp;#91;254:org.opendaylight.controller.sal-distributed-datastore:1.2.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.cluster.datastore.shardstrategy.ShardStrategyFactory.getStrategy(ShardStrategyFactory.java:36)&lt;span class=&quot;error&quot;&gt;&amp;#91;254:org.opendaylight.controller.sal-distributed-datastore:1.2.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.cluster.datastore.TransactionProxy.shardNameFromIdentifier(TransactionProxy.java:462)&lt;span class=&quot;error&quot;&gt;&amp;#91;254:org.opendaylight.controller.sal-distributed-datastore:1.2.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.cluster.datastore.TransactionProxy.getOrCreateTxFutureCallback(TransactionProxy.java:470)&lt;span class=&quot;error&quot;&gt;&amp;#91;254:org.opendaylight.controller.sal-distributed-datastore:1.2.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.cluster.datastore.TransactionProxy.read(TransactionProxy.java:259)&lt;span class=&quot;error&quot;&gt;&amp;#91;254:org.opendaylight.controller.sal-distributed-datastore:1.2.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.md.sal.dom.broker.impl.DOMForwardedReadWriteTransaction.read(DOMForwardedReadWriteTransaction.java:47)&lt;span class=&quot;error&quot;&gt;&amp;#91;229:org.opendaylight.controller.sal-broker-impl:1.2.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.netconf.mdsal.connector.ops.get.Get.handleWithNoSubsequentOperations(Get.java:56)&lt;span class=&quot;error&quot;&gt;&amp;#91;266:org.opendaylight.controller.mdsal-netconf-connector:0.3.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;/p&gt;</description>
                <environment>&lt;p&gt;Operating System: All&lt;br/&gt;
Platform: All&lt;/p&gt;</environment>
        <key id="25792">CONTROLLER-1238</key>
            <summary>Clustering : Unable to read from datastore root with clustering enabled</summary>
                <type id="10104" iconUrl="https://jira.opendaylight.org/secure/viewavatar?size=xsmall&amp;avatarId=10303&amp;avatarType=issuetype">Bug</type>
                                                <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="moraja@cisco.com">Moiz Raja</assignee>
                                    <reporter username="tcere">Tomas Cere</reporter>
                        <labels>
                    </labels>
                <created>Tue, 7 Apr 2015 11:49:45 +0000</created>
                <updated>Tue, 25 Jul 2023 08:23:59 +0000</updated>
                            <resolved>Fri, 10 Apr 2015 09:51:00 +0000</resolved>
                                                                    <component>mdsal</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="50372" author="moraja@cisco.com" created="Thu, 9 Apr 2015 05:29:17 +0000"  >&lt;p&gt;I tried reproducing this problem with restconf. When I tried adding the md-sal-config mount I got an exception.&lt;/p&gt;

&lt;p&gt;1. This is what I tried - &lt;a href=&quot;https://www.getpostman.com/collections/839d3f72912811354cc0&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://www.getpostman.com/collections/839d3f72912811354cc0&lt;/a&gt;&lt;br/&gt;
2. This is the error I got - &lt;a href=&quot;https://gist.github.com/moizr/5c602cbf3289f5467c7f&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://gist.github.com/moizr/5c602cbf3289f5467c7f&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Because of this I am not able to get to step 3 to see the problem with the datastore.&lt;/p&gt;</comment>
                            <comment id="50373" author="tcere" created="Thu, 9 Apr 2015 07:40:20 +0000"  >&lt;p&gt;Currently this is affected by &lt;a href=&quot;https://bugs.opendaylight.org/show_bug.cgi?id=2964&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://bugs.opendaylight.org/show_bug.cgi?id=2964&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Until that is fixed workaround is to post config in json and reading with xml.&lt;/p&gt;</comment>
                            <comment id="50374" author="moraja@cisco.com" created="Thu, 9 Apr 2015 10:09:04 +0000"  >&lt;p&gt;Tomas, is there an easy way for me to create the corresponding json payload or does it need to be done the hard way?&lt;/p&gt;</comment>
                            <comment id="50375" author="tcere" created="Thu, 9 Apr 2015 10:39:23 +0000"  >&lt;p&gt;(In reply to Moiz Raja from comment #3)&lt;br/&gt;
&amp;gt; Tomas, is there an easy way for me to create the corresponding json payload&lt;br/&gt;
&amp;gt; or does it need to be done the hard way?&lt;/p&gt;

&lt;p&gt;Here you go:&lt;/p&gt;

&lt;p&gt;{   &lt;br/&gt;
  &quot;config:module&quot;:&lt;br/&gt;
 {&lt;br/&gt;
  &quot;type&quot;: &quot;odl-sal-netconf-connector-cfg:sal-netconf-connector&quot;,&lt;br/&gt;
  &quot;name&quot;: &quot;mdsal-config&quot;,&lt;br/&gt;
  &quot;odl-sal-netconf-connector-cfg:password&quot;: &quot;admin&quot;,&lt;br/&gt;
  &quot;odl-sal-netconf-connector-cfg:tcp-only&quot;: false,&lt;br/&gt;
  &quot;odl-sal-netconf-connector-cfg:binding-registry&quot;: &lt;/p&gt;
{
    &quot;type&quot;: &quot;opendaylight-md-sal-binding:binding-broker-osgi-registry&quot;,
    &quot;name&quot;: &quot;binding-osgi-broker&quot;
  }
&lt;p&gt;,&lt;br/&gt;
  &quot;odl-sal-netconf-connector-cfg:between-attempts-timeout-millis&quot;: 2000,&lt;br/&gt;
  &quot;odl-sal-netconf-connector-cfg:processing-executor&quot;: &lt;/p&gt;
{
    &quot;type&quot;: &quot;threadpool:threadpool&quot;,
    &quot;name&quot;: &quot;global-netconf-processing-executor&quot;
  }
&lt;p&gt;,&lt;br/&gt;
  &quot;odl-sal-netconf-connector-cfg:max-connection-attempts&quot;: 0,&lt;br/&gt;
  &quot;odl-sal-netconf-connector-cfg:sleep-factor&quot;: 1.5,&lt;br/&gt;
  &quot;odl-sal-netconf-connector-cfg:client-dispatcher&quot;: &lt;/p&gt;
{
    &quot;type&quot;: &quot;odl-netconf-cfg:netconf-client-dispatcher&quot;,
    &quot;name&quot;: &quot;global-netconf-dispatcher&quot;
  }
&lt;p&gt;,&lt;br/&gt;
  &quot;odl-sal-netconf-connector-cfg:username&quot;: &quot;admin&quot;,&lt;br/&gt;
  &quot;odl-sal-netconf-connector-cfg:address&quot;: &quot;127.0.0.1&quot;,&lt;br/&gt;
  &quot;odl-sal-netconf-connector-cfg:dom-registry&quot;: &lt;/p&gt;
{
    &quot;type&quot;: &quot;opendaylight-md-sal-dom:dom-broker-osgi-registry&quot;,
    &quot;name&quot;: &quot;dom-broker&quot;
  }
&lt;p&gt;,&lt;br/&gt;
  &quot;odl-sal-netconf-connector-cfg:port&quot;: 2830,&lt;br/&gt;
  &quot;odl-sal-netconf-connector-cfg:event-executor&quot;: &lt;/p&gt;
{
    &quot;type&quot;: &quot;netty:netty-event-executor&quot;,
    &quot;name&quot;: &quot;global-event-executor&quot;
  }
&lt;p&gt;,&lt;br/&gt;
  &quot;odl-sal-netconf-connector-cfg:connection-timeout-millis&quot;: 20000&lt;br/&gt;
 }&lt;br/&gt;
}&lt;/p&gt;</comment>
                            <comment id="50376" author="moraja@cisco.com" created="Thu, 9 Apr 2015 10:59:56 +0000"  >&lt;p&gt;Thanks Tomas! That worked.&lt;/p&gt;</comment>
                            <comment id="50377" author="moraja@cisco.com" created="Thu, 9 Apr 2015 17:57:56 +0000"  >&lt;p&gt;&lt;a href=&quot;https://git.opendaylight.org/gerrit/18050&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/18050&lt;/a&gt;&lt;/p&gt;</comment>
                    </comments>
                    <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_10208" key="com.atlassian.jira.plugin.system.customfieldtypes:textfield">
                        <customfieldname>External issue ID</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2953</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10201" key="com.atlassian.jira.plugin.system.customfieldtypes:url">
                        <customfieldname>External issue URL</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue><![CDATA[https://bugs.opendaylight.org/show_bug.cgi?id=2953]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_10206" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Issue Type</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10300"><![CDATA[Bug]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_10204" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>ODL SR Target Milestone</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10315"><![CDATA[Lithium]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                        <customfield id="customfield_10202" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Priority</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10313"><![CDATA[Highest]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10000" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|i02pc7:</customfieldvalue>

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