<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 20:09:32 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>[MDSAL-328] ClassCastException when accessing augmentations</title>
                <link>https://jira.opendaylight.org/browse/MDSAL-328</link>
                <project id="10137" key="MDSAL">mdsal</project>
                    <description>&lt;p&gt;Using Port configuration for Peer Group under XML config&#160;file at the&#160;first run of KARAF will end on Cast Exception, when receiving&#160;onDataTreeChanged notification.&lt;/p&gt;

&lt;p&gt;On the other side if the configuration is used once karaf is already running, no cast exception will be trowed.&lt;/p&gt;

&lt;p&gt;Line causing the exception is the getAugmantation&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;
&#160;
&lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; (config != &lt;span class=&quot;code-keyword&quot;&gt;null&lt;/span&gt;) {
    &lt;span class=&quot;code-keyword&quot;&gt;final&lt;/span&gt; NeighborTransportConfig peerTc = config.getAugmentation(NeighborTransportConfig.class);   &amp;lt;----Line 156
    ....
    ....&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;2018-03-22 08:38:33,898 | ERROR | on-dispatcher-45 | DataTreeChangeListenerActor | 250 - org.opendaylight.controller.sal-clustering-commons - 1.8.0.SNAPSHOT | member-1-shard-default-config: Error notifying listener org.opendaylight.controller.cluster.databroker.compat.LegacyDOMDataBrokerAdapter$2$$Lambda$1065/1620722541@7125d1ae&lt;br/&gt;
 java.lang.ClassCastException: com.sun.proxy.$Proxy241 cannot be cast to org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.openconfig.extensions.rev180321.NeighborTransportConfig&lt;br/&gt;
 at org.opendaylight.protocol.bgp.rib.impl.config.OpenConfigMappingUtil.getPort(OpenConfigMappingUtil.java:156) ~&lt;span class=&quot;error&quot;&gt;&amp;#91;212:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
 at org.opendaylight.protocol.bgp.rib.impl.config.OpenConfigMappingUtil.getPort(OpenConfigMappingUtil.java:387) ~&lt;span class=&quot;error&quot;&gt;&amp;#91;212:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
 at org.opendaylight.protocol.bgp.rib.impl.config.BgpPeer$BgpPeerSingletonService.&amp;lt;init&amp;gt;(BgpPeer.java:271) ~&lt;span class=&quot;error&quot;&gt;&amp;#91;212:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
 at org.opendaylight.protocol.bgp.rib.impl.config.BgpPeer$BgpPeerSingletonService.&amp;lt;init&amp;gt;(BgpPeer.java:216) ~&lt;span class=&quot;error&quot;&gt;&amp;#91;212:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
 at org.opendaylight.protocol.bgp.rib.impl.config.BgpPeer.start(BgpPeer.java:136) ~&lt;span class=&quot;error&quot;&gt;&amp;#91;212:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
 at org.opendaylight.protocol.bgp.rib.impl.config.BGPClusterSingletonService.initiatePeerInstance(BGPClusterSingletonService.java:332) ~&lt;span class=&quot;error&quot;&gt;&amp;#91;212:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
 at org.opendaylight.protocol.bgp.rib.impl.config.BGPClusterSingletonService.onNeighborCreated(BGPClusterSingletonService.java:259) ~&lt;span class=&quot;error&quot;&gt;&amp;#91;212:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
 at org.opendaylight.protocol.bgp.rib.impl.config.BGPClusterSingletonService.onNeighborModified(BGPClusterSingletonService.java:242) ~&lt;span class=&quot;error&quot;&gt;&amp;#91;212:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
 at org.opendaylight.protocol.bgp.rib.impl.config.BGPClusterSingletonService.onNeighborsChanged(BGPClusterSingletonService.java:230) ~&lt;span class=&quot;error&quot;&gt;&amp;#91;212:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
 at org.opendaylight.protocol.bgp.rib.impl.config.BgpDeployerImpl.onNeighborsChanged(BgpDeployerImpl.java:208) ~&lt;span class=&quot;error&quot;&gt;&amp;#91;212:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
 at org.opendaylight.protocol.bgp.rib.impl.config.BgpDeployerImpl.onDataTreeChanged(BgpDeployerImpl.java:138) ~&lt;span class=&quot;error&quot;&gt;&amp;#91;212:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
 at org.opendaylight.controller.md.sal.binding.impl.BindingDOMDataTreeChangeListenerAdapter.onDataTreeChanged(BindingDOMDataTreeChangeListenerAdapter.java:42) ~&lt;span class=&quot;error&quot;&gt;&amp;#91;244:org.opendaylight.controller.sal-binding-broker-impl:1.8.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
 at org.opendaylight.controller.cluster.databroker.compat.LegacyDOMDataBrokerAdapter$2.lambda$registerDataTreeChangeListener$0(LegacyDOMDataBrokerAdapter.java:105) ~&lt;span class=&quot;error&quot;&gt;&amp;#91;257:org.opendaylight.controller.sal-distributed-datastore:1.8.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
 at org.opendaylight.controller.cluster.datastore.DataTreeChangeListenerActor.dataChanged(DataTreeChangeListenerActor.java:67) &lt;span class=&quot;error&quot;&gt;&amp;#91;257:org.opendaylight.controller.sal-distributed-datastore:1.8.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
 at org.opendaylight.controller.cluster.datastore.DataTreeChangeListenerActor.handleReceive(DataTreeChangeListenerActor.java:41) &lt;span class=&quot;error&quot;&gt;&amp;#91;257:org.opendaylight.controller.sal-distributed-datastore:1.8.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
 at org.opendaylight.controller.cluster.common.actor.AbstractUntypedActor.onReceive(AbstractUntypedActor.java:38) &lt;span class=&quot;error&quot;&gt;&amp;#91;250:org.opendaylight.controller.sal-clustering-commons:1.8.0.SNAPSHOT&amp;#93;&lt;/span&gt;&lt;br/&gt;
 at akka.actor.UntypedActor$$anonfun$receive$1.applyOrElse(UntypedActor.scala:166) &lt;span class=&quot;error&quot;&gt;&amp;#91;82:com.typesafe.akka.actor:2.5.4&amp;#93;&lt;/span&gt;&lt;br/&gt;
 at akka.actor.Actor.aroundReceive(Actor.scala:514) &lt;span class=&quot;error&quot;&gt;&amp;#91;82:com.typesafe.akka.actor:2.5.4&amp;#93;&lt;/span&gt;&lt;br/&gt;
 at akka.actor.Actor.aroundReceive$(Actor.scala:512) &lt;span class=&quot;error&quot;&gt;&amp;#91;82:com.typesafe.akka.actor:2.5.4&amp;#93;&lt;/span&gt;&lt;br/&gt;
 at akka.actor.UntypedActor.aroundReceive(UntypedActor.scala:96) &lt;span class=&quot;error&quot;&gt;&amp;#91;82:com.typesafe.akka.actor:2.5.4&amp;#93;&lt;/span&gt;&lt;br/&gt;
 at akka.actor.ActorCell.receiveMessage(ActorCell.scala:527) &lt;span class=&quot;error&quot;&gt;&amp;#91;82:com.typesafe.akka.actor:2.5.4&amp;#93;&lt;/span&gt;&lt;br/&gt;
 at akka.actor.ActorCell.invoke(ActorCell.scala:496) &lt;span class=&quot;error&quot;&gt;&amp;#91;82:com.typesafe.akka.actor:2.5.4&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;82:com.typesafe.akka.actor:2.5.4&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;82:com.typesafe.akka.actor:2.5.4&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;82:com.typesafe.akka.actor:2.5.4&amp;#93;&lt;/span&gt;&lt;br/&gt;
 at akka.dispatch.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260) &lt;span class=&quot;error&quot;&gt;&amp;#91;82:com.typesafe.akka.actor:2.5.4&amp;#93;&lt;/span&gt;&lt;br/&gt;
 at akka.dispatch.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339) &lt;span class=&quot;error&quot;&gt;&amp;#91;82:com.typesafe.akka.actor:2.5.4&amp;#93;&lt;/span&gt;&lt;br/&gt;
 at akka.dispatch.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979) &lt;span class=&quot;error&quot;&gt;&amp;#91;82:com.typesafe.akka.actor:2.5.4&amp;#93;&lt;/span&gt;&lt;br/&gt;
 at akka.dispatch.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107) &lt;span class=&quot;error&quot;&gt;&amp;#91;82:com.typesafe.akka.actor:2.5.4&amp;#93;&lt;/span&gt;&lt;/p&gt;</description>
                <environment></environment>
        <key id="29488">MDSAL-328</key>
            <summary>ClassCastException when accessing augmentations</summary>
                <type id="10104" iconUrl="https://jira.opendaylight.org/secure/viewavatar?size=xsmall&amp;avatarId=10303&amp;avatarType=issuetype">Bug</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="10000">Done</resolution>
                                        <assignee username="rovarga">Robert Varga</assignee>
                                    <reporter username="cdgasparini">Claudio David Gasparini</reporter>
                        <labels>
                    </labels>
                <created>Thu, 22 Mar 2018 07:40:20 +0000</created>
                <updated>Thu, 21 Jun 2018 22:10:53 +0000</updated>
                            <resolved>Thu, 21 Jun 2018 22:10:53 +0000</resolved>
                                                    <fixVersion>Fluorine</fixVersion>
                    <fixVersion>Oxygen SR3</fixVersion>
                                        <due></due>
                            <votes>0</votes>
                                    <watches>3</watches>
                                                                                                                <comments>
                            <comment id="61872" author="cdgasparini" created="Thu, 22 Mar 2018 07:46:19 +0000"  >&lt;p&gt;Steps&#160;&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;cherry-pick &lt;a href=&quot;https://git.opendaylight.org/gerrit/#/c/69791/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/#/c/69791/&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;build and run karaf&lt;/li&gt;
	&lt;li&gt;karaf@root()&amp;gt; feature:install odl-restconf odl-bgpcep-bgp odl-bgpcep-bgp-config-example&lt;/li&gt;
	&lt;li&gt;Exception is thrown&lt;/li&gt;
