<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 20:31:42 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-156] The Finisher queue size is unbounded and causes the controller to run out of memory under stress</title>
                <link>https://jira.opendaylight.org/browse/OPNFLWPLUG-156</link>
                <project id="10155" key="OPNFLWPLUG">OpenFlowPlugin</project>
                    <description>&lt;p&gt;The TicketFinisher queue is unbounded (created with integer.MAX_VALUE). Now that the MD-SAL queues do backpresssure,the plugin&apos;s Finisher queue will grow indefinitely and cause the controller to run out of memory under stress.&lt;/p&gt;

&lt;p&gt;To reproduce, run the the cbench throughput test on a controller that uses the IF1.3 plugin, for example:&lt;/p&gt;

&lt;p&gt;cbench -c 192.168.162.1 -p 6633 -m 1000 -l 10 -s 16 -M 100000 -&lt;/p&gt;

&lt;p&gt;This bug is similar to &lt;a href=&quot;https://jira.opendaylight.org/browse/OPNFLWPLUG-119&quot; title=&quot;cbench in throughput mode causes the controller to run out of memory&quot; class=&quot;issue-link&quot; data-issue-key=&quot;OPNFLWPLUG-119&quot;&gt;&lt;del&gt;OPNFLWPLUG-119&lt;/del&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The Finisher queue should be created with a max number of elements (say 500 or 1000). The max number of elements in the Finisher queue should be configurable.&lt;/p&gt;</description>
                <environment>&lt;p&gt;Operating System: Mac OS&lt;br/&gt;
Platform: Macintosh&lt;/p&gt;</environment>
        <key id="27424">OPNFLWPLUG-156</key>
            <summary>The Finisher queue size is unbounded and causes the controller to run out of memory under stress</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="jmedved@cisco.com">Jan Medved</assignee>
                                    <reporter username="jmedved@cisco.com">Jan Medved</reporter>
                        <labels>
                    </labels>
                <created>Mon, 12 May 2014 00:36:27 +0000</created>
                <updated>Mon, 27 Sep 2021 09:01:11 +0000</updated>
                            <resolved>Tue, 13 May 2014 13:20:53 +0000</resolved>
                                                                    <component>General</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>3</watches>
                                                                                                                <comments>
                            <comment id="55641" author="jmedved@cisco.com" created="Mon, 12 May 2014 05:46:15 +0000"  >&lt;p&gt;Changed the queue initialization to limit the Finished queue 1000 elements in &lt;a href=&quot;https://git.opendaylight.org/gerrit/6885&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/6885&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;Now the Finisher queue is not growing out of bounds anymore, but another out-of-memory condition is manifesting itself somewhere in the parser - see the attached memory/ object dump from the YourKit profiler.&lt;/p&gt;</comment>
                            <comment id="55648" author="jmedved@cisco.com" created="Mon, 12 May 2014 05:47:45 +0000"  >&lt;p&gt;Attachment Class-list.zip has been added with description: class list dump from Yourkit&lt;/p&gt;</comment>
                            <comment id="55642" author="jmedved@cisco.com" created="Mon, 12 May 2014 05:48:46 +0000"  >&lt;p&gt;Showing the objects on the Hash map that did not get garbage collected&lt;/p&gt;</comment>
                            <comment id="55649" author="jmedved@cisco.com" created="Mon, 12 May 2014 05:48:46 +0000"  >&lt;p&gt;Attachment Object-explorer.zip has been added with description: Object Dump from YourKit&lt;/p&gt;</comment>
                            <comment id="55643" author="jmedved@cisco.com" created="Mon, 12 May 2014 05:50:11 +0000"  >&lt;p&gt;(In reply to Jan Medved from comment #0)&lt;br/&gt;
&amp;gt; The TicketFinisher queue is unbounded (created with integer.MAX_VALUE). Now&lt;br/&gt;
&amp;gt; that the MD-SAL queues do backpresssure,the plugin&apos;s Finisher queue will&lt;br/&gt;
&amp;gt; grow indefinitely and cause the controller to run out of memory under stress.&lt;br/&gt;
&amp;gt; &lt;br/&gt;
&amp;gt; To reproduce, run the the cbench throughput test on a controller that uses&lt;br/&gt;
&amp;gt; the IF1.3 plugin, for example:&lt;br/&gt;
&amp;gt; &lt;br/&gt;
&amp;gt; cbench -c 192.168.162.1 -p 6633 -m 1000 -l 10 -s 16 -M 100000 -&lt;br/&gt;
&amp;gt; &lt;br/&gt;
&amp;gt; This bug is similar to &lt;a href=&quot;https://jira.opendaylight.org/browse/OPNFLWPLUG-119&quot; title=&quot;cbench in throughput mode causes the controller to run out of memory&quot; class=&quot;issue-link&quot; data-issue-key=&quot;OPNFLWPLUG-119&quot;&gt;&lt;del&gt;OPNFLWPLUG-119&lt;/del&gt;&lt;/a&gt;&lt;br/&gt;
&amp;gt; &lt;br/&gt;
&amp;gt; The Finisher queue should be created with a max number of elements (say 500&lt;br/&gt;
&amp;gt; or 1000). The max number of elements in the Finisher queue should be&lt;br/&gt;
&amp;gt; configurable.&lt;/p&gt;

&lt;p&gt;One more thing: this change allows 3-4 runs of cbench in throughput mode, whereas before the controller locked up after one run.&lt;/p&gt;</comment>
                            <comment id="55644" author="rovarga" created="Mon, 12 May 2014 14:43:53 +0000"  >&lt;p&gt;I have run a simple &apos;start SP&apos; test, profiled it, it turns out we do have a leak in yangtools &amp;#8211; one of the node implementations is holding a reference which it should not. We have pushed a few improvements to memory usage already, expect to lose ~120MB once the fix is in. It can also explain why NETCONF has such sucky scaling numbers.&lt;/p&gt;</comment>
                            <comment id="55645" author="rovarga" created="Mon, 12 May 2014 14:44:55 +0000"  >&lt;p&gt;BUG-987 is tracking the yangtools thing.&lt;/p&gt;</comment>
                            <comment id="55646" author="mirehak@cisco.com" created="Tue, 13 May 2014 13:20:25 +0000"  >&lt;p&gt;&lt;a href=&quot;https://git.opendaylight.org/gerrit/6885&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/6885&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="55647" author="mirehak@cisco.com" created="Tue, 13 May 2014 13:20:53 +0000"  >&lt;p&gt;please verify&lt;/p&gt;</comment>
                    </comments>
                    <attachments>
                            <attachment id="13869" name="Class-list.zip" size="141978" author="jmedved@cisco.com" created="Mon, 12 May 2014 05:47:45 +0000"/>
                            <attachment id="13870" name="Object-explorer.zip" size="13456" author="jmedved@cisco.com" created="Mon, 12 May 2014 05:48:46 +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>985</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=985]]></customfieldvalue>

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

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