[NETCONF-538] Filtered <get-config> fails with ClassCastException Created: 17/Apr/18  Updated: 22/Sep/19  Resolved: 22/Sep/19

Status: Resolved
Project: netconf
Component/s: netconf
Affects Version/s: Oxygen
Fix Version/s: Magnesium, Sodium SR1

Type: Bug Priority: High
Reporter: Marek Gradzki Assignee: Mario Abraham
Resolution: Done Votes: 0
Labels: pt
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: File NETCONF_538_postman_collection.json    

 Description   

Following RPC fails:

<rpc message-id="101"
          xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<get-config>
<source>
<running/>
</source>
<filter xmlns:ns0="urn:ietf:params:xml:ns:netconf:base:1.0" ns0:type="subtree">
<application-rib xmlns="urn:opendaylight:params:xml:ns:yang:bgp-rib">
<id>10.25.1.9</id>
<tables>
<afi xmlns:x="urn:opendaylight:params:xml:ns:yang:bgp-types">x:ipv4-address-family</afi>
<safi xmlns:x="urn:opendaylight:params:xml:ns:yang:bgp-types">x:unicast-subsequent-address-family</safi>
<ipv4-routes xmlns="urn:opendaylight:params:xml:ns:yang:bgp-inet">
<ipv4-route>
<path-id>0</path-id>
<prefix>10.0.0.12/32</prefix>
</ipv4-route>
</ipv4-routes>
</tables>
</application-rib>
</filter>
</get-config>
</rpc>]]>]]>

with:

java.lang.ClassCastException: org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableMapNodeBuilder$ImmutableMapNode cannot be cast to org.opendaylight.yangtools.yang.data.api.schema.ContainerNode
    at org.opendaylight.netconf.mdsal.connector.ops.get.AbstractGet.transformNormalizedNode(AbstractGet.java:74) [413:org.opendaylight.netconf.mdsal-netconf-connector:1.4.0]
    at org.opendaylight.netconf.mdsal.connector.ops.get.AbstractGet.serializeNodeWithParentStructure(AbstractGet.java:111) [413:org.opendaylight.netconf.mdsal-netconf-connector:1.4.0]
    at org.opendaylight.netconf.mdsal.connector.ops.get.GetConfig.handleWithNoSubsequentOperations(GetConfig.java:80) [413:org.opendaylight.netconf.mdsal-netconf-connector:1.4.0]
    at org.opendaylight.netconf.util.mapping.AbstractSingletonNetconfOperation.handle(AbstractSingletonNetconfOperation.java:26) [309:org.opendaylight.netconf.util:1.4.0]
    at org.opendaylight.netconf.util.mapping.AbstractNetconfOperation.handle(AbstractNetconfOperation.java:104) [309:org.opendaylight.netconf.util:1.4.0]
    at org.opendaylight.netconf.impl.osgi.NetconfOperationRouterImpl$NetconfOperationExecution.execute(NetconfOperationRouterImpl.java:173) [409:mdsal-netconf-impl:1.4.0]
    at org.opendaylight.netconf.impl.osgi.NetconfOperationRouterImpl.executeOperationWithHighestPriority(NetconfOperationRouterImpl.java:114) [409:mdsal-netconf-impl:1.4.0]
    at org.opendaylight.netconf.impl.osgi.NetconfOperationRouterImpl.onNetconfMessage(NetconfOperationRouterImpl.java:86) [409:mdsal-netconf-impl:1.4.0]
    at org.opendaylight.netconf.impl.NetconfServerSessionListener.processDocument(NetconfServerSessionListener.java:124) [409:mdsal-netconf-impl:1.4.0]
    at org.opendaylight.netconf.impl.NetconfServerSessionListener.onMessage(NetconfServerSessionListener.java:89) [409:mdsal-netconf-impl:1.4.0]
    at org.opendaylight.netconf.impl.NetconfServerSessionListener.onMessage(NetconfServerSessionListener.java:32) [409:mdsal-netconf-impl:1.4.0]
    at org.opendaylight.netconf.nettyutil.AbstractNetconfSession.handleMessage(AbstractNetconfSession.java:65) [297:org.opendaylight.netconf.netty-util:1.4.0]
    at org.opendaylight.netconf.nettyutil.AbstractNetconfSession.handleMessage(AbstractNetconfSession.java:35) [297:org.opendaylight.netconf.netty-util:1.4.0]
    at org.opendaylight.protocol.framework.AbstractProtocolSession.channelRead0(AbstractProtocolSession.java:53) [300:org.opendaylight.netconf.protocol-framework:1.1.0]
    at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105) [104:io.netty.transport:4.1.16.Final]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [104:io.netty.transport:4.1.16.Final]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [104:io.netty.transport:4.1.16.Final]
    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) [104:io.netty.transport:4.1.16.Final]
    at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310) [99:io.netty.codec:4.1.16.Final]
    at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:284) [99:io.netty.codec:4.1.16.Final]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [104:io.netty.transport:4.1.16.Final]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [104:io.netty.transport:4.1.16.Final]
    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) [104:io.netty.transport:4.1.16.Final]
    at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310) [99:io.netty.codec:4.1.16.Final]
    at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:297) [99:io.netty.codec:4.1.16.Final]
    at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:413) [99:io.netty.codec:4.1.16.Final]
    at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:265) [99:io.netty.codec:4.1.16.Final]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [104:io.netty.transport:4.1.16.Final]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [104:io.netty.transport:4.1.16.Final]
    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) [104:io.netty.transport:4.1.16.Final]
    at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1359) [104:io.netty.transport:4.1.16.Final]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [104:io.netty.transport:4.1.16.Final]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRea56d(AbstractChannelHandlerContext.java:348) [104:io.netty.transport:4.1.16.Final]
    at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:935) [104:io.netty.transport:4.1.16.Final]
    at io.netty.channel.local.LocalChannel.finishPeerRead0(LocalChannel.java:456) [104:io.netty.transport:4.1.16.Final]
    at io.netty.channel.local.LocalChannel.access$400(LocalChannel.java:50) [104:io.netty.transport:4.1.16.Final]
    at io.netty.channel.local.LocalChannel$5.run(LocalChannel.java:410) [104:io.netty.transport:4.1.16.Final]
    at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163) [101:io.netty.common:4.1.16.Final]
    at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:403) [101:io.netty.common:4.1.16.Final]
    at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:463) [104:io.netty.transport:4.1.16.Final]
    at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:858) [101:io.netty.common:4.1.16.Final]
    at io.netty.util.concurrent.DefaultThreadFactory$DefaultRunnableDecorator.run(DefaultThreadFactory.java:138) [101:io.netty.common:4.1.16.Final]
    at java.lang.Thread.run(Thread.java:748) [?:?]

Steps to reproduce:

  1. Install following features: odl-restconf-all odl-netconf-connector-all odl-netconf-topology odl-netconf-mdsal odl-bgpcep-bgp
  2. Configure BGP protocol and server (see attached postman collection).
  3. Add application peer
  4. Add route
  5. Invoke <get-config> defined above.

 

 

 



 Comments   
Comment by Robert Varga [ 11/Aug/18 ]

Blocks downstream issue. JMorvay can you triage this, please?

Generated at Wed Feb 07 20:15:17 UTC 2024 using Jira 8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d.