<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 20:35:26 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>[OVSDB-77] Karaf : InventoryListener Event replay code missing in Library on plugin bundle start</title>
                <link>https://jira.opendaylight.org/browse/OVSDB-77</link>
                <project id="10158" key="OVSDB">ovsdb</project>
                    <description>&lt;p&gt;Though it is a generic problem, it is highly exposed in Karaf runtime.&lt;/p&gt;

&lt;p&gt;When a passive OVSDB connection is established with the Controller, the OVSDB library uses handleNewPassiveConnection method to inform all the registered listener about the new OVSDB connection. But this works only if the plugin bundle is up and running at this time.&lt;/p&gt;

&lt;p&gt;Since Karaf takes an alacarte approach, it is possible that the Library feature alone is brought up first followed by the plugin feature. If any OVSDB connections were established with the Library before the Plugin feature is installed, those events are never played back to the Plugin.&lt;/p&gt;

&lt;p&gt;The fix is to play back the existing and known connections in library to the newly registering connection listener. Something like :&lt;/p&gt;

&lt;p&gt;    	for (OvsdbClient client : connections.keySet()) &lt;/p&gt;
{
    		listener.connected(client);
    	}

&lt;p&gt;in registerConnectionListener().&lt;/p&gt;</description>
                <environment>&lt;p&gt;Operating System: Mac OS&lt;br/&gt;
Platform: PC&lt;/p&gt;</environment>
        <key id="21769">OVSDB-77</key>
            <summary>Karaf : InventoryListener Event replay code missing in Library on plugin bundle start</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="mavenugo@gmail.com">Madhu Venugopal</reporter>
                        <labels>
                    </labels>
                <created>Thu, 11 Sep 2014 04:12:01 +0000</created>
                <updated>Thu, 19 Oct 2017 21:29:03 +0000</updated>
                            <resolved>Tue, 12 Jan 2016 23:34:08 +0000</resolved>
                                    <version>unspecified</version>
                                                    <component>Library</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>4</watches>
                                                                                                                <comments>
                            <comment id="40690" author="mavenugo@gmail.com" created="Thu, 11 Sep 2014 12:37:35 +0000"  >
&lt;p&gt;Or it can also be implemented as a pull model from the Plugin (in start() of the InventoryListener) To Pull all the existing connections from the Library.&lt;/p&gt;

&lt;p&gt;This approach might work better because at the start(), it is guaranteed that all of the other dependencies are resolved and hence the bundle is at a much better position to handle any connection that might pre-exist.&lt;/p&gt;

&lt;p&gt;I would still suggest spawning a thread to handle the triggered connection event.&lt;/p&gt;</comment>
                            <comment id="40691" author="hagbard@gmail.com" created="Fri, 12 Sep 2014 14:19:41 +0000"  >&lt;p&gt;This is just another example of a bundle load order bug.  The indeterminacy in OSGI bundle load order makes it a heisenbug most likely to be seen in the field by customers due to variations in bundle load order revealing it.&lt;/p&gt;

&lt;p&gt;Karaf brings more determinacy, and thus will flush out bugs of this kind, effectively turning customer found defects into things that can be caught by testing.&lt;/p&gt;

&lt;p&gt;Since things using the config subsystem are loading deterministically, there should not be bugs of this sort in features wired using it.&lt;/p&gt;</comment>
                            <comment id="40692" author="shague@redhat.com" created="Tue, 12 Jan 2016 23:34:08 +0000"  >&lt;p&gt;Code is deprecated.&lt;/p&gt;</comment>
                    </comments>
                    <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                <customfield id="customfield_10205" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Component Version</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10364"><![CDATA[ovsdb-library - 1.0.0]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <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>1802</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=1802]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10204" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>ODL SR Target Milestone</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10369"><![CDATA[Helium-RC0]]></customfieldvalue>

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

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