<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 19:52:17 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-136] Remote RPC Broker fails configuration transaction if clustering table service is not started.</title>
                <link>https://jira.opendaylight.org/browse/CONTROLLER-136</link>
                <project id="10113" key="CONTROLLER">controller</project>
                    <description>&lt;p&gt;Remote RPC Broker, requires runtime dependency not managed by config subsystem&lt;br/&gt;
which is clustered rpc routing table.&lt;/p&gt;

&lt;p&gt;In second phase of commit - when all the verification should be done,&lt;br/&gt;
remote-rpc broker throws an exception if routing table is still not available (this one is activated by Felix DM), which tears down whole transaction and config subsystem and prevents logging.&lt;/p&gt;

&lt;p&gt;This bug was present before, but was not seen, before performance fix was&lt;br/&gt;
applied to MD-SAL startup, which now gets initialized faster then original clustering service.&lt;/p&gt;

&lt;p&gt;Remote RPC Broker should postpone it&apos;s operations till table is available,&lt;br/&gt;
not fail to start without table.&lt;/p&gt;

&lt;p&gt;For now Remote RPC Broker is moved to separate transaction &lt;br/&gt;
&lt;a href=&quot;https://git.opendaylight.org/gerrit/#/c/4698/1&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/#/c/4698/1&lt;/a&gt;&lt;br/&gt;
to not prevent MD-SAL from starting.&lt;/p&gt;

&lt;p&gt;Exception:&lt;br/&gt;
ava.lang.NullPointerException: null&lt;br/&gt;
	at java.lang.StringBuilder.&amp;lt;init&amp;gt;(StringBuilder.java:109) ~&lt;span class=&quot;error&quot;&gt;&amp;#91;na:1.7.0_21&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.opendaylight.controller.sal.connector.remoterpc.ServerImpl.&amp;lt;init&amp;gt;(ServerImpl.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.md.sal.remote.rpc.ZeroMQServerModule.createInstance(ZeroMQServerModule.java:49) ~&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.md.sal.remote.rpc.AbstractZeroMQServerModule.getInstance(AbstractZeroMQServerModule.java:107) ~&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:381) ~&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:264) &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:208) &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_21&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_21&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_21&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at java.lang.reflect.Method.invoke(Method.java:601) ~&lt;span class=&quot;error&quot;&gt;&amp;#91;na:1.7.0_21&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at com.sun.jmx.mbeanserver.ConvertingMethod.invokeWithOpenReturn(ConvertingMethod.java:192) &lt;span class=&quot;error&quot;&gt;&amp;#91;na:1.7.0_21&amp;#93;&lt;/span&gt;&lt;/p&gt;</description>
                <environment>&lt;p&gt;Operating System: Linux&lt;br/&gt;
Platform: PC&lt;/p&gt;</environment>
        <key id="24690">CONTROLLER-136</key>
            <summary>Remote RPC Broker fails configuration transaction if clustering table service is not started.</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="abhishk2@cisco.com">Abhishek Kumar</assignee>
                                    <reporter username="tony.tkacik@gmail.com">Tony Tkacik</reporter>
                        <labels>
                    </labels>
                <created>Fri, 24 Jan 2014 12:36:11 +0000</created>
                <updated>Tue, 25 Jul 2023 08:23:02 +0000</updated>
                            <resolved>Sat, 25 Jan 2014 00:38:38 +0000</resolved>
                                                                    <component>mdsal</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="47590" author="abhishk2@cisco.com" created="Fri, 24 Jan 2014 19:06:35 +0000"  >&lt;p&gt;From the stack trace and looking into the code, it looks like Remote RPC Broker failed to start because it could not acquire host IP address.&lt;/p&gt;

&lt;p&gt;There are 2 things I can do:&lt;br/&gt;
1. Move the code of acquiring the IP address from constructor to onSessionInitiated(). Is it ok to throw RuntimeException here?&lt;/p&gt;

&lt;p&gt;2. I eat the exception, log error message. &lt;/p&gt;

&lt;p&gt;I prefer 1st approach as opposed to silently dying in the 2nd approach.&lt;/p&gt;


&lt;p&gt;Also, how did we conclude that the failure is due to missing routing table?&lt;/p&gt;</comment>
                            <comment id="47591" author="abhishk2@cisco.com" created="Fri, 24 Jan 2014 20:14:10 +0000"  >&lt;p&gt;Per discussion with Ed Warnicke, we are taking 2nd approach. I have created a tracking defect (&lt;a href=&quot;https://bugs.opendaylight.org/show_bug.cgi?id=366&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://bugs.opendaylight.org/show_bug.cgi?id=366&lt;/a&gt;) to revisit the issue and fix it properly.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10000">
                    <name>Blocks</name>
                                            <outwardlinks description="blocks">
                                        <issuelink>
            <issuekey id="24674">CONTROLLER-120</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_10208" key="com.atlassian.jira.plugin.system.customfieldtypes:textfield">
                        <customfieldname>External issue ID</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>362</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=362]]></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|i02ijb:</customfieldvalue>

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