<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 19:13:49 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>[BGPCEP-680] NPE during singleton startup</title>
                <link>https://jira.opendaylight.org/browse/BGPCEP-680</link>
                <project id="10108" key="BGPCEP">bgpcep</project>
                    <description>&lt;p&gt;2017-08-04 17:06:30,736 | ERROR | ult-dispatcher-3 | ClusterSingletonServiceGroupImpl | 183 - org.opendaylight.mdsal.singleton-dom-impl - 2.3.0.Nitrogen | Unexpected exception state for service Provider example-bgp-rib-service-group in TakeLeadership&lt;br/&gt;
java.lang.NullPointerException&lt;br/&gt;
        at org.opendaylight.protocol.bgp.rib.impl.RIBImpl.startLocRib(RIBImpl.java:181)&lt;span class=&quot;error&quot;&gt;&amp;#91;225:org.opendaylight.bgpcep.bgp-rib-impl:0.8.0.Nitrogen&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at java.lang.Iterable.forEach(Iterable.java:75)&lt;span class=&quot;error&quot;&gt;&amp;#91;:1.8.0_141&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.protocol.bgp.rib.impl.RIBImpl.instantiateServiceInstance(RIBImpl.java:353)&lt;span class=&quot;error&quot;&gt;&amp;#91;225:org.opendaylight.bgpcep.bgp-rib-impl:0.8.0.Nitrogen&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.mdsal.singleton.dom.impl.ClusterSingletonServiceRegistrationDelegator.instantiateServiceInstance(ClusterSingletonServiceRegistrationDelegator.java:47)&lt;span class=&quot;error&quot;&gt;&amp;#91;183:org.opendaylight.mdsal.singleton-dom-impl:2.3.0.Nitrogen&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.mdsal.singleton.dom.impl.ClusterSingletonServiceGroupImpl.takeOwnership(ClusterSingletonServiceGroupImpl.java:305)&lt;span class=&quot;error&quot;&gt;&amp;#91;183:org.opendaylight.mdsal.singleton-dom-impl:2.3.0.Nitrogen&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.mdsal.singleton.dom.impl.ClusterSingletonServiceGroupImpl.ownershipChanged(ClusterSingletonServiceGroupImpl.java:249)&lt;span class=&quot;error&quot;&gt;&amp;#91;183:org.opendaylight.mdsal.singleton-dom-impl:2.3.0.Nitrogen&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.mdsal.singleton.dom.impl.AbstractClusterSingletonServiceProviderImpl.ownershipChanged(AbstractClusterSingletonServiceProviderImpl.java:146)&lt;span class=&quot;error&quot;&gt;&amp;#91;183:org.opendaylight.mdsal.singleton-dom-impl:2.3.0.Nitrogen&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.mdsal.singleton.dom.impl.DOMClusterSingletonServiceProviderImpl.ownershipChanged(DOMClusterSingletonServiceProviderImpl.java:23)&lt;span class=&quot;error&quot;&gt;&amp;#91;183:org.opendaylight.mdsal.singleton-dom-impl:2.3.0.Nitrogen&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.controller.cluster.datastore.entityownership.EntityOwnershipListenerActor.onEntityOwnershipChanged(EntityOwnershipListenerActor.java:44)&lt;span class=&quot;error&quot;&gt;&amp;#91;133:org.opendaylight.controller.sal-distributed-datastore:1.6.0.Nitrogen&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.controller.cluster.datastore.entityownership.EntityOwnershipListenerActor.handleReceive(EntityOwnershipListenerActor.java:33)&lt;span class=&quot;error&quot;&gt;&amp;#91;133:org.opendaylight.controller.sal-distributed-datastore:1.6.0.Nitrogen&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at org.opendaylight.controller.cluster.common.actor.AbstractUntypedActor.onReceive(AbstractUntypedActor.java:28)&lt;span class=&quot;error&quot;&gt;&amp;#91;126:org.opendaylight.controller.sal-clustering-commons:1.6.0.Nitrogen&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at akka.actor.UntypedActor$$anonfun$receive$1.applyOrElse(UntypedActor.scala:165)&lt;span class=&quot;error&quot;&gt;&amp;#91;58:com.typesafe.akka.actor:2.4.18&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at akka.actor.Actor$class.aroundReceive(Actor.scala:502)&lt;span class=&quot;error&quot;&gt;&amp;#91;58:com.typesafe.akka.actor:2.4.18&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at akka.actor.UntypedActor.aroundReceive(UntypedActor.scala:95)&lt;span class=&quot;error&quot;&gt;&amp;#91;58:com.typesafe.akka.actor:2.4.18&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)&lt;span class=&quot;error&quot;&gt;&amp;#91;58:com.typesafe.akka.actor:2.4.18&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at akka.actor.ActorCell.invoke(ActorCell.scala:495)&lt;span class=&quot;error&quot;&gt;&amp;#91;58:com.typesafe.akka.actor:2.4.18&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)&lt;span class=&quot;error&quot;&gt;&amp;#91;58:com.typesafe.akka.actor:2.4.18&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at akka.dispatch.Mailbox.run(Mailbox.scala:224)&lt;span class=&quot;error&quot;&gt;&amp;#91;58:com.typesafe.akka.actor:2.4.18&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at akka.dispatch.Mailbox.exec(Mailbox.scala:234)&lt;span class=&quot;error&quot;&gt;&amp;#91;58:com.typesafe.akka.actor:2.4.18&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)&lt;span class=&quot;error&quot;&gt;&amp;#91;204:org.scala-lang.scala-library:2.11.11.v20170413-090219-8a413ba7cc&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)&lt;span class=&quot;error&quot;&gt;&amp;#91;204:org.scala-lang.scala-library:2.11.11.v20170413-090219-8a413ba7cc&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)&lt;span class=&quot;error&quot;&gt;&amp;#91;204:org.scala-lang.scala-library:2.11.11.v20170413-090219-8a413ba7cc&amp;#93;&lt;/span&gt;&lt;br/&gt;
        at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)&lt;span class=&quot;error&quot;&gt;&amp;#91;204:org.scala-lang.scala-library:2.11.11.v20170413-090219-8a413ba7cc&amp;#93;&lt;/span&gt;&lt;/p&gt;