&lt;/ul&gt;
</comment>
                            <comment id="61876" author="cdgasparini" created="Thu, 22 Mar 2018 09:56:03 +0000"  >&lt;p&gt;maybe introduce by&#160;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://git.opendaylight.org/gerrit/#/c/50269/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/#/c/50269/&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="61885" author="tpantelis" created="Thu, 22 Mar 2018 12:28:36 +0000"  >&lt;p&gt;That link doesn&apos;t exist - don&apos;t know which patch you mean. I suspect this is related to the recent yangtools bump. &lt;/p&gt;</comment>
                            <comment id="61886" author="cdgasparini" created="Thu, 22 Mar 2018 12:58:16 +0000"  >&lt;p&gt;link updated&lt;/p&gt;</comment>
                            <comment id="61887" author="tpantelis" created="Thu, 22 Mar 2018 13:10:06 +0000"  >&lt;p&gt;I don&apos;t see where that patch could be the culprit. Why do you think it is? As mentioned, this seems much more likely related to yangtools/mdsal changes - getAugmentation is generated code which is the binding layer, CDS is DOM. LegacyDOMDataBrokerAdapter was added by my patch but it shows up in the trace b/c the error was generated via a DTCL notification.&lt;/p&gt;</comment>
                            <comment id="61911" author="cdgasparini" created="Fri, 23 Mar 2018 08:14:47 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.opendaylight.org/secure/ViewProfile.jspa?name=tpantelis&quot; class=&quot;user-hover&quot; rel=&quot;tpantelis&quot;&gt;tpantelis&lt;/a&gt; Thanks Tom, I ll move it to&#160; MD SAL, for me is not clear where is this issue coming from.&lt;/p&gt;

