<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 20:36:01 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>[OVSDB-292] Clustering: DataStoreUnavailableException when shard leader is killed</title>
                <link>https://jira.opendaylight.org/browse/OVSDB-292</link>
                <project id="10158" key="OVSDB">ovsdb</project>
                    <description>&lt;p&gt;Southbound plugin throws DataStoreUnavailableException while read transaction when shard leader node is killed. This only happens when shard leader node is killed rather then shutting it down gracefully.&lt;/p&gt;</description>
                <environment>&lt;p&gt;Operating System: All&lt;br/&gt;
Platform: All&lt;/p&gt;</environment>
        <key id="21984">OVSDB-292</key>
            <summary>Clustering: DataStoreUnavailableException when shard leader is killed</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="10003">Cannot Reproduce</resolution>
                                        <assignee username="ranjithkumar_t@hcl.com">ranjithkumar_t</assignee>
                                    <reporter username="Avishnoi">Anil Vishnoi</reporter>
                        <labels>
                    </labels>
                <created>Mon, 8 Feb 2016 19:43:38 +0000</created>
                <updated>Thu, 2 Feb 2017 20:06:21 +0000</updated>
                            <resolved>Thu, 2 Feb 2017 20:06:21 +0000</resolved>
                                    <version>unspecified</version>
                                                    <component>Clustering</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>5</watches>
                                                                                                                <comments>
                            <comment id="41271" author="vishnoianil@gmail.com" created="Tue, 9 Feb 2016 19:18:10 +0000"  >&lt;p&gt;Lowering the priority, i am not able to recreate this issue.&lt;/p&gt;</comment>
                            <comment id="41272" author="ranjithkumar_t@hcl.com" created="Thu, 7 Apr 2016 14:09:58 +0000"  >&lt;p&gt;Hi Anil,&lt;/p&gt;

&lt;p&gt;For recreating the bug the following steps are followed&lt;/p&gt;

&lt;p&gt;1.	Cloned OVSDB project and switched to stable/beryllium branch. &lt;br/&gt;
2.	The above step followed for all 3 controllers and copied the cluster configuration file.&lt;br/&gt;
3.	Installed required features for clustering and southbound plugin.&lt;br/&gt;
4.	HA happens and initial network topology is initiated in operational side&lt;/p&gt;

&lt;p&gt;The following virtual machines are used to create OVSDB 3 node clustering 10.0.0.1, 10.0.0.2, 10.0.0.3&lt;/p&gt;

&lt;p&gt;Observation : 1 ( Down Leader node 10.0.0.1) &#8211; One Node Failure&lt;/p&gt;

&lt;p&gt;1.	Leader node is 10.0.0.1 the remaining two nodes are followers.&lt;br/&gt;
2.	In 3 node cluster, If leader node goes down HA happens for another two nodes and I am not getting any exception like &#8220;DataStoreUnavailableException&#8221;.  &lt;br/&gt;
3.	There is no change in operational side.&lt;/p&gt;

&lt;p&gt;Observation : 2 ( Down Leader node 10.0.0.2) &#8211; Two Node Failure&lt;/p&gt;

&lt;p&gt;1.	Now the Leader node is 10.0.0.2 and the remaining one node is follower.&lt;br/&gt;
2.	In 2 node cluster, If leader node goes down, I am getting the exception &#8220;DataStoreUnavailableException&#8221; in operational.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://10.0.0.3:8181/restconf/operational/network-topology:network-topology/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://10.0.0.3:8181/restconf/operational/network-topology:network-topology/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;org.opendaylight.controller.md.sal.common.api.data.DataStoreUnavailableException: Shard member-3-shard-topology-operational currently has no leader. Try again later. at org.opendaylight.controller.cluster.datastore.NoOpTransactionContext.executeRead(NoOpTransactionContext.java:67) ... 23 more Caused by: org.opendaylight.controller.cluster.datastore.exceptions.NoShardLeaderException: Shard member-3-shard-topology-operational currently has no leader. Try again later. at org.opendaylight.controller.cluster.datastore.ShardManager.createNoShardLeaderException(ShardManager.java:744) at org.opendaylight.controller.cluster.datastore.ShardManager.onShardNotInitializedTimeout(ShardManager.java:551)&lt;/p&gt;

&lt;p&gt;I am not sure the singleton cluster is supported in 3 node OVSDB clustering mode.&lt;/p&gt;</comment>
                            <comment id="41273" author="jluhrsen" created="Tue, 3 May 2016 18:04:20 +0000"  >&lt;p&gt;I have tried to reproduce this with Beryllium SR2 candidate distro &lt;span class=&quot;error&quot;&gt;&amp;#91;0&amp;#93;&lt;/span&gt;.  &lt;/p&gt;


