<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 20:02:04 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>[INFRAUTILS-27] Ready API for more fine grained per-bundle notifications</title>
                <link>https://jira.opendaylight.org/browse/INFRAUTILS-27</link>
                <project id="10129" key="INFRAUTILS">infrautils</project>
                    <description>&lt;p&gt;&lt;a href=&quot;https://jira.opendaylight.org/secure/ViewProfile.jspa?name=k.faseela&quot; class=&quot;user-hover&quot; rel=&quot;k.faseela&quot;&gt;k.faseela&lt;/a&gt; (in private email) expressed interest in infrautils.ready be able to report more fine grained per-bundle notifications. She would like to consume this in infrautils.diagstatus, and said specifically this would be useful for her:&lt;/p&gt;

&lt;p&gt;&lt;tt&gt;org.opendaylight.infrautils.ready.SystemReadyMonitor&lt;/tt&gt; should either allow another registerListener(), or we could directly extend the existing &lt;tt&gt;SystemReadyListener&lt;/tt&gt;, to get notified not only of &lt;tt&gt;onSystemBootReady()&lt;/tt&gt; as we have, but also &lt;tt&gt;onBundleActive(String bundleSymbolicName)&lt;/tt&gt;. &lt;/p&gt;

&lt;p&gt;There is of course already lower level pure OSGi API for something lie this, but infrautils.ready should do it integrated with Blueprint - probably based on the odlparent TestBundleDiag thing (which may need an extension for this).&lt;/p&gt;</description>
                <environment></environment>
        <key id="28880">INFRAUTILS-27</key>
            <summary>Ready API for more fine grained per-bundle notifications</summary>
                <type id="10100" iconUrl="https://jira.opendaylight.org/secure/viewavatar?size=xsmall&amp;avatarId=10310&amp;avatarType=issuetype">Improvement</type>
                                            <priority id="3" iconUrl="https://jira.opendaylight.org/images/icons/priorities/major.svg">Medium</priority>
                        <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="10001">Won&apos;t Do</resolution>
                                        <assignee username="-1">Unassigned</assignee>
                                    <reporter username="vorburger">Michael Vorburger</reporter>
                        <labels>
                    </labels>
                <created>Wed, 22 Nov 2017 16:34:52 +0000</created>
                <updated>Tue, 29 Sep 2020 20:37:18 +0000</updated>
                            <resolved>Tue, 29 Sep 2020 20:37:18 +0000</resolved>
                                                                    <component>ready</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>1</watches>
                                                                                                                <comments>
                            <comment id="60264" author="vorburger" created="Tue, 28 Nov 2017 19:15:04 +0000"  >&lt;p&gt;Design: I&apos;ll build this on top of the change in&#160;&lt;a href=&quot;https://jira.opendaylight.org/browse/INFRAUTILS-17&quot; title=&quot;BundleDiagInfos Missing dependencies logs in working distros&quot; class=&quot;issue-link&quot; data-issue-key=&quot;INFRAUTILS-17&quot;&gt;&lt;del&gt;INFRAUTILS-17&lt;/del&gt;&lt;/a&gt;, which exposes the&#160;BundleDiagInfos during&#160;TestBundleDiag&#160;checkBundleDiagInfos. Then we can add this more fine-grained Bundle-based info to be exposed to&#160;BundleDiagInfos, which&#160;SystemReadyImpl can then exploit and do stuff with - such as invoke such a new listener.&lt;/p&gt;</comment>
                            <comment id="60271" author="vorburger" created="Tue, 28 Nov 2017 21:14:09 +0000"  >&lt;p&gt;&lt;a href=&quot;https://git.opendaylight.org/gerrit/#/c/66030/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/#/c/66030/&lt;/a&gt;&#160;for odlparent; I&apos;ll do the infrautils part when that is merged.&lt;/p&gt;</comment>
                            <comment id="61342" author="vorburger" created="Wed, 28 Feb 2018 12:38:19 +0000"  >&lt;p&gt;&lt;a href=&quot;https://git.opendaylight.org/gerrit/#/c/68872/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/#/c/68872/&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="62890" author="vorburger" created="Wed, 9 May 2018 10:17:06 +0000"  >&lt;p&gt;FTR: &lt;a href=&quot;https://jira.opendaylight.org/secure/ViewProfile.jspa?name=k.faseela&quot; class=&quot;user-hover&quot; rel=&quot;k.faseela&quot;&gt;k.faseela&lt;/a&gt; yesterday merged c/68872 but today had to revert it (in c/71887) because somehow this broke CSIT - we&apos;ll investigate how; apparently this &lt;a href=&quot;https://logs.opendaylight.org/releng/vex-yul-odl-jenkins-1/genius-csit-1node-gate-all-fluorine/49/odl1_karaf.log.gz&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://logs.opendaylight.org/releng/vex-yul-odl-jenkins-1/genius-csit-1node-gate-all-fluorine/49/odl1_karaf.log.gz&lt;/a&gt; should be looked at...&lt;/p&gt;</comment>
                            <comment id="62891" author="vorburger" created="Wed, 9 May 2018 10:22:55 +0000"  >&lt;p&gt;&amp;gt; should be looked at...&lt;/p&gt;