&lt;p&gt;Regards,&#160;&lt;/p&gt;</comment>
                            <comment id="63429" author="rovarga" created="Wed, 13 Jun 2018 14:37:26 +0000"  >&lt;p&gt;This looks very weird, &lt;a href=&quot;https://git.opendaylight.org/gerrit/#/c/72961/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/#/c/72961/&lt;/a&gt; adds some more debugs.&lt;/p&gt;</comment>
                            <comment id="63430" author="rovarga" created="Wed, 13 Jun 2018 14:38:28 +0000"  >&lt;p&gt;Please re-run with &lt;a href=&quot;https://git.opendaylight.org/gerrit/#/c/72961/,&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/#/c/72961/,&lt;/a&gt; there should we warnings preceding the ClassCastException.&lt;/p&gt;</comment>
                            <comment id="63431" author="cdgasparini" created="Wed, 13 Jun 2018 18:38:32 +0000"  >&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;
2018-06-13 19:27:44,484 | WARN | on-dispatcher-51 | LazyDataObject | 280 - org.opendaylight.mdsal.binding-dom-codec - 0.13.0.SNAPSHOT | Returning object PeerGroupTransportConfig{getRemotePort=PortNumber{_value=179}} &lt;span class=&quot;code-keyword&quot;&gt;class &lt;/span&gt;&lt;span class=&quot;code-keyword&quot;&gt;class &lt;/span&gt;com.sun.proxy.$Proxy182 does not implement required augmentation &lt;span class=&quot;code-keyword&quot;&gt;interface&lt;/span&gt; org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.openconfig.extensions.rev180329.NeighborTransportConfig
2018-06-13 19:27:44,485 | WARN | on-dispatcher-51 | LazyDataObject | 280 - org.opendaylight.mdsal.binding-dom-codec - 0.13.0.SNAPSHOT | Superclass: &lt;span class=&quot;code-keyword&quot;&gt;class &lt;/span&gt;java.lang.reflect.Proxy
2018-06-13 19:27:44,486 | WARN | on-dispatcher-51 | LazyDataObject | 280 - org.opendaylight.mdsal.binding-dom-codec - 0.13.0.SNAPSHOT | Implemented interfaces: [&lt;span class=&quot;code-keyword&quot;&gt;interface&lt;/span&gt; org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.openconfig.extensions.rev180329.PeerGroupTransportConfig, &lt;span class=&quot;code-keyword&quot;&gt;interface&lt;/span&gt; org.opendaylight.yangtools.yang.binding.AugmentationHolder]
2018-06-13 19:27:44,487 | WARN | on-dispatcher-51 | LazyDataObject | 280 - org.opendaylight.mdsal.binding-dom-codec - 0.13.0.SNAPSHOT | This LDO: Config{isMtuDiscovery=&lt;span class=&quot;code-keyword&quot;&gt;false&lt;/span&gt;, isPassiveMode=&lt;span class=&quot;code-keyword&quot;&gt;true&lt;/span&gt;, augmentations={&lt;span class=&quot;code-keyword&quot;&gt;interface&lt;/span&gt; org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.openconfig.extensions.rev180329.PeerGroupTransportConfig=PeerGroupTransportConfig{getRemotePort=PortNumber{_value=179}}}}
2018-06-13 19:27:44,501 | WARN | on-dispatcher-51 | LazyDataObject | 280 - org.opendaylight.mdsal.binding-dom-codec - 0.13.0.SNAPSHOT | This NN: ImmutableContainerNode{nodeIdentifier=(urn:opendaylight:params:xml:ns:yang:bgp:openconfig-extensions?revision=2018-03-29)config, value=[ImmutableLeafNode{nodeIdentifier=(urn:opendaylight:params:xml:ns:yang:bgp:openconfig-extensions?revision=2018-03-29)mtu-discovery, value=&lt;span class=&quot;code-keyword&quot;&gt;false&lt;/span&gt;, attributes={}}, ImmutableAugmentationNode{nodeIdentifier=AugmentationIdentifier{childNames=[(urn:opendaylight:params:xml:ns:yang:bgp:openconfig-extensions?revision=2018-03-29)remote-port]}, value=[ImmutableLeafNode{nodeIdentifier=(urn:opendaylight:params:xml:ns:yang:bgp:openconfig-extensions?revision=2018-03-29)remote-port, value=179, attributes={}}]}, ImmutableLeafNode{nodeIdentifier=(urn:opendaylight:params:xml:ns:yang:bgp:openconfig-extensions?revision=2018-03-29)passive-mode, value=&lt;span class=&quot;code-keyword&quot;&gt;true&lt;/span&gt;, attributes={}}], attributes={}}
2018-06-13 19:27:44,502 | WARN | on-dispatcher-51 | LazyDataObject | 280 - org.opendaylight.mdsal.binding-dom-codec - 0.13.0.SNAPSHOT | Dynamic proxy handler: org.opendaylight.mdsal.binding.dom.codec.impl.LazyDataObject@594dfee1
2018-06-13 19:27:44,503 | ERROR | on-dispatcher-51 | DataTreeChangeListenerActor | 261 - org.opendaylight.controller.sal-clustering-commons - 1.8.0.SNAPSHOT | member-1-shard-&lt;span class=&quot;code-keyword&quot;&gt;default&lt;/span&gt;-config: Error notifying listener org.opendaylight.controller.cluster.databroker.compat.LegacyDOMDataBrokerAdapter$2$$Lambda$1094/864549882@66ec700d
java.lang.ClassCastException: com.sun.proxy.$Proxy182 cannot be &lt;span class=&quot;code-keyword&quot;&gt;cast&lt;/span&gt; to org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.openconfig.extensions.rev180329.NeighborTransportConfig
at org.opendaylight.protocol.bgp.rib.impl.config.OpenConfigMappingUtil.getPort(OpenConfigMappingUtil.java:158) ~[224:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT]

