<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 20:32: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-471] NullPointerException from OpenflowPlugin.application.StatisticsManagerImpl.java:304</title>
                <link>https://jira.opendaylight.org/browse/OPNFLWPLUG-471</link>
                <project id="10155" key="OPNFLWPLUG">OpenFlowPlugin</project>
                    <description>&lt;p&gt;Build# 1901&lt;br/&gt;
OpenvSwitch# version 2.3.1&lt;/p&gt;

&lt;p&gt;Problem:&lt;br/&gt;
Statistics Manager thrown with NullPointerException or Statstics Manager killed.&lt;/p&gt;

&lt;p&gt;As Summary,&lt;br/&gt;
Observation#1 : 64 switch, TSDR collection is successful, but thrown NullPointerException on Statistics Manger&lt;br/&gt;
Observation#2: 127 switch, occasionally TSDR collection partially successful, but got OpenFlowPlugin Exception&lt;br/&gt;
Observation#3: 127 Switch, Most consistent TSDR collection doesn&#8217;t successful (Waited for 4 hours for same)&lt;/p&gt;


&lt;p&gt;Observation#1 (with #64 switches got NullPointerException)&lt;br/&gt;
===================================================&lt;br/&gt;
Exception in thread &quot;pool-28-thread-1&quot; java.lang.RuntimeException: java.lang.NullPointerException&lt;br/&gt;
at com.lmax.disruptor.FatalExceptionHandler.handleEventException(FatalExceptionHandler.java:45)&lt;br/&gt;
at com.lmax.disruptor.BatchEventProcessor.run(BatchEventProcessor.java:147)&lt;br/&gt;
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)&lt;br/&gt;
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)&lt;br/&gt;
at java.lang.Thread.run(Thread.java:745)&lt;br/&gt;
Caused by: java.lang.NullPointerException&lt;br/&gt;
at org.opendaylight.openflowplugin.applications.statistics.manager.impl.StatisticsManagerImpl.disconnectedNodeUnregistration(StatisticsManagerImpl.java:304)&lt;br/&gt;
at org.opendaylight.openflowplugin.applications.statistics.manager.impl.StatNodeRegistrationImpl.disconnectFlowCapableNode(StatNodeRegistrationImpl.java:144)&lt;br/&gt;
at org.opendaylight.openflowplugin.applications.statistics.manager.impl.StatNodeRegistrationImpl.onNodeRemoved(StatNodeRegistrationImpl.java:167)&lt;br/&gt;
at org.opendaylight.yangtools.yang.binding.util.NotificationListenerInvoker.invokeNotification(NotificationListenerInvoker.java:91)&lt;br/&gt;
at org.opendaylight.controller.md.sal.binding.impl.BindingDOMNotificationListenerAdapter.onNotification(BindingDOMNotificationListenerAdapter.java:44)&lt;br/&gt;
at org.opendaylight.controller.md.sal.dom.broker.impl.DOMNotificationRouterEvent.deliverNotification(DOMNotificationRouterEvent.java:50)&lt;br/&gt;
at org.opendaylight.controller.md.sal.dom.broker.impl.DOMNotificationRouter$1.onEvent(DOMNotificationRouter.java:68)&lt;br/&gt;
at org.opendaylight.controller.md.sal.dom.broker.impl.DOMNotificationRouter$1.onEvent(DOMNotificationRouter.java:65)&lt;br/&gt;
at com.lmax.disruptor.BatchEventProcessor.run(BatchEventProcessor.java:128)&lt;br/&gt;
... 3 more&lt;br/&gt;
============================================================&lt;br/&gt;
Observation#2 (Sometimes particall collection happening with 127 switch,but exception as below)&lt;br/&gt;
===========================================================&lt;br/&gt;
015-05-28 15:11:15,290 | WARN | OFmsgFinisher-0 | TicketFinisherImpl | 254 - org.opendaylight.openflowplugin - 0.1.0.SNAPSHOT | processing (translate, publish) of ticket failed&lt;br/&gt;
java.util.concurrent.ExecutionException: java.lang.NullPointerException&lt;br/&gt;
at com.google.common.util.concurrent.AbstractFuture$Sync.getValue(AbstractFuture.java:299)&lt;span class=&quot;error&quot;&gt;&amp;#91;61:com.google.guava:18.0.0&amp;#93;&lt;/span&gt;&lt;br/&gt;
at com.google.common.util.concurrent.AbstractFuture$Sync.get(AbstractFuture.java:286)&lt;span class=&quot;error&quot;&gt;&amp;#91;61:com.google.guava:18.0.0&amp;#93;&lt;/span&gt;&lt;br/&gt;
at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:116)&lt;span class=&quot;error&quot;&gt;&amp;#91;61:com.google.guava:18.0.0&amp;#93;&lt;/span&gt;&lt;br/&gt;
at org.opendaylight.openflowplugin.openflow.md.queue.TicketFinisherImpl.run(TicketFinisherImpl.java:50)&lt;span class=&quot;error&quot;&gt;&amp;#91;254:org.opendaylight.openflowplugin:0.1.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_75&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_75&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_75&amp;#93;&lt;/span&gt;&lt;br/&gt;
Caused by: java.lang.NullPointerException&lt;br/&gt;
2015-05-28 15:11:15,292 | WARN | OFmsgProcessor-2 | TicketProcessorFactoryImpl | 254 - org.opendaylight.openflowplugin - 0.1.0.SNAPSHOT | translation problem: null&lt;br/&gt;
2015-05-28 15:11:15,292 | WARN | OFmsgFinisher-0 | TicketFinisherImpl | 254 - org.opendaylight.openflowplugin - 0.1.0.SNAPSHOT | processing (translate, publish) of ticket failed&lt;br/&gt;
java.util.concurrent.ExecutionException: java.lang.NullPointerException&lt;br/&gt;
at com.google.common.util.concurrent.AbstractFuture$Sync.getValue(AbstractFuture.java:299)&lt;span class=&quot;error&quot;&gt;&amp;#91;61:com.google.guava:18.0.0&amp;#93;&lt;/span&gt;&lt;br/&gt;
at com.google.common.util.concurrent.AbstractFuture$Sync.get(AbstractFuture.java:286)&lt;span class=&quot;error&quot;&gt;&amp;#91;61:com.google.guava:18.0.0&amp;#93;&lt;/span&gt;&lt;br/&gt;
at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:116)&lt;span class=&quot;error&quot;&gt;&amp;#91;61:com.google.guava:18.0.0&amp;#93;&lt;/span&gt;&lt;br/&gt;
at org.opendaylight.openflowplugin.openflow.md.queue.TicketFinisherImpl.run(TicketFinisherImpl.java:50)&lt;span class=&quot;error&quot;&gt;&amp;#91;254:org.opendaylight.openflowplugin:0.1.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_75&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_75&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_75&amp;#93;&lt;/span&gt;&lt;br/&gt;
Caused by: java.lang.NullPointerException&lt;br/&gt;
==========================================================================&lt;br/&gt;
Observation#3# TSDR Collection itself doesn&#8217;t happening and got the following message from Statistics Manager.I believe Statistics Manager doesn&#8217;t functioning properly.&lt;br/&gt;
sudo mn --topo tree,7 --switch ovsk,protocols=OpenFlow13 --controller remote,ip=10.16.148.232 (i.e 127 switches)&lt;br/&gt;
=================================================================&lt;br/&gt;
2015-05-28 20:58:46,685 | INFO | pool-32-thread-1 | StatisticsManagerImpl | 259 - org.opendaylight.openflowplugin.applications.statistics-manager - 0.1.0.SNAPSHOT | No existing collector found for new node. Creating a new collector for KeyedInstanceIdentifier&lt;/p&gt;
{targetType=interface org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node, path=[org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.Nodes, org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node[key=NodeKey [_id=Uri [_value=openflow:45]]]]}
&lt;p&gt;2015-05-28 20:58:46,840 | INFO | pool-32-thread-1 | StatisticsManagerImpl | 259 - org.opendaylight.openflowplugin.applications.statistics-manager - 0.1.0.SNAPSHOT | No existing collector found for new node. Creating a new collector for KeyedInstanceIdentifier&lt;/p&gt;
{targetType=interface org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node, path=[org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.Nodes, org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node[key=NodeKey [_id=Uri [_value=openflow:124]]]]}
&lt;p&gt;2015-05-28 20:58:46,923 | INFO | pool-32-thread-1 | StatisticsManagerImpl | 259 - org.opendaylight.openflowplugin.applications.statistics-manager - 0.1.0.SNAPSHOT | No existing collector found for new node. Creating a new collector for KeyedInstanceIdentifier&lt;/p&gt;
{targetType=interface org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node, path=[org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.Nodes, org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node[key=NodeKey [_id=Uri [_value=openflow:37]]]]}
&lt;p&gt;2015-05-28 21:00:06,279 | INFO | l for user karaf | ZooKeeper | 298 - org.apache.hadoop.zookeeper - 3.3.5 | Initiating client connection, connectString=localhost:2181 sessionTimeout=180000 watcher=hconnection&lt;br/&gt;
2015-05-28 21:00:06,280 | INFO | raf-SendThread() | ClientCnxn | 298 - org.apache.hadoop.zookeeper - 3.3.5 | Opening socket connection to server localhost/0:0:0:0:0:0:0:1:2181&lt;br/&gt;
2015-05-28 21:00:06,281 | INFO | l for user karaf | RecoverableZooKeeper | 301 - wrap_mvn_org.apache.hbase_hbase_0.94.15 - 0.0.0 | The identifier of this process is 2960@user-01&lt;br/&gt;
2015-05-28 21:00:06,282 | INFO | (localhost:2181) | ClientCnxn | 298 - org.apache.hadoop.zookeeper - 3.3.5 | Socket connection established to localhost/0:0:0:0:0:0:0:1:2181, initiating session&lt;br/&gt;
2015-05-28 21:00:06,307 | INFO | (localhost:2181) | ClientCnxn | 298 - org.apache.hadoop.zookeeper - 3.3.5 | Session establishment complete on server localhost/0:0:0:0:0:0:0:1:2181, sessionid = 0x14d9b1e5f8c0015, negotiated timeout = 40000&lt;/p&gt;</description>
                <environment>&lt;p&gt;Operating System: All&lt;br/&gt;
