<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 19:53:37 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-683] Toaster throwing an exception when starting with clustering enabled</title>
                <link>https://jira.opendaylight.org/browse/CONTROLLER-683</link>
                <project id="10113" key="CONTROLLER">controller</project>
                    <description>&lt;p&gt;To reproduce do the following,&lt;br/&gt;
1. build the OpenFlowPlugin distribution.&lt;br/&gt;
2. Goto the OpenFlowPlugin distribution directory&lt;br/&gt;
3. Rename configuration/initial/05-clustering.xml.conf to configuration/initial/05-clustering.xml&lt;br/&gt;
4. Run the controller with the following command,&lt;br/&gt;
   ./run.sh -Xmx4G -XX:MaxPermSize=512m&lt;/p&gt;

&lt;p&gt;You will see the following exception show up on startup,&lt;/p&gt;

&lt;p&gt;2014-08-12 14:41:55.565 PDT &lt;span class=&quot;error&quot;&gt;&amp;#91;config-pusher&amp;#93;&lt;/span&gt; ERROR o.o.c.c.y.c.t.i.AbstractToasterProviderModule  - An error occurred while closing old instance org.opendaylight.controller.config.yang.config.toaster_provider.impl.ToasterProviderModule$1AutoCloseableToaster@6da9a192&lt;br/&gt;
java.lang.IllegalStateException: Transaction factory was closed. No further operations allowed.&lt;br/&gt;
	at com.google.common.base.Preconditions.checkState(Preconditions.java:149) ~&lt;span class=&quot;error&quot;&gt;&amp;#91;bundlefile:na&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.md.sal.dom.broker.impl.AbstractDOMForwardedTransactionFactory.checkNotClosed(AbstractDOMForwardedTransactionFactory.java:214) ~&lt;span class=&quot;error&quot;&gt;&amp;#91;na:na&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.md.sal.dom.broker.impl.AbstractDOMForwardedTransactionFactory.newWriteOnlyTransaction(AbstractDOMForwardedTransactionFactory.java:128) ~&lt;span class=&quot;error&quot;&gt;&amp;#91;na:na&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.sal.dom.broker.osgi.DOMDataBrokerProxy.newWriteOnlyTransaction(DOMDataBrokerProxy.java:33) ~&lt;span class=&quot;error&quot;&gt;&amp;#91;na:na&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.md.sal.binding.impl.ForwardedBindingDataBroker.newWriteOnlyTransaction(ForwardedBindingDataBroker.java:50) ~&lt;span class=&quot;error&quot;&gt;&amp;#91;na:na&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.sample.toaster.provider.OpendaylightToaster.close(OpendaylightToaster.java:103) ~&lt;span class=&quot;error&quot;&gt;&amp;#91;na:na&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.config.yang.config.toaster_provider.impl.ToasterProviderModule$1AutoCloseableToaster.close(ToasterProviderModule.java:79) ~&lt;span class=&quot;error&quot;&gt;&amp;#91;na:na&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.config.yang.config.toaster_provider.impl.AbstractToasterProviderModule.getInstance(AbstractToasterProviderModule.java:97) ~&lt;span class=&quot;error&quot;&gt;&amp;#91;na:na&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at sun.reflect.GeneratedMethodAccessor156.invoke(Unknown Source) ~&lt;span class=&quot;error&quot;&gt;&amp;#91;na:na&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~&lt;span class=&quot;error&quot;&gt;&amp;#91;na:1.7.0_45&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at java.lang.reflect.Method.invoke(Method.java:606) ~&lt;span class=&quot;error&quot;&gt;&amp;#91;na:1.7.0_45&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.config.manager.impl.dependencyresolver.DependencyResolverManager$1.handleInvocation(DependencyResolverManager.java:152) &lt;span class=&quot;error&quot;&gt;&amp;#91;bundlefile:na&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at com.google.common.reflect.AbstractInvocationHandler.invoke(AbstractInvocationHandler.java:70) &lt;span class=&quot;error&quot;&gt;&amp;#91;bundlefile:na&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at com.sun.proxy.$Proxy89.getInstance(Unknown Source) &lt;span class=&quot;error&quot;&gt;&amp;#91;na:na&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.config.manager.impl.ConfigTransactionControllerImpl.secondPhaseCommit(ConfigTransactionControllerImpl.java:396) &lt;span class=&quot;error&quot;&gt;&amp;#91;bundlefile:na&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.config.manager.impl.ConfigRegistryImpl.secondPhaseCommit(ConfigRegistryImpl.java:282) &lt;span class=&quot;error&quot;&gt;&amp;#91;bundlefile:na&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.config.manager.impl.ConfigRegistryImpl.commitConfig(ConfigRegistryImpl.java:229) &lt;span class=&quot;error&quot;&gt;&amp;#91;bundlefile:na&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~&lt;span class=&quot;error&quot;&gt;&amp;#91;na:1.7.0_45&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) ~&lt;span class=&quot;error&quot;&gt;&amp;#91;na:1.7.0_45&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~&lt;span class=&quot;error&quot;&gt;&amp;#91;na:1.7.0_45&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at java.lang.reflect.Method.invoke(Method.java:606) ~&lt;span class=&quot;error&quot;&gt;&amp;#91;na:1.7.0_45&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at sun.reflect.misc.Trampoline.invoke(MethodUtil.java:75) &lt;span class=&quot;error&quot;&gt;&amp;#91;na:1.7.0_45&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at sun.reflect.GeneratedMethodAccessor157.invoke(Unknown Source) ~&lt;span class=&quot;error&quot;&gt;&amp;#91;na:na&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~&lt;span class=&quot;error&quot;&gt;&amp;#91;na:1.7.0_45&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at java.lang.reflect.Method.invoke(Method.java:606) ~&lt;span class=&quot;error&quot;&gt;&amp;#91;na:1.7.0_45&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at sun.reflect.misc.MethodUtil.invoke(MethodUtil.java:279) &lt;span class=&quot;error&quot;&gt;&amp;#91;na:1.7.0_45&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at com.sun.jmx.mbeanserver.ConvertingMethod.invokeWithOpenReturn(ConvertingMethod.java:193) &lt;span class=&quot;error&quot;&gt;&amp;#91;na:1.7.0_45&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at com.sun.jmx.mbeanserver.ConvertingMethod.invokeWithOpenReturn(ConvertingMethod.java:175) &lt;span class=&quot;error&quot;&gt;&amp;#91;na:1.7.0_45&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at com.sun.jmx.mbeanserver.MXBeanIntrospector.invokeM2(MXBeanIntrospector.java:117) &lt;span class=&quot;error&quot;&gt;&amp;#91;na:1.7.0_45&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at com.sun.jmx.mbeanserver.MXBeanIntrospector.invokeM2(MXBeanIntrospector.java:54) &lt;span class=&quot;error&quot;&gt;&amp;#91;na:1.7.0_45&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM(MBeanIntrospector.java:237) &lt;span class=&quot;error&quot;&gt;&amp;#91;na:1.7.0_45&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at com.sun.jmx.mbeanserver.PerInterface.invoke(PerInterface.java:138) &lt;span class=&quot;error&quot;&gt;&amp;#91;na:1.7.0_45&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at com.sun.jmx.mbeanserver.MBeanSupport.invoke(MBeanSupport.java:252) &lt;span class=&quot;error&quot;&gt;&amp;#91;na:1.7.0_45&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819) &lt;span class=&quot;error&quot;&gt;&amp;#91;na:1.7.0_45&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801) &lt;span class=&quot;error&quot;&gt;&amp;#91;na:1.7.0_45&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at com.sun.jmx.mbeanserver.MXBeanProxy$InvokeHandler.invoke(MXBeanProxy.java:150) &lt;span class=&quot;error&quot;&gt;&amp;#91;na:1.7.0_45&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at com.sun.jmx.mbeanserver.MXBeanProxy.invoke(MXBeanProxy.java:167) &lt;span class=&quot;error&quot;&gt;&amp;#91;na:1.7.0_45&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at javax.management.MBeanServerInvocationHandler.invoke(MBeanServerInvocationHandler.java:252) &lt;span class=&quot;error&quot;&gt;&amp;#91;na:1.7.0_45&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at com.sun.proxy.$Proxy90.commitConfig(Unknown Source) &lt;span class=&quot;error&quot;&gt;&amp;#91;na:na&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.config.util.ConfigRegistryJMXClient.commitConfig(ConfigRegistryJMXClient.java:102) &lt;span class=&quot;error&quot;&gt;&amp;#91;bundlefile:na&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.netconf.confignetconfconnector.transactions.TransactionProvider.commitTransaction(TransactionProvider.java:110) &lt;span class=&quot;error&quot;&gt;&amp;#91;bundlefile:na&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.netconf.confignetconfconnector.operations.Commit.handleWithNoSubsequentOperations(Commit.java:55) &lt;span class=&quot;error&quot;&gt;&amp;#91;bundlefile:na&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.netconf.util.mapping.AbstractLastNetconfOperation.handle(AbstractLastNetconfOperation.java:33) &lt;span class=&quot;error&quot;&gt;&amp;#91;bundlefile:na&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.netconf.util.mapping.AbstractNetconfOperation.handle(AbstractNetconfOperation.java:105) &lt;span class=&quot;error&quot;&gt;&amp;#91;bundlefile:na&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.netconf.persist.impl.ConfigPusher.sendRequestGetResponseCheckIsOK(ConfigPusher.java:245) &lt;span class=&quot;error&quot;&gt;&amp;#91;bundlefile:na&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.netconf.persist.impl.ConfigPusher.pushConfig(ConfigPusher.java:204) &lt;span class=&quot;error&quot;&gt;&amp;#91;bundlefile:na&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.netconf.persist.impl.ConfigPusher.pushConfigWithConflictingVersionRetries(ConfigPusher.java:93) &lt;span class=&quot;error&quot;&gt;&amp;#91;bundlefile:na&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.netconf.persist.impl.ConfigPusher.pushConfigs(ConfigPusher.java:69) &lt;span class=&quot;error&quot;&gt;&amp;#91;bundlefile:na&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.netconf.persist.impl.osgi.ConfigPersisterActivator$InnerCustomizer$1.run(ConfigPersisterActivator.java:156) &lt;span class=&quot;error&quot;&gt;&amp;#91;bundlefile:na&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at java.lang.Thread.run(Thread.java:744) &lt;span class=&quot;error&quot;&gt;&amp;#91;na:1.7.0_45&amp;#93;&lt;/span&gt;&lt;/p&gt;