&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;3 node cluster&lt;/li&gt;
	&lt;li&gt;features: odl-jolokia, odl-ovsdb-southbound-impl-rest&lt;/li&gt;
	&lt;li&gt;mininet topo,1,3 connected and verified in operational/network-topology:network-topology/topology/ovsdb:1/&lt;/li&gt;
	&lt;li&gt;kill -9 on operational topology shard leader&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;I tried this several times, and never saw the DataStoreUnavailableException.  I did see many of&lt;br/&gt;
these IllegalStateException.&lt;/p&gt;

&lt;p&gt;2016-05-03 17:43:56,597 | INFO  | ult-dispatcher-5 | ShardManager                     | 185 - org.opendaylight.controller.sal-d&lt;br/&gt;
istributed-datastore - 1.3.2.Beryllium-SR2 | shard-manager-operational Received follower initial sync status for member-1-shard&lt;br/&gt;
-toaster-operational status sync done true&lt;br/&gt;
2016-05-03 17:43:56,600 | ERROR | ult-dispatcher-2 | SimpleShardDataTreeCohort        | 185 - org.opendaylight.controller.sal-distributed-datastore - 1.3.2.Beryllium-SR2 | Transaction failed to commit&lt;br/&gt;
java.lang.IllegalStateException: Store tree org.opendaylight.yangtools.yang.data.api.schema.tree.spi.MaterializedContainerNode@7518b3f0 and candidate base org.opendaylight.yangtools.yang.data.api.schema.tree.spi.MaterializedContainerNode@dc0cde7 differ.&lt;br/&gt;
        at org.opendaylight.yangtools.yang.data.impl.schema.tree.InMemoryDataTree.commit(InMemoryDataTree.java:119)&lt;span class=&quot;error&quot;&gt;&amp;#91;100:org.opendaylight.yangtools.yang-data-impl:0.8.2.Beryllium-SR2&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.controller.cluster.datastore.SimpleShardDataTreeCohort.commit(SimpleShardDataTreeCohort.java:106)&lt;span class=&quot;error&quot;&gt;&amp;#91;185:org.opendaylight.controller.sal-distributed-datastore:1.3.2.Beryllium-SR2&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.controller.cluster.datastore.ShardCommitCoordinator$CohortEntry.commit(ShardCommitCoordinator.java:670)&lt;span class=&quot;error&quot;&gt;&amp;#91;185:org.opendaylight.controller.sal-distributed-datastore:1.3.2.Beryllium-SR2&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.controller.cluster.datastore.Shard.finishCommit(Shard.java:351)&lt;span class=&quot;error&quot;&gt;&amp;#91;185:org.opendaylight.controller.sal-distributed-datastore:1.3.2.Beryllium-SR2&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.controller.cluster.datastore.Shard.finishCommit(Shard.java:415)&lt;span class=&quot;error&quot;&gt;&amp;#91;185:org.opendaylight.controller.sal-distributed-datastore:1.3.2.Beryllium-SR2&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.controller.cluster.datastore.Shard.applyState(Shard.java:663)&lt;span class=&quot;error&quot;&gt;&amp;#91;185:org.opendaylight.controller.sal-distributed-datastore:1.3.2.Beryllium-SR2&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.controller.cluster.raft.RaftActor.handleCommand(RaftActor.java:224)&lt;span class=&quot;error&quot;&gt;&amp;#91;182:org.opendaylight.controller.sal-akka-raft:1.3.2.Beryllium-SR2&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.controller.cluster.common.actor.AbstractUntypedPersistentActor.onReceiveCommand(AbstractUntypedPersistentActor.java:36)&lt;span class=&quot;error&quot;&gt;&amp;#91;181:org.opendaylight.controller.sal-clustering-commons:1.3.2.Beryllium-SR2&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.controller.cluster.datastore.Shard.onReceiveCommand(Shard.java:275)&lt;span class=&quot;error&quot;&gt;&amp;#91;185:org.opendaylight.controller.sal-distributed-datastore:1.3.2.Beryllium-SR2&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at akka.persistence.UntypedPersistentActor.onReceive(Eventsourced.scala:430)&lt;span class=&quot;error&quot;&gt;&amp;#91;175:com.typesafe.akka.persistence.experimental:2.3.14&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.controller.cluster.common.actor.MeteringBehavior.apply(MeteringBehavior.java:97)&lt;span class=&quot;error&quot;&gt;&amp;#91;181:org.opendaylight.controller.sal-clustering-commons:1.3.2.Beryllium-SR2&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at akka.actor.ActorCell$$anonfun$become$1.applyOrElse(ActorCell.scala:534)&lt;span class=&quot;error&quot;&gt;&amp;#91;170:com.typesafe.akka.actor:2.3.14&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at akka.persistence.Recovery$State$class.process(Recovery.scala:30)&lt;span class=&quot;error&quot;&gt;&amp;#91;175:com.typesafe.akka.persistence.experimental:2.3.14&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at akka.persistence.ProcessorImpl$$anon$2.process(Processor.scala:103)&lt;span class=&quot;error&quot;&gt;&amp;#91;175:com.typesafe.akka.persistence.experimental:2.3.14&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at akka.persistence.ProcessorImpl$$anon$2.aroundReceive(Processor.scala:114)&lt;span class=&quot;error&quot;&gt;&amp;#91;175:com.typesafe.akka.persistence.experimental:2.3.14&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at akka.persistence.Recovery$class.aroundReceive(Recovery.scala:265)&lt;span class=&quot;error&quot;&gt;&amp;#91;175:com.typesafe.akka.persistence.experimental:2.3.14&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at akka.persistence.UntypedPersistentActor.akka$persistence$Eventsourced$$super$aroundReceive(Eventsourced.scala:428)&lt;span class=&quot;error&quot;&gt;&amp;#91;175:com.typesafe.akka.persistence.experimental:2.3.14&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at akka.persistence.Eventsourced$$anon$2.doAroundReceive(Eventsourced.scala:82)&lt;span class=&quot;error&quot;&gt;&amp;#91;175:com.typesafe.akka.persistence.experimental:2.3.14&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at akka.persistence.Eventsourced$$anon$2.aroundReceive(Eventsourced.scala:78)&lt;span class=&quot;error&quot;&gt;&amp;#91;175:com.typesafe.akka.persistence.experimental:2.3.14&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at akka.persistence.Eventsourced$class.aroundReceive(Eventsourced.scala:369)&lt;span class=&quot;error&quot;&gt;&amp;#91;175:com.typesafe.akka.persistence.experimental:2.3.14&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at akka.persistence.UntypedPersistentActor.aroundReceive(Eventsourced.scala:428)&lt;span class=&quot;error&quot;&gt;&amp;#91;175:com.typesafe.akka.persistence.experimental:2.3.14&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at akka.actor.ActorCell.receiveMessage(ActorCell.scala:516)&lt;span class=&quot;error&quot;&gt;&amp;#91;170:com.typesafe.akka.actor:2.3.14&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at akka.actor.ActorCell.invoke(ActorCell.scala:487)&lt;span class=&quot;error&quot;&gt;&amp;#91;170:com.typesafe.akka.actor:2.3.14&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:238)&lt;span class=&quot;error&quot;&gt;&amp;#91;170:com.typesafe.akka.actor:2.3.14&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at akka.dispatch.Mailbox.run(Mailbox.scala:220)&lt;span class=&quot;error&quot;&gt;&amp;#91;170:com.typesafe.akka.actor:2.3.14&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(AbstractDispatcher.scala:397)&lt;span class=&quot;error&quot;&gt;&amp;#91;170:com.typesafe.akka.actor:2.3.14&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)&lt;span class=&quot;error&quot;&gt;&amp;#91;167:org.scala-lang.scala-library:2.11.7.v20150622-112736-1fbce4612c&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)&lt;span class=&quot;error&quot;&gt;&amp;#91;167:org.scala-lang.scala-library:2.11.7.v20150622-112736-1fbce4612c&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)&lt;span class=&quot;error&quot;&gt;&amp;#91;167:org.scala-lang.scala-library:2.11.7.v20150622-112736-1fbce4612c&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)&lt;span class=&quot;error&quot;&gt;&amp;#91;167:org.scala-lang.scala-library:2.11.7.v20150622-112736-1fbce4612c&amp;#93;&lt;/span&gt;&lt;/p&gt;




&lt;p&gt;&lt;span class=&quot;error&quot;&gt;&amp;#91;0&amp;#93;&lt;/span&gt; &lt;a href=&quot;https://wiki.opendaylight.org/view/Simultaneous_Release:Beryllium_Release_Plan#Beryllium_SR2_Download&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://wiki.opendaylight.org/view/Simultaneous_Release:Beryllium_Release_Plan#Beryllium_SR2_Download&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="41274" author="vishnoianil@gmail.com" created="Thu, 2 Feb 2017 20:06:21 +0000"  >&lt;p&gt;Looks like this issue is not recreatable. Please re-open the issue if you are able to recreate it.&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>5274</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=5274]]></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_10202" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Priority</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10301"><![CDATA[Normal]]></customfieldvalue>

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

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