<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 19:55:00 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-1226] Clustering: Turn on Clustered Datastore by default</title>
                <link>https://jira.opendaylight.org/browse/CONTROLLER-1226</link>
                <project id="10113" key="CONTROLLER">controller</project>
                    <description>&lt;p&gt;Currently the in memory data store is on by default, this would switch to clustering being on by default.  It will work in 1 node mode.&lt;/p&gt;

&lt;p&gt;Observable behavior changes:&lt;/p&gt;

&lt;p&gt;Persistence for config data store will occur.&lt;/p&gt;

&lt;p&gt;To remove persisted data, from target/assembly:&lt;/p&gt;

&lt;p&gt;rm -rf ./snapshots ./journal&lt;/p&gt;</description>
                <environment>&lt;p&gt;Operating System: All&lt;br/&gt;
Platform: All&lt;/p&gt;</environment>
        <key id="25780">CONTROLLER-1226</key>
            <summary>Clustering: Turn on Clustered Datastore by default</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="-1">Unassigned</assignee>
                                    <reporter username="hagbard">Ed Warnicke</reporter>
                        <labels>
                    </labels>
                <created>Thu, 26 Mar 2015 16:25:39 +0000</created>
                <updated>Tue, 25 Jul 2023 08:23:58 +0000</updated>
                            <resolved>Tue, 7 Apr 2015 17:28:25 +0000</resolved>
                                                                    <component>clustering</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>3</watches>
                                                                                                                <comments>
                            <comment id="50338" author="hagbard@gmail.com" created="Thu, 26 Mar 2015 16:27:52 +0000"  >&lt;p&gt;See weather event: &lt;a href=&quot;https://wiki.opendaylight.org/view/Weather#Clustered_Data_Store_Switch_over&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://wiki.opendaylight.org/view/Weather#Clustered_Data_Store_Switch_over&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;See patch: &lt;br/&gt;
&lt;a href=&quot;https://git.opendaylight.org/gerrit/#/c/14313/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/#/c/14313/&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="50339" author="vrpolak" created="Thu, 26 Mar 2015 16:50:31 +0000"  >&lt;p&gt;&amp;gt; this would switch to clustering being on by default&lt;/p&gt;

&lt;p&gt;This sounds like there will be a way for users to override this new default, and use InMemoryDataStore if they wish to (let us say for performance reasons).&lt;br/&gt;
Is there a wiki page (or other document) describing the way to apply such an override, so that we can test if it works?&lt;/p&gt;

&lt;p&gt;Or should I read &quot;on by default&quot; as &quot;unconditionally on&quot;? &lt;img class=&quot;emoticon&quot; src=&quot;https://jira.opendaylight.org/images/icons/emoticons/wink.png&quot; height=&quot;16&quot; width=&quot;16&quot; align=&quot;absmiddle&quot; alt=&quot;&quot; border=&quot;0&quot;/&gt;&lt;/p&gt;</comment>
                            <comment id="50340" author="rapenno@gmail.com" created="Thu, 26 Mar 2015 19:59:11 +0000"  >&lt;p&gt;My original email below. If clustering is turned on by default and percolates to SFC it will most likely make it unusable. &lt;/p&gt;

&lt;p&gt;It is very close to Lithium to make those changes. I think we need to have a larger discussion of who will report, chase and fix bugs. &lt;/p&gt;



&lt;p&gt;=====&lt;/p&gt;

&lt;p&gt;Some time ago I had the action item to test clustering with SFC and did that recently. I tried a simple single node as written in:  &lt;a href=&quot;https://wiki.opendaylight.org/view/Running_and_testing_an_OpenDaylight_Cluster&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://wiki.opendaylight.org/view/Running_and_testing_an_OpenDaylight_Cluster&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In a nutshell there are so many errors that I&#8217;m not even try to list them all.  Even simple tests fail.  &lt;/p&gt;

&lt;p&gt;Anybody has feedback on actual ODL Application that has listeners, reads from data store, commit to the data store from executors, etc that has been tested successfully with clustering?  The wiki says &quot;You should be able to test the controller now as you would normally test a regular, single instance of the controller&quot; but I wonder is something is amiss. &lt;/p&gt;