&lt;p&gt;My initial thought is that this has something to do with the fact that we substitute the in-memory-datastore with the distributed-data-store using a merge configuration (namely by overriding the settings in 01-md-sal.xml with 05-clustering.xml) which results in the Toaster Modules close being invoked. When the toaster tries it&apos;s close it fails with this exception.&lt;/p&gt;</description>
                <environment>&lt;p&gt;Operating System: Mac OS&lt;br/&gt;
Platform: PC&lt;/p&gt;</environment>
        <key id="25237">CONTROLLER-683</key>
            <summary>Toaster throwing an exception when starting 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="mmarsale@cisco.com">Maros Marsalek</assignee>
                                    <reporter username="moraja@cisco.com">Moiz Raja</reporter>
                        <labels>
                    </labels>
                <created>Tue, 12 Aug 2014 21:55:27 +0000</created>
                <updated>Tue, 19 Aug 2014 09:41:33 +0000</updated>
                            <resolved>Tue, 19 Aug 2014 09:41:33 +0000</resolved>
                                    <version>Helium</version>
                                                    <component>mdsal</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>3</watches>
                                                                                                                <comments>
                            <comment id="48848" author="mmarsale@cisco.com" created="Mon, 18 Aug 2014 08:32:09 +0000"  >&lt;p&gt;&lt;a href=&quot;https://git.opendaylight.org/gerrit/#/c/10014/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/#/c/10014/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Toaster now ingores the exception from closed Broker&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>1535</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=1535]]></customfieldvalue>

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

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

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