<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 20:32:46 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-548] Stable Lithium OFPlugin : Sporadic seizure of Flow Inventory when controller starts/restarts</title>
                <link>https://jira.opendaylight.org/browse/OPNFLWPLUG-548</link>
                <project id="10155" key="OPNFLWPLUG">OpenFlowPlugin</project>
                    <description>&lt;p&gt;Observed in : Lithium Stable release&lt;/p&gt;

&lt;p&gt;Symptoms :&lt;br/&gt;
1. When controller starts, default flows do not get pushed&lt;br/&gt;
2. Querying Inventory Oper DS from RESTCONF would hang&lt;/p&gt;

&lt;p&gt;Looking at FlowCapableInventoryProvider.enque method along with thread-dump, this MAY occur in few other scenarios too (not tested though)&lt;/p&gt;

&lt;p&gt;Upon taking thread-dump  following is noticed (see &apos;locked&apos; cases)&lt;/p&gt;

&lt;p&gt;&quot;FlowCapableInventoryProvider&quot; daemon prio=10 tid=0x00007f4a7d4ae000 nid=0x1e11 waiting on condition &lt;span class=&quot;error&quot;&gt;&amp;#91;0x00007f4a69cd9000&amp;#93;&lt;/span&gt;&lt;br/&gt;
   java.lang.Thread.State: WAITING (parking)&lt;br/&gt;
	at sun.misc.Unsafe.park(Native Method)&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;parking to wait for  &amp;lt;0x00000007a3927390&amp;gt; (a com.google.common.util.concurrent.AbstractFuture$Sync)&lt;br/&gt;
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)&lt;br/&gt;
	at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:834)&lt;br/&gt;
	at java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:994)&lt;br/&gt;
	at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1303)&lt;br/&gt;
	at com.google.common.util.concurrent.AbstractFuture$Sync.get(AbstractFuture.java:285)&lt;br/&gt;
	at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:116)&lt;br/&gt;
	at com.google.common.util.concurrent.Uninterruptibles.getUninterruptibly(Uninterruptibles.java:137)&lt;br/&gt;
	at com.google.common.cache.LocalCache$LoadingValueReference.waitForValue(LocalCache.java:3557)&lt;br/&gt;
	at com.google.common.cache.LocalCache$Segment.waitForLoadingValue(LocalCache.java:2302)&lt;br/&gt;
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2191)&lt;br/&gt;
	at com.google.common.cache.LocalCache.get(LocalCache.java:3937)&lt;br/&gt;
	at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3941)&lt;br/&gt;
	at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4824)&lt;br/&gt;
	at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(LocalCache.java:4830)&lt;br/&gt;
	at org.opendaylight.yangtools.binding.data.codec.gen.impl.AbstractStreamWriterGenerator.loadSerializerFor(AbstractStreamWriterGenerator.java:99)&lt;br/&gt;
	at org.opendaylight.yangtools.binding.data.codec.gen.impl.DataObjectSerializerSource.staticInvokeEmitter(DataObjectSerializerSource.java:139)&lt;br/&gt;
	at org.opendaylight.yangtools.binding.data.codec.gen.impl.DataNodeContainerSerializerSource.emitList(DataNodeContainerSerializerSource.java:211)&lt;br/&gt;
	at org.opendaylight.yangtools.binding.data.codec.gen.impl.DataNodeContainerSerializerSource.emitChildInner(DataNodeContainerSerializerSource.java:176)&lt;br/&gt;
	at org.opendaylight.yangtools.binding.data.codec.gen.impl.DataNodeContainerSerializerSource.emitChild(DataNodeContainerSerializerSource.java:158)&lt;br/&gt;
	at org.opendaylight.yangtools.binding.data.codec.gen.impl.DataNodeContainerSerializerSource.emitBody(DataNodeContainerSerializerSource.java:148)&lt;br/&gt;
	at org.opendaylight.yangtools.binding.data.codec.gen.impl.DataNodeContainerSerializerSource.getSerializerBody(DataNodeContainerSerializerSource.java:78)&lt;br/&gt;
	at org.opendaylight.yangtools.binding.data.codec.gen.impl.AbstractStreamWriterGenerator$1$1.get(AbstractStreamWriterGenerator.java:202)&lt;br/&gt;
	at org.opendaylight.yangtools.binding.data.codec.gen.impl.AbstractStreamWriterGenerator$1$1.get(AbstractStreamWriterGenerator.java:199)&lt;br/&gt;
	at org.opendaylight.yangtools.util.ClassLoaderUtils.withClassLoader(ClassLoaderUtils.java:53)&lt;br/&gt;
	at org.opendaylight.yangtools.binding.data.codec.gen.impl.AbstractStreamWriterGenerator$1.customizeClass(AbstractStreamWriterGenerator.java:199)&lt;br/&gt;
	at org.opendaylight.yangtools.sal.binding.generator.util.JavassistUtils.instantiatePrototype(JavassistUtils.java:131)&lt;/li&gt;
	&lt;li&gt;locked &amp;lt;0x00000007a20af098&amp;gt; (a org.opendaylight.yangtools.sal.binding.generator.util.JavassistUtils)&lt;br/&gt;
	at org.opendaylight.yangtools.binding.data.codec.gen.impl.AbstractStreamWriterGenerator.generateEmitter0(AbstractStreamWriterGenerator.java:192)&lt;br/&gt;
	at org.opendaylight.yangtools.binding.data.codec.gen.impl.AbstractStreamWriterGenerator.access$300(AbstractStreamWriterGenerator.java:46)&lt;br/&gt;
	at org.opendaylight.yangtools.binding.data.codec.gen.impl.AbstractStreamWriterGenerator$SerializerImplementationLoader.generateSerializer(AbstractStreamWriterGenerator.java:136)&lt;br/&gt;
	at org.opendaylight.yangtools.binding.data.codec.gen.impl.AbstractStreamWriterGenerator$SerializerImplementationLoader.load(AbstractStreamWriterGenerator.java:124)&lt;br/&gt;
	at org.opendaylight.yangtools.binding.data.codec.gen.impl.AbstractStreamWriterGenerator$SerializerImplementationLoader.load(AbstractStreamWriterGenerator.java:102)&lt;br/&gt;
	at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3527)&lt;br/&gt;
	at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2319)&lt;br/&gt;
	at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2282)&lt;/li&gt;
	&lt;li&gt;locked &amp;lt;0x00000007a3923880&amp;gt; (a com.google.common.cache.LocalCache$WeakEntry)&lt;br/&gt;
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2197)&lt;br/&gt;
	at com.google.common.cache.LocalCache.get(LocalCache.java:3937)&lt;br/&gt;
	at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3941)&lt;br/&gt;
	at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4824)&lt;br/&gt;
	at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(LocalCache.java:4830)&lt;br/&gt;
	at org.opendaylight.yangtools.binding.data.codec.gen.impl.AbstractStreamWriterGenerator.loadSerializerFor(AbstractStreamWriterGenerator.java:99)&lt;br/&gt;
	at org.opendaylight.yangtools.binding.data.codec.gen.impl.DataObjectSerializerSource.staticInvokeEmitter(DataObjectSerializerSource.java:139)&lt;br/&gt;
	at org.opendaylight.yangtools.binding.data.codec.gen.impl.DataNodeContainerSerializerSource.emitList(DataNodeContainerSerializerSource.java:211)&lt;br/&gt;
	at org.opendaylight.yangtools.binding.data.codec.gen.impl.DataNodeContainerSerializerSource.emitChildInner(DataNodeContainerSerializerSource.java:176)&lt;br/&gt;
	at org.opendaylight.yangtools.binding.data.codec.gen.impl.DataNodeContainerSerializerSource.emitChild(DataNodeContainerSerializerSource.java:158)&lt;br/&gt;
	at org.opendaylight.yangtools.binding.data.codec.gen.impl.DataNodeContainerSerializerSource.emitBody(DataNodeContainerSerializerSource.java:148)&lt;br/&gt;
	at org.opendaylight.yangtools.binding.data.codec.gen.impl.DataNodeContainerSerializerSource.getSerializerBody(DataNodeContainerSerializerSource.java:78)&lt;br/&gt;
	at org.opendaylight.yangtools.binding.data.codec.gen.impl.AbstractStreamWriterGenerator$1$1.get(AbstractStreamWriterGenerator.java:202)&lt;br/&gt;
	at org.opendaylight.yangtools.binding.data.codec.gen.impl.AbstractStreamWriterGenerator$1$1.get(AbstractStreamWriterGenerator.java:199)&lt;br/&gt;
	at org.opendaylight.yangtools.util.ClassLoaderUtils.withClassLoader(ClassLoaderUtils.java:53)&lt;br/&gt;
	at org.opendaylight.yangtools.binding.data.codec.gen.impl.AbstractStreamWriterGenerator$1.customizeClass(AbstractStreamWriterGenerator.java:199)&lt;br/&gt;
	at org.opendaylight.yangtools.sal.binding.generator.util.JavassistUtils.instantiatePrototype(JavassistUtils.java:131)&lt;/li&gt;
	&lt;li&gt;locked &amp;lt;0x00000007a20af098&amp;gt; (a org.opendaylight.yangtools.sal.binding.generator.util.JavassistUtils)&lt;br/&gt;
	at org.opendaylight.yangtools.binding.data.codec.gen.impl.AbstractStreamWriterGenerator.generateEmitter0(AbstractStreamWriterGenerator.java:192)&lt;br/&gt;
	at org.opendaylight.yangtools.binding.data.codec.gen.impl.AbstractStreamWriterGenerator.access$300(AbstractStreamWriterGenerator.java:46)&lt;br/&gt;
	at org.opendaylight.yangtools.binding.data.codec.gen.impl.AbstractStreamWriterGenerator$SerializerImplementationLoader.generateSerializer(AbstractStreamWriterGenerator.java:136)&lt;br/&gt;
	at org.opendaylight.yangtools.binding.data.codec.gen.impl.AbstractStreamWriterGenerator$SerializerImplementationLoader.load(AbstractStreamWriterGenerator.java:124)&lt;br/&gt;
	at org.opendaylight.yangtools.binding.data.codec.gen.impl.AbstractStreamWriterGenerator$SerializerImplementationLoader.load(AbstractStreamWriterGenerator.java:102)&lt;br/&gt;
	at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3527)&lt;br/&gt;
	at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2319)&lt;br/&gt;
	at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2282)&lt;/li&gt;
	&lt;li&gt;locked &amp;lt;0x00000007a3a59818&amp;gt; (a com.google.common.cache.LocalCache$WeakEntry)&lt;br/&gt;
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2197)&lt;br/&gt;
	at com.google.common.cache.LocalCache.get(LocalCache.java:3937)&lt;br/&gt;
	at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3941)&lt;br/&gt;
	at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4824)&lt;br/&gt;
	at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(LocalCache.java:4830)&lt;br/&gt;
	at org.opendaylight.yangtools.binding.data.codec.gen.impl.AbstractStreamWriterGenerator.getSerializer(AbstractStreamWriterGenerator.java:89)&lt;br/&gt;
	at org.opendaylight.yangtools.binding.data.codec.impl.BindingNormalizedNodeCodecRegistry$GeneratorLoader.load(BindingNormalizedNodeCodecRegistry.java:276)&lt;br/&gt;
	at org.opendaylight.yangtools.binding.data.codec.impl.BindingNormalizedNodeCodecRegistry$GeneratorLoader.load(BindingNormalizedNodeCodecRegistry.java:273)&lt;br/&gt;
	at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3527)&lt;br/&gt;
	at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2319)&lt;br/&gt;
	at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2282)&lt;/li&gt;
	&lt;li&gt;locked &amp;lt;0x00000007a39275e8&amp;gt; (a com.google.common.cache.LocalCache$WeakEntry)&lt;br/&gt;
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2197)&lt;br/&gt;
	at com.google.common.cache.LocalCache.get(LocalCache.java:3937)&lt;br/&gt;
	at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3941)&lt;br/&gt;
	at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4824)&lt;br/&gt;
	at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(LocalCache.java:4830)&lt;br/&gt;
	at org.opendaylight.yangtools.binding.data.codec.impl.BindingNormalizedNodeCodecRegistry.getSerializer(BindingNormalizedNodeCodecRegistry.java:72)&lt;br/&gt;
	at org.opendaylight.yangtools.binding.data.codec.impl.BindingNormalizedNodeCodecRegistry.toNormalizedNode(BindingNormalizedNodeCodecRegistry.java:106)&lt;br/&gt;
	at org.opendaylight.controller.md.sal.binding.impl.BindingToNormalizedNodeCodec.toNormalizedNode(BindingToNormalizedNodeCodec.java:133)&lt;br/&gt;
	at org.opendaylight.controller.md.sal.binding.impl.AbstractWriteTransaction.merge(AbstractWriteTransaction.java:53)&lt;br/&gt;
	at org.opendaylight.openflowplugin.applications.inventory.manager.NodeChangeCommiter$5.applyOperation(NodeChangeCommiter.java:181)&lt;br/&gt;
	at org.opendaylight.openflowplugin.applications.inventory.manager.FlowCapableInventoryProvider.createCustomizedTransaction(FlowCapableInventoryProvider.java:167)&lt;br/&gt;
	at org.opendaylight.openflowplugin.applications.inventory.manager.FlowCapableInventoryProvider.submitOperations(FlowCapableInventoryProvider.java:108)&lt;br/&gt;
	at org.opendaylight.openflowplugin.applications.inventory.manager.FlowCapableInventoryProvider.run(FlowCapableInventoryProvider.java:82)&lt;br/&gt;
	at java.lang.Thread.run(Thread.java:745)&lt;/li&gt;