&lt;p&gt;Reproduced using:&lt;/p&gt;

&lt;p&gt;feature:install odl-bgpcep-bgp-rib-api&lt;br/&gt;
(wait to complete)&lt;br/&gt;
feature:install odl-bgpcep-bgp-rib-impl&lt;/p&gt;</description>
                <environment>&lt;p&gt;Operating System: All&lt;br/&gt;
Platform: All&lt;/p&gt;</environment>
        <key id="23920">BGPCEP-680</key>
            <summary>NPE during singleton startup</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="YrineuRodrigues">Yrineu Felipe Rodrigues</assignee>
                                    <reporter username="rovarga">Robert Varga</reporter>
                        <labels>
                    </labels>
                <created>Fri, 4 Aug 2017 15:09:01 +0000</created>
                <updated>Sun, 3 Mar 2019 11:50:04 +0000</updated>
                            <resolved>Wed, 11 Oct 2017 00:17:55 +0000</resolved>
                                    <version>Bugzilla Migration</version>
                                    <fixVersion>Bugzilla Migration</fixVersion>
                                    <component>BGP</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="46255" author="rovarga" created="Fri, 4 Aug 2017 15:10:14 +0000"  >&lt;p&gt;Attachment karaf.log has been added with description: karaf.log&lt;/p&gt;</comment>
                            <comment id="46243" author="rovarga" created="Fri, 4 Aug 2017 15:11:28 +0000"  >&lt;p&gt;This is something in:&lt;/p&gt;

