<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 20:33:34 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>[OPNFLWPLUG-859] Internal SalSevice queue gets full and ODL does not perform any more Openflow actions in the switch and does not release the mastership</title>
                <link>https://jira.opendaylight.org/browse/OPNFLWPLUG-859</link>
                <project id="10155" key="OPNFLWPLUG">OpenFlowPlugin</project>
                    <description>&lt;p&gt;After running ODL for few days, it seems some internal queue gets fulls and SalService does not allow to perform any action on the switch. The connectivity with the switch is established and the hello messages from the switch are returned properly.&lt;/p&gt;

&lt;p&gt;Restarting the switch does not solve the problem, the controller that holds the mastership does not free the cluster singleton service. The rest of the controller that holds &quot;candidate&quot; status on the cluster singleton (slave mode in the switch) release the singleton service.&lt;/p&gt;


&lt;p&gt;The problem was solved only after restarting the controller that holds the mastership to the switch.&lt;/p&gt;

&lt;p&gt;I noticed exceptions that may point to the source of the problem. Basically, following code does not return a requestContext . (requestContext is always null).&lt;/p&gt;

&lt;p&gt;final RequestContext&amp;lt;O&amp;gt; requestContext = requestContextStack.createRequestContext();&lt;br/&gt;
        if (requestContext == null) &lt;/p&gt;
{
            LOG.trace(&quot;Request context refused.&quot;);
            getMessageSpy().spyMessage(AbstractService.class, MessageSpy.STATISTIC_GROUP.TO_SWITCH_DISREGARDED);
            return failedFuture();
        }
&lt;p&gt; &lt;/p&gt;


&lt;p&gt;And following logs points that the queue is full.&lt;/p&gt;

&lt;p&gt;2017-02-24 09:47:34,239 | TRACE | Thread-101       | AbstractService                  | 287 - org.opendaylight.openflowplugin.impl - 0.3.1.Boron-SR1 | Handling general service call&lt;br/&gt;
2017-02-24 09:47:34,239 | TRACE | Thread-101       | RpcContextImpl                   | 287 - org.opendaylight.openflowplugin.impl - 0.3.1.Boron-SR1 | Device queue org.opendaylight.openflowplugin.i       mpl.rpc.RpcContextImpl@3a502d68 at capacity&lt;br/&gt;
2017-02-24 09:47:34,239 | TRACE | Thread-101       | AbstractService                  | 287 - org.opendaylight.openflowplugin.impl - 0.3.1.Boron-SR1 | Request context refused.&lt;/p&gt;


&lt;p&gt;The log &quot;Device queue org.opendaylight.openflowplugin.i       mpl.rpc.RpcContextImpl@3a502d68 at capacity&quot; is returned because following code cannot acquire the lock which is a semaphore.&lt;/p&gt;

&lt;p&gt;public &amp;lt;T&amp;gt; RequestContext&amp;lt;T&amp;gt; createRequestContext() {&lt;br/&gt;
        if (!tracker.tryAcquire()) {&lt;br/&gt;
            LOG.trace(&quot;Device queue {} at capacity&quot;, this);&lt;br/&gt;
            return null;&lt;br/&gt;
        } else {&lt;br/&gt;
            LOG.trace(&quot;Acquired semaphore for {}, available permits:{} &quot;, nodeInstanceIdentifier.getKey().getId().getValue(), tracker.availablePermits());&lt;br/&gt;
        }&lt;/p&gt;</description>
                <environment>&lt;p&gt;Operating System: All&lt;br/&gt;
Platform: All&lt;/p&gt;</environment>
        <key id="28127">OPNFLWPLUG-859</key>
            <summary>Internal SalSevice queue gets full and ODL does not perform any more Openflow actions in the switch and does not release the mastership</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="JalpaModasiya">Jalpa Modasiya</assignee>
                                    <reporter username="castro.jon@gmail.com">Jon Castro</reporter>
                        <labels>
                    </labels>
                <created>Thu, 23 Feb 2017 23:18:51 +0000</created>
                <updated>Mon, 27 Sep 2021 09:02:00 +0000</updated>
                            <resolved>Tue, 6 Mar 2018 05:48:28 +0000</resolved>
                                                    <fixVersion>Boron</fixVersion>
                                    <component>clustering</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="58732" author="castro.jon@gmail.com" created="Tue, 28 Feb 2017 21:30:07 +0000"  >&lt;p&gt;Attachment karaf.log.1.gz has been added with description: karaf file&lt;/p&gt;</comment>
                            <comment id="58733" author="castro.jon@gmail.com" created="Tue, 28 Feb 2017 21:30:32 +0000"  >&lt;p&gt;Attachment karaf.log.2.gz has been added with description: karaf file 2&lt;/p&gt;</comment>
                            <comment id="58730" author="castro.jon@gmail.com" created="Tue, 28 Feb 2017 21:36:23 +0000"  >&lt;p&gt;This is issue has been produced after running an Opendaylight Cluster of 3 nodes for few days. After some unknown time (something around one or two days) the controllers lose the capability to perform openflow actions because the queue gets full.&lt;/p&gt;

&lt;p&gt;The controller was not performing any particular action when this issue happened, the controller just were running and openflow switches were connected to them.&lt;/p&gt;

&lt;p&gt;This issue should be reproducible after running the controller in clustered more for few days with real hardware switches.&lt;/p&gt;</comment>
                            <comment id="58731" author="castro.jon@gmail.com" created="Tue, 28 Feb 2017 21:38:57 +0000"  >&lt;p&gt;If more logs are required, feel free to let me know what is required in order to gather such information.&lt;/p&gt;</comment>
                            <comment id="61316" author="vishnoianil@gmail.com" created="Tue, 27 Feb 2018 23:05:25 +0000"  >&lt;p&gt;Boron : &lt;a href=&quot;https://git.opendaylight.org/gerrit/#/c/59131/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/#/c/59131/&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="61426" author="vishnoianil@gmail.com" created="Tue, 6 Mar 2018 05:48:06 +0000"  >&lt;p&gt;This issue is not present in the stable/Oxygen, stable/nitrogen and master branch.&lt;/p&gt;</comment>
                    </comments>
                    <attachments>
                            <attachment id="14121" name="karaf.log.1.gz" size="898555" author="castro.jon@gmail.com" created="Tue, 28 Feb 2017 21:30:07 +0000"/>
                            <attachment id="14122" name="karaf.log.2.gz" size="835490" author="castro.jon@gmail.com" created="Tue, 28 Feb 2017 21:30:32 +0000"/>
                    </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>7846</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=7846]]></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="10322"><![CDATA[Boron-4]]></customfieldvalue>

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

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