Platform: All&lt;/p&gt;</environment>
        <key id="27739">OPNFLWPLUG-471</key>
            <summary>NullPointerException from OpenflowPlugin.application.StatisticsManagerImpl.java:304</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="vasanthan_balasubram@dell.com">Vasanthan Balasubramaniyan</assignee>
                                    <reporter username="vasanthan_balasubram@dell.com">Vasanthan Balasubramaniyan</reporter>
                        <labels>
                    </labels>
                <created>Fri, 29 May 2015 11:16:57 +0000</created>
                <updated>Mon, 27 Sep 2021 09:01:33 +0000</updated>
                            <resolved>Tue, 2 Jun 2015 18:08:52 +0000</resolved>
                                                                    <component>General</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="56942" author="kramesha@cisco.com" created="Fri, 29 May 2015 16:09:47 +0000"  >&lt;p&gt;Its happening as sometimes we see more than 1 nodeRemoved notifications come in.&lt;/p&gt;

&lt;p&gt;Working on the fix.&lt;/p&gt;</comment>
                            <comment id="56943" author="kramesha@cisco.com" created="Fri, 29 May 2015 21:41:22 +0000"  >&lt;p&gt;Hi Vasanthan,&lt;/p&gt;

&lt;p&gt;Check the latest and mark it as closed after verification.&lt;/p&gt;

