<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 19:54:08 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-889] DataStore failure in StatisticsManager</title>
                <link>https://jira.opendaylight.org/browse/CONTROLLER-889</link>
                <project id="10113" key="CONTROLLER">controller</project>
                    <description>&lt;p&gt;I see the following exception in the karaf log:&lt;/p&gt;

&lt;p&gt;2014-09-23 04:59:58,150 | WARN  | ds-oper-thread-0 | StatisticsManagerImpl            | 218 - org.opendaylight.controller.md.statistics-manager - 1.1.0.SNAPSHOT | Stat DataStore Operation executor fail!&lt;br/&gt;
java.lang.IllegalArgumentException: value already present: Uri [_value=5|8|9|8|64999|Match [_ethernetMatch=EthernetMatch [_ethernetType=EthernetType [_type=EtherType &lt;span class=&quot;error&quot;&gt;&amp;#91;_value=2048&amp;#93;&lt;/span&gt;, augmentation=[]], augmentation=[]], _ipMatch=IpMatch [_ipProtocol=1, augmentation=[]], augmentation=[GeneralAugMatchNodesNodeTableFlow [_extensionList=[ExtensionList [_extension=Extension [augmentation=[NxAugMatchNodesNodeTableFlow [_nxmNxReg=NxmNxReg [_reg=class org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.NxmNxReg0, _value=5, augmentation=[]]]]], _extensionKey=class org.opendaylight.yang.gen.v1.urn.opendaylight.openflowplugin.extension.nicira.match.rev140714.NxmNxReg0Key, _key=ExtensionListKey &lt;span class=&quot;error&quot;&gt;&amp;#91;_extensionKey=class org.opendaylight.yang.gen.v1.urn.opendaylight.openflowplugin.extension.nicira.match.rev140714.NxmNxReg0Key&amp;#93;&lt;/span&gt;, augmentation=[]], ExtensionList [_extension=Extension [augmentation=[NxAugMatchNodesNodeTableFlow [_nxmNxReg=NxmNxReg [_reg=class org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.NxmNxReg1, _value=8, augmentation=[]]]]], _extensionKey=class org.opendaylight.yang.gen.v1.urn.opendaylight.openflowplugin.extension.nicira.match.rev140714.NxmNxReg1Key, _key=ExtensionListKey &lt;span class=&quot;error&quot;&gt;&amp;#91;_extensionKey=class org.opendaylight.yang.gen.v1.urn.opendaylight.openflowplugin.extension.nicira.match.rev140714.NxmNxReg1Key&amp;#93;&lt;/span&gt;, augmentation=[]], ExtensionList [_extension=Extension [augmentation=[NxAugMatchNodesNodeTableFlow [_nxmNxReg=NxmNxReg [_reg=class org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.NxmNxReg2, _value=9, augmentation=[]]]]], _extensionKey=class org.opendaylight.yang.gen.v1.urn.opendaylight.openflowplugin.extension.nicira.match.rev140714.NxmNxReg2Key, _key=ExtensionListKey &lt;span class=&quot;error&quot;&gt;&amp;#91;_extensionKey=class org.opendaylight.yang.gen.v1.urn.opendaylight.openflowplugin.extension.nicira.match.rev140714.NxmNxReg2Key&amp;#93;&lt;/span&gt;, augmentation=[]], ExtensionList [_extension=Extension [augmentation=[NxAugMatchNodesNodeTableFlow [_nxmNxReg=NxmNxReg [_reg=class org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.NxmNxReg3, _value=8, augmentation=[]]]]], _extensionKey=class org.opendaylight.yang.gen.v1.urn.opendaylight.openflowplugin.extension.nicira.match.rev140714.NxmNxReg3Key, _key=ExtensionListKey &lt;span class=&quot;error&quot;&gt;&amp;#91;_extensionKey=class org.opendaylight.yang.gen.v1.urn.opendaylight.openflowplugin.extension.nicira.match.rev140714.NxmNxReg3Key&amp;#93;&lt;/span&gt;, augmentation=[]]]]]]]&lt;br/&gt;
        at com.google.common.collect.HashBiMap.put(HashBiMap.java:241)&lt;span class=&quot;error&quot;&gt;&amp;#91;78:com.google.guava:14.0.1&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at com.google.common.collect.HashBiMap.put(HashBiMap.java:218)&lt;span class=&quot;error&quot;&gt;&amp;#91;78:com.google.guava:14.0.1&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.controller.md.statistics.manager.impl.StatListenCommitFlow$TableFlowUpdateState.&amp;lt;init&amp;gt;(StatListenCommitFlow.java:305)&lt;span class=&quot;error&quot;&gt;&amp;#91;218:org.opendaylight.controller.md.statistics-manager:1.1.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.controller.md.statistics.manager.impl.StatListenCommitFlow$NodeUpdateState.&amp;lt;init&amp;gt;(StatListenCommitFlow.java:269)&lt;span class=&quot;error&quot;&gt;&amp;#91;218:org.opendaylight.controller.md.statistics-manager:1.1.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.controller.md.statistics.manager.impl.StatListenCommitFlow.statsFlowCommitAll(StatListenCommitFlow.java:219)&lt;span class=&quot;error&quot;&gt;&amp;#91;218:org.opendaylight.controller.md.statistics-manager:1.1.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.controller.md.statistics.manager.impl.StatListenCommitFlow.access$100(StatListenCommitFlow.java:82)&lt;span class=&quot;error&quot;&gt;&amp;#91;218:org.opendaylight.controller.md.statistics-manager:1.1.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.controller.md.statistics.manager.impl.StatListenCommitFlow$2.applyOperation(StatListenCommitFlow.java:194)&lt;span class=&quot;error&quot;&gt;&amp;#91;218:org.opendaylight.controller.md.statistics-manager:1.1.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.controller.md.statistics.manager.impl.StatisticsManagerImpl.run(StatisticsManagerImpl.java:196)&lt;span class=&quot;error&quot;&gt;&amp;#91;218:org.opendaylight.controller.md.statistics-manager:1.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_65&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_65&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_65&amp;#93;&lt;/span&gt;&lt;/p&gt;



&lt;p&gt;Thereafter, I see the following repeat over and over in the logs:&lt;/p&gt;

&lt;p&gt;2014-09-23 05:00:28,123 | WARN  | ds-oper-thread-0 | StatisticsManagerImpl            | 218 - org.opendaylight.controller.md.statistics-manager - 1.1.0.SNAPSHOT | Stat DataStoreOperation unexpected State!&lt;br/&gt;
java.lang.IllegalStateException: Previous transaction DOM-OPER-621 is not ready yet&lt;br/&gt;
        at com.google.common.base.Preconditions.checkState(Preconditions.java:176)&lt;span class=&quot;error&quot;&gt;&amp;#91;78:com.google.guava:14.0.1&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.controller.md.sal.dom.store.impl.InMemoryDOMDataStore$DOMStoreTransactionChainImpl.getSnapshot(InMemoryDOMDataStore.java:244)&lt;span class=&quot;error&quot;&gt;&amp;#91;166:org.opendaylight.controller.sal-inmemory-datastore:1.1.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.controller.md.sal.dom.store.impl.InMemoryDOMDataStore$DOMStoreTransactionChainImpl.newReadWriteTransaction(InMemoryDOMDataStore.java:266)&lt;span class=&quot;error&quot;&gt;&amp;#91;166:org.opendaylight.controller.sal-inmemory-datastore:1.1.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.controller.md.sal.dom.broker.impl.AbstractDOMForwardedTransactionFactory.newReadWriteTransaction(AbstractDOMForwardedTransactionFactory.java:183)&lt;span class=&quot;error&quot;&gt;&amp;#91;160:org.opendaylight.controller.sal-broker-impl:1.1.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.controller.md.sal.binding.impl.BindingTranslatedTransactionChain.newReadWriteTransaction(BindingTranslatedTransactionChain.java:63)&lt;span class=&quot;error&quot;&gt;&amp;#91;163:org.opendaylight.controller.sal-binding-broker-impl:1.1.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.controller.md.statistics.manager.impl.StatisticsManagerImpl.run(StatisticsManagerImpl.java:191)&lt;span class=&quot;error&quot;&gt;&amp;#91;218:org.opendaylight.controller.md.statistics-manager:1.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_65&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_65&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_65&amp;#93;&lt;/span&gt;&lt;/p&gt;</description>
                <environment>&lt;p&gt;Operating System: All&lt;br/&gt;
Platform: All&lt;/p&gt;</environment>
        <key id="25443">CONTROLLER-889</key>
            <summary>DataStore failure in StatisticsManager</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="-1">Unassigned</assignee>
                                    <reporter username="tbachman@yahoo.com">Thomas Bachman</reporter>
                        <labels>
                    </labels>
                <created>Tue, 23 Sep 2014 14:19:56 +0000</created>
                <updated>Thu, 19 Oct 2017 22:13:24 +0000</updated>
                            <resolved>Tue, 5 May 2015 15:17:12 +0000</resolved>
                                    <version>Helium</version>
                                                    <component>adsal</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>5</watches>
                                                                                                                <comments>
                            <comment id="49370" author="mirehak@cisco.com" created="Wed, 24 Sep 2014 17:37:14 +0000"  >&lt;p&gt;&lt;a href=&quot;https://git.opendaylight.org/gerrit/11539&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/11539&lt;/a&gt;&lt;br/&gt;
this is just a draft catching the exception - not fixing the reason.&lt;/p&gt;

&lt;p&gt;Processing statistic item where flow hash or flow.if are already in BiMap thows exception. This state might be result of node reconciliation where device sends new set of statistics and those are mistakenly joined with old ones.&lt;/p&gt;

&lt;p&gt;Added logging should shed more light on that.&lt;/p&gt;</comment>
                            <comment id="49371" author="tony.tkacik@gmail.com" created="Thu, 25 Sep 2014 07:19:39 +0000"  >&lt;p&gt;Submitted workaround is not fix,&lt;br/&gt;
what actually may happened that there was Flow hash collision,&lt;br/&gt;
used BiMap has strong requiremed of one to one mapping.&lt;/p&gt;

&lt;p&gt;Using try block it is possible to mark flow with colliding hash as alien flow.&lt;br/&gt;
This alien flow ID will not make it into mapping, so next time flow will be reported&lt;br/&gt;
with different ID and may leave garbage in inventory.&lt;/p&gt;</comment>
                            <comment id="49372" author="tbachman@yahoo.com" created="Thu, 25 Sep 2014 18:28:35 +0000"  >&lt;p&gt;It appears that these are now caught. I still see messages in the logs that I&apos;m guessing are the result of catching the exceptions. Since the source of the exception hasn&apos;t been addressed, it seems like we should keep the bug open, but this doesn&apos;t seem like a blocking issue any more.&lt;/p&gt;</comment>
                            <comment id="49375" author="mirehak@cisco.com" created="Thu, 25 Sep 2014 21:07:52 +0000"  >&lt;p&gt;Attachment tbachman-karaf-3-bug2019.log has been added with description: log after catching bimap exception&lt;/p&gt;</comment>
                            <comment id="49373" author="tbachman@yahoo.com" created="Fri, 26 Sep 2014 14:56:32 +0000"  >&lt;p&gt;Fixed in:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://git.opendaylight.org/gerrit/11598&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/11598&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="49374" author="carolsand@gmail.com" created="Tue, 5 May 2015 15:17:12 +0000"  >&lt;p&gt;This bug is part of the project to Move all ADSAL associated component bugs to ADSAL.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10002">
                    <name>Duplicate</name>
                                                                <inwardlinks description="is duplicated by">
                                        <issuelink>
            <issuekey id="25456">CONTROLLER-902</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                            <attachment id="13439" name="tbachman-karaf-3-bug2019.log" size="333569" author="michal.rehak" created="Thu, 25 Sep 2014 21:07:52 +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>2049</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=2049]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10202" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Priority</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10301"><![CDATA[Normal]]></customfieldvalue>

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

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