&lt;p&gt;        final ChoiceNode routes = this.ribContextRegistry.getRIBSupportContext(key).getRibSupport().emptyRoutes();&lt;/p&gt;</comment>
                            <comment id="46244" author="yrineu.rodrigues@serro.com" created="Wed, 6 Sep 2017 00:30:17 +0000"  >&lt;p&gt;Hi Robert Varga,&lt;/p&gt;

&lt;p&gt;I believe that the root cause of that issue is concurrency. I did checked the parameters and there&apos;s no &apos;Null&apos; parameters. To solve that problem maybe should be interesting to evaluate a little refactoring in order to remove some dependencies from the constructor and avoid some static methods. I&apos;m trying to provide it, but if do you have some other tip, please let me know.&lt;/p&gt;

&lt;p&gt;regards,&lt;/p&gt;</comment>
                            <comment id="46245" author="yrineu.rodrigues@serro.com" created="Wed, 6 Sep 2017 04:16:18 +0000"  >&lt;p&gt;Hi Robert Varga,&lt;/p&gt;

&lt;p&gt;This problem is happening because the &apos;RIBSupportContextRegistryImpl ribContextRegistry&apos; doesn&apos;t have &apos;TablesKey&apos; registered for IPv4 and IPv6 Unicast.&lt;/p&gt;

&lt;p&gt;org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.types.rev130919.Ipv6AddressFamily, _safi=class org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.types.rev130919.UnicastSubsequentAddressFamily&lt;/p&gt;

&lt;p&gt;org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.types.rev130919.Ipv4AddressFamily, _safi=class org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.types.rev130919.UnicastSubsequentAddressFamily&lt;/p&gt;

&lt;p&gt;Please, let me know if do you have some tips to solve that.&lt;/p&gt;

&lt;p&gt;I believe that some sub-module have to register those keys at the startup.&lt;/p&gt;

&lt;p&gt;regards,&lt;/p&gt;</comment>
                            <comment id="46246" author="yrineu.rodrigues@serro.com" created="Fri, 8 Sep 2017 12:32:46 +0000"  >&lt;p&gt;It follows a patch that solve this issue.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://git.opendaylight.org/gerrit/#/c/62870/2&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/#/c/62870/2&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This issue just happens when try to install those features individually instead install &apos;odl-bgpcep-bgp&apos;.&lt;/p&gt;

&lt;p&gt;That patch avoid a NPE once IPv4Address and IPv6Address Unicast AFI aren&apos;t registered at RIB context.&lt;/p&gt;</comment>
                            <comment id="46247" author="cdgasparini" created="Mon, 11 Sep 2017 10:32:22 +0000"  >&lt;p&gt;Adding conversation under proposed fix to bug&lt;/p&gt;

&lt;p&gt;Claudio D. Gasparini&lt;br/&gt;
Sep 8 9:44 PM&lt;br/&gt;
&#8617;&lt;br/&gt;
Patch Set 2:&lt;br/&gt;
But it&apos;ll happens just if we install only the &apos;odl-bgpcep-rib-api&apos;&lt;br/&gt;
and odl-bgpcep-rib-impl&apos;. So, the ways to solve that are:&lt;br/&gt;
-Install &apos;odl-bgpcep-bgp&apos; or&lt;br/&gt;
-Include &apos;inet-module&apos; as a dependency of &apos;odl-bgpcep-rib-impl&apos;What is your suggestion on that?&lt;br/&gt;
did you check if odl-bgpcep-rib-impl contains inet?&lt;br/&gt;
&lt;a href=&quot;https://git.opendaylight.org/gerrit/gitweb?p=bgpcep.git;a=blob;f=features/bgp/odl-bgpcep-bgp-rib-impl/pom.xml;h=24def18d442697188f4467b04ba5af03a8b8ca75;hb=refs/heads/master&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/gitweb?p=bgpcep.git;a=blob;f=features/bgp/odl-bgpcep-bgp-rib-impl/pom.xml;h=24def18d442697188f4467b04ba5af03a8b8ca75;hb=refs/heads/master&lt;/a&gt;&lt;br/&gt;
Yrineu Felipe Rodrigues&lt;br/&gt;
Sep 8 9:56 PM&lt;br/&gt;
&#8617;&lt;br/&gt;
Patch Set 2:&lt;br/&gt;
Yep, it&apos;s there, but there&apos;s no specification of module order. So, if do you manually install &apos;bgp-inet&apos; before &apos;rib-api&apos; and &apos;rib-impl&apos;, there&apos;s no NPE.&lt;br/&gt;
Avoid install &apos;rib-api&apos; and &apos;rib-impl&apos; independently is a valid option? I believe that we have to include both features into &apos;inet&apos;.&lt;/p&gt;</comment>
                            <comment id="46248" author="cdgasparini" created="Mon, 11 Sep 2017 10:59:45 +0000"  >&lt;p&gt;Hi, some notes&lt;/p&gt;