&lt;p&gt;Thanks&lt;br/&gt;
Kamal&lt;/p&gt;</comment>
                            <comment id="56944" author="vasanthan_balasubram@dell.com" created="Mon, 1 Jun 2015 11:30:03 +0000"  >&lt;p&gt;Tested on Build#2064 (integration).&lt;/p&gt;

&lt;p&gt;Tested with upto 254 switches doesn&apos;t generated this exception and TSDR collection was successful.&lt;/p&gt;


&lt;p&gt;Note: Unable to move the status from &quot;Waiting for Review&quot; to &quot;Closed&quot;.Pls close this bugzilla once review completed.&lt;/p&gt;</comment>
                            <comment id="56945" author="vasanthan_balasubram@dell.com" created="Mon, 1 Jun 2015 11:33:03 +0000"  >&lt;p&gt;On Build#2064 with CpQD switch this issue is visible.&lt;/p&gt;

&lt;p&gt;Note: openvswitch with 2.3.1 issue not visible!&lt;/p&gt;

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

&lt;p&gt;OT | translation problem: null&lt;br/&gt;
2015-06-01 17:00:55,206 | WARN  | OFmsgFinisher-0  | TicketFinisherImpl               | 254 - org.opendaylight.openflowplugin - 0.1.0.SNAPSHOT | processing (translate, publish) of ticket failed&lt;br/&gt;
java.util.concurrent.ExecutionException: java.lang.NullPointerException&lt;br/&gt;
        at com.google.common.util.concurrent.AbstractFuture$Sync.getValue(AbstractFuture.java:299)&lt;span class=&quot;error&quot;&gt;&amp;#91;61:com.google.guava:18.0.0&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at com.google.common.util.concurrent.AbstractFuture$Sync.get(AbstractFuture.java:286)&lt;span class=&quot;error&quot;&gt;&amp;#91;61:com.google.guava:18.0.0&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:116)&lt;span class=&quot;error&quot;&gt;&amp;#91;61:com.google.guava:18.0.0&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.openflowplugin.openflow.md.queue.TicketFinisherImpl.run(TicketFinisherImpl.java:50)&lt;span class=&quot;error&quot;&gt;&amp;#91;254:org.opendaylight.openflowplugin:0.1.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_75&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_75&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_75&amp;#93;&lt;/span&gt;&lt;br/&gt;