&lt;/ul&gt;



&lt;p&gt;Root lock points to &lt;br/&gt;
locked &amp;lt;0x00000007a20af098&amp;gt; (a org.opendaylight.yangtools.sal.binding.generator.util.JavassistUtils)&lt;/p&gt;

&lt;p&gt;This occurs 4 or 5 out of 10 times for nodal reboot / start scenarios.&lt;/p&gt;</description>
                <environment>&lt;p&gt;Operating System: All&lt;br/&gt;
Platform: All&lt;/p&gt;</environment>
        <key id="27816">OPNFLWPLUG-548</key>
            <summary>Stable Lithium OFPlugin : Sporadic seizure of Flow Inventory when controller starts/restarts</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="muthukumaran.k@ericsson.com">Muthukumaran Kothandaraman</reporter>
                        <labels>
                    </labels>
                <created>Wed, 16 Sep 2015 11:56:26 +0000</created>
                <updated>Mon, 27 Sep 2021 09:01:38 +0000</updated>
                            <resolved>Thu, 21 Jul 2016 16:19:01 +0000</resolved>
                                                                    <component>General</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>1</watches>
                                                                                                                <comments>
                            <comment id="57326" author="muthukumaran.k@ericsson.com" created="Wed, 16 Sep 2015 11:56:26 +0000"  >&lt;p&gt;Attachment thread.dump has been added with description: Thread dump for sporadic seizure in FlowCapableInventoryProvider&lt;/p&gt;</comment>
                            <comment id="57325" author="muthukumaran.k@ericsson.com" created="Thu, 21 Jul 2016 16:19:01 +0000"  >&lt;p&gt;No longer seen in later builds.&lt;/p&gt;</comment>
                    </comments>
                    <attachments>
                            <attachment id="14008" name="thread.dump" size="332005" author="muthukumaran.k@ericsson.com" created="Wed, 16 Sep 2015 11:56:26 +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>4320</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=4320]]></customfieldvalue>

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

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