&lt;p&gt;it has those lines:&lt;/p&gt;

&lt;div class=&quot;preformatted panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;preformattedContent panelContent&quot;&gt;
&lt;pre&gt;2018-05-09T09:26:53,172 | INFO  | awaitility[checkBundleDiagInfos] | SystemReadyImpl                  | 356 - org.opendaylight.infrautils.ready-impl - 1.4.0.SNAPSHOT | checkBundleDiagInfos: Elapsed time 10s, remaining time 289s, diag: Active {Installed=0, Resolved=6, Unknown=0, GracePeriod=0, Waiting=0, Starting=0, Active=532, Stopping=0, Failure=0}
2018-05-09T09:26:53,180 | INFO  | SystemReadyService-0 | TestBundleDiag                   | 356 - org.opendaylight.infrautils.ready-impl - 1.4.0.SNAPSHOT | diag: Active {Installed=0, Resolved=6, Unknown=0, GracePeriod=0, Waiting=0, Starting=0, Active=532, Stopping=0, Failure=0}
2018-05-09T09:26:53,181 | INFO  | SystemReadyService-0 | SystemReadyImpl                  | 356 - org.opendaylight.infrautils.ready-impl - 1.4.0.SNAPSHOT | System ready; AKA: Aye captain, all warp coils are now operating at peak efficiency! [M.]&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;but it&apos;s missing this which I think normally we see, because OFP or diagtatus or something registers a &lt;tt&gt;SystemReadyListener&lt;/tt&gt; &lt;a href=&quot;https://jira.opendaylight.org/secure/ViewProfile.jspa?name=k.faseela&quot; class=&quot;user-hover&quot; rel=&quot;k.faseela&quot;&gt;k.faseela&lt;/a&gt; does this help to further investigate?&lt;/p&gt;

&lt;div class=&quot;preformatted panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;preformattedContent panelContent&quot;&gt;
&lt;pre&gt;Now notifying all its registered SystemReadyListeners...&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</comment>
                            <comment id="68648" author="rovarga" created="Tue, 29 Sep 2020 20:37:18 +0000"  >&lt;p&gt;There is an unspoken assumption in this issue that we are using BluePrint and have a lifecycle tied to that &#8211; which in fact operates on bundle level and usually sees all components thrown into a single BP container.&lt;/p&gt;

&lt;p&gt;This is not true, really, as our dependencies are already expressed at a much lower level, which is services. &lt;a href=&quot;https://jira.opendaylight.org/browse/CONTROLLER-1882&quot; title=&quot;Inject DataBroker only when all shards have leaders&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CONTROLLER-1882&quot;&gt;&lt;del&gt;CONTROLLER-1882&lt;/del&gt;&lt;/a&gt; has been implemented and it ensures that services are only injected after they have reached initial convergence. These operate on OSGi Declarative Services, hence are much more granular than bundle-level and map properly to OSGi service lifecycle (unlike BluePrint).&lt;/p&gt;

&lt;p&gt;In static environments the entity performing service stitching is responsible for driving components correctly, so that they have reached initial readiness.&lt;/p&gt;

&lt;p&gt;What happens if the services become un-ready, is a whole another issue. OSGi provides one environment which solves the question (via service deactivation and rewiring). For other environments that question may be in appropriate, or have a wildly different answer &#8211; and is not really something which would be in scope for an SDN controller.&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10000">
                    <name>Blocks</name>
                                            <outwardlinks description="blocks">
                                        <issuelink>
            <issuekey id="19500">INFRAUTILS-11</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="is blocked by">
                                        <issuelink>
            <issuekey id="19506">INFRAUTILS-17</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10003">
                    <name>Relates</name>
                                                                <inwardlinks description="relates to">
                                        <issuelink>
            <issuekey id="30047">TSC-117</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <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_10000" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|i038dz:</customfieldvalue>

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