Caused by: java.lang.NullPointerException&lt;br/&gt;
        at org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.ActionConvertor.toMDSalActions(ActionConvertor.java:944)&lt;span class=&quot;error&quot;&gt;&amp;#91;254:org.opendaylight.openflowplugin:0.1.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.OFToMDSalFlowConvertor.toSALInstruction(OFToMDSalFlowConvertor.java:71)&lt;span class=&quot;error&quot;&gt;&amp;#91;254:org.opendaylight.openflowplugin:0.1.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.FlowStatsResponseConvertor.toSALFlowStats(FlowStatsResponseConvertor.java:103)&lt;span class=&quot;error&quot;&gt;&amp;#91;254:org.opendaylight.openflowplugin:0.1.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.FlowStatsResponseConvertor.toSALFlowStatsList(FlowStatsResponseConvertor.java:49)&lt;span class=&quot;error&quot;&gt;&amp;#91;254:org.opendaylight.openflowplugin:0.1.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.openflowplugin.openflow.md.core.translator.MultipartReplyTranslator.translate(MultipartReplyTranslator.java:134)&lt;span class=&quot;error&quot;&gt;&amp;#91;254:org.opendaylight.openflowplugin:0.1.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;/p&gt;</comment>
                            <comment id="56946" author="kramesha@cisco.com" created="Mon, 1 Jun 2015 19:43:42 +0000"  >&lt;p&gt;This does not seem to be related to the statistics bug.&lt;/p&gt;

&lt;p&gt;It is happening in the converter when converting actions present in the flow to md-sal actions.&lt;/p&gt;

&lt;p&gt;Seems like the action-list inside the instruction of the flow is null.&lt;/p&gt;</comment>
                            <comment id="56947" author="vasanthan_balasubram@dell.com" created="Tue, 2 Jun 2015 11:15:02 +0000"  >&lt;p&gt;(In reply to Kamal Rameshan from comment #5)&lt;br/&gt;
&amp;gt; This does not seem to be related to the statistics bug.&lt;br/&gt;
&amp;gt; &lt;br/&gt;
&amp;gt; It is happening in the converter when converting actions present in the flow&lt;br/&gt;
&amp;gt; to md-sal actions.&lt;br/&gt;
&amp;gt; &lt;br/&gt;
&amp;gt; Seems like the action-list inside the instruction of the flow is null.&lt;/p&gt;


&lt;p&gt;Does required raised another bugzilla in MD-SAL?&lt;/p&gt;</comment>
                            <comment id="56948" author="kramesha@cisco.com" created="Tue, 2 Jun 2015 18:08:52 +0000"  >&lt;p&gt;Are you asking that do we need a separate bug to capture this issue?&lt;/p&gt;

&lt;p&gt;I would say yes. And not under MDSAL but under Openflowplugin.&lt;/p&gt;

&lt;p&gt;Also under that bug description , please give as much details as possible, so that we can reproduce. &lt;br/&gt;
For instance if you can post the flow xml which is causing the flow-stats to break it would be helpful.&lt;/p&gt;

&lt;p&gt;I am marking this issue as resolved.&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>3431</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=3431]]></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_10000" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|i031cv:</customfieldvalue>

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