&lt;p&gt;Actual&lt;/p&gt;

&lt;p&gt;2017-09-09 00:11:06,177 | INFO  | pool-2-thread-1  | xtensionProviderContextActivator | 100 - org.opendaylight.bgpcep.bgp-rib-spi - 0.9.0.SNAPSHOT | Starting 0 RIBExtensionProviderActivator instances&lt;/p&gt;

&lt;p&gt;2017-09-09 00:11:49,148 | INFO  | pool-2-thread-1  | BGPActivator                     | 222 - org.opendaylight.bgpcep.bgp-inet - 0.9.0.SNAPSHOT | Starting Inet BGP Activator&lt;br/&gt;
2017-09-09 00:11:49,149 | INFO  | pool-2-thread-1  | RIBActivator                     | 222 - org.opendaylight.bgpcep.bgp-inet - 0.9.0.SNAPSHOT | Starting Inet RIB Activator&lt;/p&gt;


&lt;p&gt;2017-09-09 00:11:49,610 | INFO  | pool-2-thread-1  | BgpDeployerImpl                  | 228 - org.opendaylight.bgpcep.bgp-rib-impl - 0.9.0.SNAPSHOT | BGP Deployer global-bgp started.&lt;/p&gt;


&lt;p&gt;steps &lt;/p&gt;

&lt;p&gt;feature:install odl-bgpcep-bgp-rib-api&lt;br/&gt;
(wait to complete)&lt;br/&gt;
feature:install odl-bgpcep-bgp-rib-impl&lt;/p&gt;

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

&lt;p&gt;Expected&lt;/p&gt;


&lt;p&gt;2017-09-09 00:30:55,229 | INFO  | pool-2-thread-1  | BGPActivator                     | 98 - org.opendaylight.bgpcep.bgp-inet - 0.9.0.SNAPSHOT | Starting Inet BGP Activator&lt;br/&gt;
2017-09-09 00:30:55,230 | INFO  | pool-2-thread-1  | RIBActivator                     | 98 - org.opendaylight.bgpcep.bgp-inet - 0.9.0.SNAPSHOT | Starting Inet RIB Activator&lt;/p&gt;

&lt;p&gt;2017-09-09 00:30:55,247 | INFO  | rint Extender: 2 | xtensionProviderContextActivator | 105 - org.opendaylight.bgpcep.bgp-rib-spi - 0.9.0.SNAPSHOT | Starting 1 RIBExtensionProviderActivator instances&lt;/p&gt;

&lt;p&gt;2017-09-09 00:31:38,113 | INFO  | pool-2-thread-1  | BgpDeployerImpl                  | 228 - org.opendaylight.bgpcep.bgp-rib-impl - 0.9.0.SNAPSHOT | BGP Deployer global-bgp started.&lt;/p&gt;

&lt;p&gt;feature:install odl-bgpcep-bgp-inet&lt;br/&gt;
(wait to complete)&lt;br/&gt;
feature:install odl-bgpcep-bgp-rib-api&lt;br/&gt;
(wait to complete)&lt;br/&gt;
feature:install odl-bgpcep-bgp-rib-impl&lt;/p&gt;