&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</comment>
                            <comment id="63432" author="rovarga" created="Wed, 13 Jun 2018 22:49:19 +0000"  >&lt;p&gt;So NeighborTransportConfig and PeerGroupTransportConfig are being confused. I&apos;ll take a peek at why is that.&lt;/p&gt;</comment>
                            <comment id="63438" author="rovarga" created="Thu, 14 Jun 2018 08:50:34 +0000"  >&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;
--- target/generated-sources/mdsal-binding/org/opendaylight/yang/gen/v1/urn/opendaylight/params/xml/ns/yang/bgp/openconfig/extensions/rev180329/NeighborTransportConfig.java&#160;&#160;&#160; 2018-06-14 10:42:11.311592335 +0200
+++ target/generated-sources/mdsal-binding/org/opendaylight/yang/gen/v1/urn/opendaylight/params/xml/ns/yang/bgp/openconfig/extensions/rev180329/PeerGroupTransportConfig.java&#160;&#160; 2018-06-14 10:42:11.328592412 +0200
@@ -3,7 +3,7 @@
&#160;&lt;span class=&quot;code-keyword&quot;&gt;import&lt;/span&gt; org.opendaylight.yangtools.yang.binding.Augmentation;
&#160;&lt;span class=&quot;code-keyword&quot;&gt;import&lt;/span&gt; org.opendaylight.yangtools.yang.binding.DataObject;
&#160;
-&lt;span class=&quot;code-keyword&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;code-keyword&quot;&gt;interface&lt;/span&gt; NeighborTransportConfig
+&lt;span class=&quot;code-keyword&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;code-keyword&quot;&gt;interface&lt;/span&gt; PeerGroupTransportConfig
&#160;&#160;&#160;&#160; &lt;span class=&quot;code-keyword&quot;&gt;extends&lt;/span&gt;
&#160;&#160;&#160;&#160; DataObject,
&#160;&#160;&#160;&#160; Augmentation&amp;lt;Config&amp;gt;,