&lt;p&gt;Thanks,&lt;/p&gt;

&lt;p&gt;Reinaldo&lt;/p&gt;

&lt;p&gt;Some examples of the 100s of messages I get&lt;/p&gt;

&lt;p&gt;2015-03-24 00:40:35,081 | ERROR | DOM-CFG-DCL-4    | QueuedNotificationManager        | 53 - org.opendaylight.yangtools.util - 0.7.0.SNAPSHOT | DataChangeListenerQueueMgr: Error notifying listener AbstractObjectRegistration&lt;/p&gt;
{instance=org.opendaylight.sfc.sbrest.provider.listener.SbRestSfEntryDataListener}
&lt;p&gt;java.util.concurrent.RejectedExecutionException: Task java.util.concurrent.FutureTask@56412b3 rejected from java.util.concurrent.ThreadPoolExecutor@7df7e573&lt;span class=&quot;error&quot;&gt;&amp;#91;Shutting down, pool size = 1, active threads = 1, queued tasks = 0, completed tasks = 2&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at java.util.concurrent.ThreadPoolExecutor$AbortPolicy.rejectedExecution(ThreadPoolExecutor.java:2048)&lt;span class=&quot;error&quot;&gt;&amp;#91;:1.7.0_60&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at java.util.concurrent.ThreadPoolExecutor.reject(ThreadPoolExecutor.java:821)&lt;span class=&quot;error&quot;&gt;&amp;#91;:1.7.0_60&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:1372)&lt;span class=&quot;error&quot;&gt;&amp;#91;:1.7.0_60&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:110)&lt;span class=&quot;error&quot;&gt;&amp;#91;:1.7.0_60&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.sfc.sbrest.provider.listener.SbRestSfEntryDataListener.onDataChanged(SbRestSfEntryDataListener.java:90)&lt;span class=&quot;error&quot;&gt;&amp;#91;280:org.opendaylight.sfc.sb-rest:0.1.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.md.sal.binding.impl.AbstractForwardedDataBroker$TranslatingDataChangeInvoker.onDataChanged(AbstractForwardedDataBroker.java:134)&lt;span class=&quot;error&quot;&gt;&amp;#91;145:org.opendaylight.controller.sal-binding-broker-impl:1.2.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.md.sal.dom.store.impl.InMemoryDOMDataStore$1.invokeListener(InMemoryDOMDataStore.java:73)&lt;span class=&quot;error&quot;&gt;&amp;#91;148:org.opendaylight.controller.sal-inmemory-datastore:1.2.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.md.sal.dom.store.impl.InMemoryDOMDataStore$1.invokeListener(InMemoryDOMDataStore.java:67)&lt;span class=&quot;error&quot;&gt;&amp;#91;148:org.opendaylight.controller.sal-inmemory-datastore:1.2.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.yangtools.util.concurrent.QueuedNotificationManager$NotificationTask.notifyListener(QueuedNotificationManager.java:411)&lt;span class=&quot;error&quot;&gt;&amp;#91;53:org.opendaylight.yangtools.util:0.7.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.yangtools.util.concurrent.QueuedNotificationManager$NotificationTask.run(QueuedNotificationManager.java:382)&lt;span class=&quot;error&quot;&gt;&amp;#91;53:org.opendaylight.yangtools.util:0.7.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)&lt;span class=&quot;error&quot;&gt;&amp;#91;:1.7.0_60&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)&lt;span class=&quot;error&quot;&gt;&amp;#91;:1.7.0_60&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at java.lang.Thread.run(Thread.java:745)&lt;span class=&quot;error&quot;&gt;&amp;#91;:1.7.0_60&amp;#93;&lt;/span&gt;&lt;br/&gt;
2015-03-24 00:40:35,571 | ERROR | lt-dispatcher-43 | DataChangeListener               | 308 - org.opendaylight.controller.sal-distributed-datastore - 1.2.0.SNAPSHOT | Error notifying listener org.opendaylight.sfc.sfc_netconf.provider.listener.SfcNetconfNodeDataListener&lt;br/&gt;
java.util.concurrent.RejectedExecutionException: Task java.util.concurrent.FutureTask@61ada5f4 rejected from java.util.concurrent.ThreadPoolExecutor@7df7e573&lt;span class=&quot;error&quot;&gt;&amp;#91;Shutting down, pool size = 1, active threads = 1, queued tasks = 0, completed tasks = 2&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at java.util.concurrent.ThreadPoolExecutor$AbortPolicy.rejectedExecution(ThreadPoolExecutor.java:2048)&lt;span class=&quot;error&quot;&gt;&amp;#91;:1.7.0_60&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at java.util.concurrent.ThreadPoolExecutor.reject(ThreadPoolExecutor.java:821)&lt;span class=&quot;error&quot;&gt;&amp;#91;:1.7.0_60&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:1372)&lt;span class=&quot;error&quot;&gt;&amp;#91;:1.7.0_60&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:132)&lt;span class=&quot;error&quot;&gt;&amp;#91;:1.7.0_60&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.sfc.provider.api.SfcProviderServiceForwarderAPI.putServiceFunctionForwarderExecutor(SfcProviderServiceForwarderAPI.java:160)&lt;span class=&quot;error&quot;&gt;&amp;#91;220:org.opendaylight.sfc.provider:0.1.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.sfc.sfc_netconf.provider.listener.SfcNetconfNodeDataListener.onDataChanged(SfcNetconfNodeDataListener.java:143)&lt;span class=&quot;error&quot;&gt;&amp;#91;227:org.opendaylight.sfc.netconf:0.1.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.md.sal.binding.impl.AbstractForwardedDataBroker$TranslatingDataChangeInvoker.onDataChanged(AbstractForwardedDataBroker.java:134)&lt;span class=&quot;error&quot;&gt;&amp;#91;145:org.opendaylight.controller.sal-binding-broker-impl:1.2.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.cluster.datastore.DataChangeListener.dataChanged(DataChangeListener.java:66)&lt;span class=&quot;error&quot;&gt;&amp;#91;308:org.opendaylight.controller.sal-distributed-datastore:1.2.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.cluster.datastore.DataChangeListener.handleReceive(DataChangeListener.java:39)&lt;span class=&quot;error&quot;&gt;&amp;#91;308:org.opendaylight.controller.sal-distributed-datastore:1.2.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.cluster.common.actor.AbstractUntypedActor.onReceive(AbstractUntypedActor.java:34)&lt;span class=&quot;error&quot;&gt;&amp;#91;300:org.opendaylight.controller.sal-clustering-commons:1.2.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at akka.actor.UntypedActor$$anonfun$receive$1.applyOrElse(UntypedActor.scala:167)&lt;span class=&quot;error&quot;&gt;&amp;#91;293:com.typesafe.akka.actor:2.3.9&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at akka.actor.Actor$class.aroundReceive(Actor.scala:465)&lt;span class=&quot;error&quot;&gt;&amp;#91;293:com.typesafe.akka.actor:2.3.9&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at akka.actor.UntypedActor.aroundReceive(UntypedActor.scala:97)&lt;span class=&quot;error&quot;&gt;&amp;#91;293:com.typesafe.akka.actor:2.3.9&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;293:com.typesafe.akka.actor:2.3.9&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;293:com.typesafe.akka.actor:2.3.9&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:254)&lt;span class=&quot;error&quot;&gt;&amp;#91;293:com.typesafe.akka.actor:2.3.9&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at akka.dispatch.Mailbox.run(Mailbox.scala:221)&lt;span class=&quot;error&quot;&gt;&amp;#91;293:com.typesafe.akka.actor:2.3.9&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at akka.dispatch.Mailbox.exec(Mailbox.scala:231)&lt;span class=&quot;error&quot;&gt;&amp;#91;293:com.typesafe.akka.actor:2.3.9&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;290:org.scala-lang.scala-library:2.10.4.v20140209-180020-VFINAL-b66a39653b&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;290:org.scala-lang.scala-library:2.10.4.v20140209-180020-VFINAL-b66a39653b&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;290:org.scala-lang.scala-library:2.10.4.v20140209-180020-VFINAL-b66a39653b&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;290:org.scala-lang.scala-library:2.10.4.v20140209-180020-VFINAL-b66a39653b&amp;#93;&lt;/span&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>2903</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=2903]]></customfieldvalue>

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

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