&lt;p&gt;Conclusion:&lt;/p&gt;

&lt;p&gt;Issue here is that  SimpleRIBExtensionProviderContext under rib-spi is  created and expose RIBExtensionProviderContext service before that any extension is loaded.&lt;/p&gt;

&lt;p&gt;Fix should imply that all(not only inet) extension must be loaded before service is exposed. Otherwise any race condition combined with BGP Deployer,&lt;br/&gt;
could end in a RIB up which won&apos;t have support for a extension that was coming up at the same time(and this can happen without throwing any exception, therefore it will be only caught if the user is really checking it).&lt;/p&gt;

&lt;p&gt;So we need that this steps are done in order&lt;/p&gt;

&lt;p&gt;1 - Load all extensions&lt;br/&gt;
2 - Expose RIBExtensionProviderContext Service&lt;br/&gt;
3 - Start BGP Deployer&lt;/p&gt;

&lt;p&gt;As you can see the fix involves more than fix the NPE, and needs more thought. I hope this can help you.&lt;/p&gt;

&lt;p&gt;Regards, &lt;/p&gt;

&lt;p&gt;Claudio&lt;/p&gt;</comment>
                            <comment id="46249" author="rovarga" created="Mon, 25 Sep 2017 17:41:29 +0000"  >&lt;p&gt;&#8206;&lt;span class=&quot;error&quot;&gt;&amp;#91;&#8206;25/09/2017 18:58:38&#8207;&amp;#93;&lt;/span&gt; &#8206;&amp;lt;&#8206;yrineu_rodrigues&#8206;&amp;gt;&#8206; let me ask you... there is some way to choose the &apos;load order&apos; of each module?&lt;br/&gt;
&#8206;&lt;span class=&quot;error&quot;&gt;&amp;#91;&#8206;25/09/2017 19:33:06&#8207;&amp;#93;&lt;/span&gt; &#8206;&amp;lt;&#8206;rovarga&#8206;&amp;gt;&#8206; hello Yrineu&lt;br/&gt;
&#8206;&lt;span class=&quot;error&quot;&gt;&amp;#91;&#8206;25/09/2017 19:33:22&#8207;&amp;#93;&lt;/span&gt; &#8206;&amp;lt;&#8206;rovarga&#8206;&amp;gt;&#8206; not sure about blueprint&lt;br/&gt;
&#8206;&lt;span class=&quot;error&quot;&gt;&amp;#91;&#8206;25/09/2017 19:34:04&#8207;&amp;#93;&lt;/span&gt; &#8206;&amp;lt;&#8206;rovarga&#8206;&amp;gt;&#8206; the problem with karaf/osgi is that we do not really know when all plugins have been registered&lt;br/&gt;
&#8206;&lt;span class=&quot;error&quot;&gt;&amp;#91;&#8206;25/09/2017 19:34:51&#8207;&amp;#93;&lt;/span&gt; &#8206;&amp;lt;&#8206;rovarga&#8206;&amp;gt;&#8206; I&apos;ll follow up in the issue&lt;/p&gt;

&lt;p&gt;So the issue with registry-type things is that OSGi and karaf&apos;s feature:install approach does not really tell us when loading is complete (there is an API in 4.1.x which will help a bit), but even that is only valid until the user types feature:install.&lt;/p&gt;

&lt;p&gt;At any case, we should be able to start loc-rib without any extensions &amp;#8211; so that part is a bug.&lt;/p&gt;

&lt;p&gt;Going forward, I am not sure it was implemented, but the idea was for the registry to signal when a new extension is loaded and the BGP sessions would be flapped (which is not nice, but gets the job done).&lt;/p&gt;

&lt;p&gt;Another option is to have rib-impl check its configuration and figure out the afis/safis required for startup &amp;#8211; before starting netty.&lt;/p&gt;</comment>
                            <comment id="46250" author="yrineu.rodrigues@serro.com" created="Mon, 25 Sep 2017 18:35:52 +0000"  >&lt;p&gt;@Claudio and @Robert, makes sense to create a new karaf module in order to install in a single place all contents of:&lt;br/&gt;