&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;and&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;
&lt;span class=&quot;code-keyword&quot;&gt;package&lt;/span&gt; org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.openconfig.extensions.rev180329;
&lt;span class=&quot;code-keyword&quot;&gt;import&lt;/span&gt; org.opendaylight.yang.gen.v1.http.openconfig.net.yang.bgp.rev151009.bgp.neighbor.group.transport.Config;
&lt;span class=&quot;code-keyword&quot;&gt;import&lt;/span&gt; org.opendaylight.yangtools.yang.binding.Augmentation;
&lt;span class=&quot;code-keyword&quot;&gt;import&lt;/span&gt; org.opendaylight.yangtools.yang.binding.DataObject;

&lt;span class=&quot;code-keyword&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;code-keyword&quot;&gt;interface&lt;/span&gt; NeighborTransportConfig
&#160;&#160;&#160; &lt;span class=&quot;code-keyword&quot;&gt;extends&lt;/span&gt;
&#160;&#160;&#160; DataObject,
&#160;&#160;&#160; Augmentation&amp;lt;Config&amp;gt;,
&#160;&#160;&#160; TransportConfig
{





}

&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;i.e. both are augmentations of the same grouping, albeit different instantiations of it. I am not sure what we can do about this, as bindign does not differentiate between grouping instantiations. I suggest eliminating one of them and treating them as equivalent.&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;</comment>
                            <comment id="63440" author="rovarga" created="Thu, 14 Jun 2018 09:32:58 +0000"  >&lt;p&gt;Given the context where this is used, it should be sufficient to receive TransportConfig interface, which makes it oblivious to the actual augment &#8211; which should unblock you.&lt;/p&gt;</comment>
                            <comment id="63441" author="rovarga" created="Thu, 14 Jun 2018 09:52:55 +0000"  >&lt;p&gt;Claudio, the way I am reading this right, internal state is correct and LazyDataObject should be returning null here. Can you confirm?&lt;/p&gt;</comment>
                            <comment id="63442" author="cdgasparini" created="Thu, 14 Jun 2018 10:00:48 +0000"  >&lt;p&gt;Yes, I expect a null to be received.&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;&lt;span class=&quot;code-keyword&quot;&gt;final&lt;/span&gt; NeighborTransportConfig peerTc = config.augmentation(NeighborTransportConfig.class);
&lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; (peerTc != &lt;span class=&quot;code-keyword&quot;&gt;null&lt;/span&gt;) {
    &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; peerTc.getRemotePort();
}
&lt;span class=&quot;code-keyword&quot;&gt;final&lt;/span&gt; PeerGroupTransportConfig peerGroupTc = config.augmentation(PeerGroupTransportConfig.class);
&lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; (peerGroupTc != &lt;span class=&quot;code-keyword&quot;&gt;null&lt;/span&gt;) {
    &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; peerGroupTc.getRemotePort();
}
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;I will give a try to remove one, but I think I already try that, and it was an issue when trying to add it later. I&apos;ll check it again and provide you some feeback.&#160;&lt;/p&gt;</comment>
                            <comment id="63450" author="cdgasparini" created="Thu, 14 Jun 2018 11:49:08 +0000"  >&lt;p&gt;provided bgp patch, solves BGP side issues. therefore this is not longer a blocker for us.&#160;&lt;/p&gt;

&lt;p&gt;Thanks&lt;/p&gt;</comment>
                            <comment id="63458" author="cdgasparini" created="Fri, 15 Jun 2018 11:21:12 +0000"  >&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;
2018-06-15 13:20:04,564 | WARN | on-dispatcher-46 | LazyDataObject | 280 - org.opendaylight.mdsal.binding-dom-codec - 0.13.0.SNAPSHOT | Returning object PeerGroupTransportConfig{getRemotePort=PortNumber{_value=179}} &lt;span class=&quot;code-keyword&quot;&gt;class &lt;/span&gt;&lt;span class=&quot;code-keyword&quot;&gt;class &lt;/span&gt;com.sun.proxy.$Proxy271 does not implement required augmentation &lt;span class=&quot;code-keyword&quot;&gt;interface&lt;/span&gt; org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.openconfig.extensions.rev180329.NeighborTransportConfig
java.lang.Throwable: &lt;span class=&quot;code-keyword&quot;&gt;null&lt;/span&gt;
at org.opendaylight.mdsal.binding.dom.codec.impl.LazyDataObject.verifyAugmentationObject(LazyDataObject.java:210) ~[280:org.opendaylight.mdsal.binding-dom-codec:0.13.0.SNAPSHOT]
at org.opendaylight.mdsal.binding.dom.codec.impl.LazyDataObject.getAugmentationImpl(LazyDataObject.java:196) ~[280:org.opendaylight.mdsal.binding-dom-codec:0.13.0.SNAPSHOT]
at org.opendaylight.mdsal.binding.dom.codec.impl.LazyDataObject.invoke(LazyDataObject.java:73) ~[280:org.opendaylight.mdsal.binding-dom-codec:0.13.0.SNAPSHOT]
at com.sun.proxy.$Proxy264.augmentation(Unknown Source) ~[?:?]
at org.opendaylight.protocol.bgp.rib.impl.config.OpenConfigMappingUtil.getPort(OpenConfigMappingUtil.java:158) ~[224:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT]
at org.opendaylight.protocol.bgp.rib.impl.config.OpenConfigMappingUtil.getPort(OpenConfigMappingUtil.java:426) ~[224:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT]
at org.opendaylight.protocol.bgp.rib.impl.config.BgpPeer$BgpPeerSingletonService.&amp;lt;init&amp;gt;(BgpPeer.java:279) ~[224:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT]
at org.opendaylight.protocol.bgp.rib.impl.config.BgpPeer$BgpPeerSingletonService.&amp;lt;init&amp;gt;(BgpPeer.java:218) ~[224:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT]
at org.opendaylight.protocol.bgp.rib.impl.config.BgpPeer.start(BgpPeer.java:138) ~[224:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT]
at org.opendaylight.protocol.bgp.rib.impl.config.BGPClusterSingletonService.initiatePeerInstance(BGPClusterSingletonService.java:343) ~[224:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT]
at org.opendaylight.protocol.bgp.rib.impl.config.BGPClusterSingletonService.onNeighborCreated(BGPClusterSingletonService.java:264) ~[224:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT]
at org.opendaylight.protocol.bgp.rib.impl.config.BGPClusterSingletonService.onNeighborModified(BGPClusterSingletonService.java:247) ~[224:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT]
at org.opendaylight.protocol.bgp.rib.impl.config.BGPClusterSingletonService.onNeighborsChanged(BGPClusterSingletonService.java:235) ~[224:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT]
at org.opendaylight.protocol.bgp.rib.impl.config.BgpDeployerImpl.onNeighborsChanged(BgpDeployerImpl.java:207) ~[224:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT]
at org.opendaylight.protocol.bgp.rib.impl.config.BgpDeployerImpl.onDataTreeChanged(BgpDeployerImpl.java:137) ~[224:org.opendaylight.bgpcep.bgp-rib-impl:0.10.0.SNAPSHOT]
at org.opendaylight.controller.md.sal.binding.impl.BindingDOMDataTreeChangeListenerAdapter.onDataTreeChanged(BindingDOMDataTreeChangeListenerAdapter.java:42) ~[256:org.opendaylight.controller.sal-binding-broker-impl:1.8.0.SNAPSHOT]
at org.opendaylight.controller.cluster.databroker.compat.LegacyDOMDataBrokerAdapter$2.lambda$registerDataTreeChangeListener$0(LegacyDOMDataBrokerAdapter.java:102) ~[269:org.opendaylight.controller.sal-distributed-datastore:1.8.0.SNAPSHOT]
at org.opendaylight.controller.cluster.datastore.DataTreeChangeListenerActor.dataChanged(DataTreeChangeListenerActor.java:67) [269:org.opendaylight.controller.sal-distributed-datastore:1.8.0.SNAPSHOT]
at org.opendaylight.controller.cluster.datastore.DataTreeChangeListenerActor.handleReceive(DataTreeChangeListenerActor.java:41) [269:org.opendaylight.controller.sal-distributed-datastore:1.8.0.SNAPSHOT]
at org.opendaylight.controller.cluster.common.actor.AbstractUntypedActor.onReceive(AbstractUntypedActor.java:38) [261:org.opendaylight.controller.sal-clustering-commons:1.8.0.SNAPSHOT]
at akka.actor.UntypedActor$$anonfun$receive$1.applyOrElse(UntypedActor.scala:167) [78:com.typesafe.akka.actor:2.5.11]
at akka.actor.Actor.aroundReceive(Actor.scala:517) [78:com.typesafe.akka.actor:2.5.11]
at akka.actor.Actor.aroundReceive$(Actor.scala:515) [78:com.typesafe.akka.actor:2.5.11]
at akka.actor.UntypedActor.aroundReceive(UntypedActor.scala:97) [78:com.typesafe.akka.actor:2.5.11]
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:590) [78:com.typesafe.akka.actor:2.5.11]
at akka.actor.ActorCell.invoke(ActorCell.scala:559) [78:com.typesafe.akka.actor:2.5.11]
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257) [78:com.typesafe.akka.actor:2.5.11]
at akka.dispatch.Mailbox.run(Mailbox.scala:224) [78:com.typesafe.akka.actor:2.5.11]
at akka.dispatch.Mailbox.exec(Mailbox.scala:234) [78:com.typesafe.akka.actor:2.5.11]
at akka.dispatch.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260) [78:com.typesafe.akka.actor:2.5.11]
at akka.dispatch.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339) [78:com.typesafe.akka.actor:2.5.11]
at akka.dispatch.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979) [78:com.typesafe.akka.actor:2.5.11]
at akka.dispatch.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107) [78:com.typesafe.akka.actor:2.5.11]
2018-06-15 13:20:04,569 | INFO | rint Extender: 1 | TldScanner | 363 - org.ops4j.pax.web.pax-web-jsp - 6.0.9 | found TLD bundleresource:&lt;span class=&quot;code-comment&quot;&gt;//363.fwk2101153819/META-INF/c-1_0.tld
&lt;/span&gt;2018-06-15 13:20:04,856 | WARN | on-dispatcher-46 | LazyDataObject | 280 - org.opendaylight.mdsal.binding-dom-codec - 0.13.0.SNAPSHOT | Superclass: &lt;span class=&quot;code-keyword&quot;&gt;class &lt;/span&gt;java.lang.reflect.Proxy
2018-06-15 13:20:04,856 | WARN | on-dispatcher-46 | LazyDataObject | 280 - org.opendaylight.mdsal.binding-dom-codec - 0.13.0.SNAPSHOT | Implemented interfaces: [&lt;span class=&quot;code-keyword&quot;&gt;interface&lt;/span&gt; org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.openconfig.extensions.rev180329.PeerGroupTransportConfig, &lt;span class=&quot;code-keyword&quot;&gt;interface&lt;/span&gt; org.opendaylight.yangtools.yang.binding.AugmentationHolder]
2018-06-15 13:20:04,856 | WARN | on-dispatcher-46 | LazyDataObject | 280 - org.opendaylight.mdsal.binding-dom-codec - 0.13.0.SNAPSHOT | This LDO: Config{isMtuDiscovery=&lt;span class=&quot;code-keyword&quot;&gt;false&lt;/span&gt;, isPassiveMode=&lt;span class=&quot;code-keyword&quot;&gt;true&lt;/span&gt;, augmentations={&lt;span class=&quot;code-keyword&quot;&gt;interface&lt;/span&gt; org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.openconfig.extensions.rev180329.PeerGroupTransportConfig=PeerGroupTransportConfig{getRemotePort=PortNumber{_value=179}}}}
2018-06-15 13:20:04,857 | WARN | on-dispatcher-46 | LazyDataObject | 280 - org.opendaylight.mdsal.binding-dom-codec - 0.13.0.SNAPSHOT | This NN: ImmutableContainerNode{nodeIdentifier=(urn:opendaylight:params:xml:ns:yang:bgp:openconfig-extensions?revision=2018-03-29)config, value=[ImmutableLeafNode{nodeIdentifier=(urn:opendaylight:params:xml:ns:yang:bgp:openconfig-extensions?revision=2018-03-29)mtu-discovery, value=&lt;span class=&quot;code-keyword&quot;&gt;false&lt;/span&gt;, attributes={}}, ImmutableAugmentationNode{nodeIdentifier=AugmentationIdentifier{childNames=[(urn:opendaylight:params:xml:ns:yang:bgp:openconfig-extensions?revision=2018-03-29)remote-port]}, value=[ImmutableLeafNode{nodeIdentifier=(urn:opendaylight:params:xml:ns:yang:bgp:openconfig-extensions?revision=2018-03-29)remote-port, value=179, attributes={}}]}, ImmutableLeafNode{nodeIdentifier=(urn:opendaylight:params:xml:ns:yang:bgp:openconfig-extensions?revision=2018-03-29)passive-mode, value=&lt;span class=&quot;code-keyword&quot;&gt;true&lt;/span&gt;, attributes={}}], attributes={}}
2018-06-15 13:20:04,857 | WARN | on-dispatcher-46 | LazyDataObject | 280 - org.opendaylight.mdsal.binding-dom-codec - 0.13.0.SNAPSHOT | Dynamic proxy handler: org.opendaylight.mdsal.binding.dom.codec.impl.LazyDataObject@758cd40e

&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</comment>
                            <comment id="63459" author="rovarga" created="Fri, 15 Jun 2018 12:08:55 +0000"  >&lt;p&gt;So it&apos;s the secondary resolution pass which needs to re-validate whether the result it got from possibleStreamChild() actually conforms to what we&apos;re looking for.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10003">
                    <name>Relates</name>
                                                                <inwardlinks description="relates to">
                                        <issuelink>
            <issuekey id="30143">OPNFLWPLUG-1019</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                            <attachment id="14695" name="karaf.log" size="359845" author="cdgasparini" created="Wed, 13 Jun 2018 18:37:36 +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_10000" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|i03c2n:</customfieldvalue>

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