feature:install odl-bgpcep-bgp-inet&lt;br/&gt;
feature:install odl-bgpcep-bgp-rib-api&lt;br/&gt;
feature:install odl-bgpcep-bgp-rib-impl&lt;/p&gt;

&lt;p&gt;something like: &apos;odl-bgpcep-bgp-extensions&apos; that will involve all dependencies of those features above. Thus we can ensure that all extensions will be loaded and avoid install features with missing extensions.&lt;/p&gt;

&lt;p&gt;Please, let me know what do you think about that.&lt;/p&gt;</comment>
                            <comment id="46251" author="rovarga" created="Mon, 25 Sep 2017 21:56:02 +0000"  >&lt;p&gt;I think it would be okay if bgp/rib-impl depended on bgp/inet. While inet is independent as an implementation, it is also part of RFC7460, which is what we claim to support by default.&lt;/p&gt;

&lt;p&gt;Aside from this bgp/inet should not be special, e.g. remain a plugin outside of bgp/parser-impl.&lt;/p&gt;</comment>
                            <comment id="46252" author="yrineu.rodrigues@serro.com" created="Tue, 26 Sep 2017 20:20:41 +0000"  >&lt;p&gt;Hi @Robert and @Claudio,&lt;/p&gt;

&lt;p&gt;It follows a patch with a proposed fix:&lt;br/&gt;
&lt;a href=&quot;https://git.opendaylight.org/gerrit/#/c/63537/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/#/c/63537/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;PS: Still waiting for Jenkins&lt;/p&gt;</comment>
                            <comment id="46253" author="cdgasparini" created="Tue, 10 Oct 2017 07:06:23 +0000"  >&lt;p&gt;Hi Yrineu, &lt;/p&gt;

&lt;p&gt;proposed patch for fix the NPE&lt;br/&gt;
&lt;a href=&quot;https://git.opendaylight.org/gerrit/#/q/topic:BUG-8929&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/#/q/topic:BUG-8929&lt;/a&gt;&lt;br/&gt;
has been merged.&lt;/p&gt;

&lt;p&gt;regarding you proposal to force odl-bgpcep-bgp-rib-impl to be part of odl-bgpcep-bgp-inet. Their should keep their dependency, and this is not a fixing any issue.&lt;/p&gt;

&lt;p&gt;The issue to be fixed is that when a new extension is installed. All started session are not restarting and loading this new supported expansion.&lt;br/&gt;
Once fixed inet and the rest of extension will be ready to be used, no matter when or in which order they are installed.&lt;br/&gt;
Also this give freedom to the user to use the implementation of the extension he wants.&lt;/p&gt;

&lt;p&gt;I&apos;ll open a bug with defined task and requirements for solve the issue previously described.&lt;/p&gt;

&lt;p&gt;Regarding this bug, I&apos;ll close it as soon as I can check that you patch solved the NPE, if you already tested that &lt;/p&gt;

&lt;p&gt;feature:install odl-bgpcep-bgp-rib-api&lt;br/&gt;
(wait to complete)&lt;br/&gt;
feature:install odl-bgpcep-bgp-rib-impl&lt;/p&gt;

&lt;p&gt;doesn&apos;t longer cause the NPE, feel free to close it.&lt;/p&gt;


&lt;p&gt;Regards,&lt;/p&gt;</comment>
                            <comment id="46254" author="yrineu.rodrigues@serro.com" created="Wed, 11 Oct 2017 00:17:55 +0000"  >&lt;p&gt;Thanks for your update!&lt;/p&gt;</comment>
                    </comments>
                    <attachments>
                            <attachment id="13242" name="karaf.log" size="256041" author="rovarga" created="Fri, 4 Aug 2017 15:10:14 +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>8929</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=8929]]></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|i02ds7:</customfieldvalue>

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