Uploaded image for project: 'netconf'
  1. netconf
  2. NETCONF-899

Northbound NETCONF server connection error

    XMLWordPrintable

Details

    • Bug
    • Status: Resolved
    • High
    • Resolution: Done
    • 4.0.0, 4.0.1
    • 3.0.6, 4.0.2
    • netconf
    • None

    Description

      Found in netconf-csit-1node-gate-userfeatures-rfc8040-all-master/59

      Connecting to MD-SAL NETCONF server fails with this error:

      Caused by: org.opendaylight.mdsal.binding.dom.codec.api.IncorrectNestingException: Child interface org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.netconf.monitoring.rev101004.netconf.state.sessions.Session is not valid child of interface org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.netconf.monitoring.rev220718.Session1
      	at org.opendaylight.mdsal.binding.dom.codec.api.IncorrectNestingException.create(IncorrectNestingException.java:28) ~[?:?]
      	at org.opendaylight.mdsal.binding.dom.codec.impl.DataContainerCodecContext.childNullException(DataContainerCodecContext.java:221) ~[?:?]
      	at org.opendaylight.mdsal.binding.dom.codec.impl.DataContainerCodecContext.childNonNull(DataContainerCodecContext.java:188) ~[?:?]
      	at org.opendaylight.mdsal.binding.dom.codec.impl.DataObjectCodecContext.streamChild(DataObjectCodecContext.java:214) ~[?:?]
      	at org.opendaylight.mdsal.binding.dom.codec.impl.BindingToNormalizedStreamWriter.enter(BindingToNormalizedStreamWriter.java:80) ~[?:?]
      	at org.opendaylight.mdsal.binding.dom.codec.impl.BindingToNormalizedStreamWriter.startAugmentationNode(BindingToNormalizedStreamWriter.java:162) ~[?:?]
      	at org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.netconf.monitoring.rev220718.Session1$$$streamer.serialize(Unknown Source) ~[?:?]
      	at org.opendaylight.mdsal.binding.dom.codec.impl.BindingCodecContext$DataObjectSerializerProxy.serialize(BindingCodecContext.java:116) ~[?:?]
      	at org.opendaylight.mdsal.binding.dom.codec.impl.DataObjectStreamer.emitAugmentation(DataObjectStreamer.java:173) ~[?:?]
      	at org.opendaylight.mdsal.binding.dom.codec.impl.DataObjectStreamer.streamAugmentations(DataObjectStreamer.java:60) ~[?:?]
      	at org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.netconf.monitoring.rev101004.netconf.state.sessions.Session$$$streamer.serialize(Unknown Source) ~[?:?]
      	at org.opendaylight.mdsal.binding.dom.codec.impl.BindingCodecContext$DataObjectSerializerProxy.serialize(BindingCodecContext.java:116) ~[?:?]
      	at org.opendaylight.mdsal.binding.dom.codec.impl.BindingCodecContext.toNormalizedNode(BindingCodecContext.java:522) ~[?:?]
      	at org.opendaylight.mdsal.binding.dom.codec.spi.ForwardingBindingDOMCodecServices.toNormalizedNode(ForwardingBindingDOMCodecServices.java:67) ~[?:?]
      	at org.opendaylight.mdsal.binding.dom.codec.spi.ForwardingBindingDOMCodecServices.toNormalizedNode(ForwardingBindingDOMCodecServices.java:67) ~[?:?]
      	at org.opendaylight.mdsal.binding.dom.adapter.BindingDOMWriteTransactionAdapter.toNormalized(BindingDOMWriteTransactionAdapter.java:105) ~[?:?]
      	at org.opendaylight.mdsal.binding.dom.adapter.BindingDOMWriteTransactionAdapter.toNormalized(BindingDOMWriteTransactionAdapter.java:98) ~[?:?]
      	at org.opendaylight.mdsal.binding.dom.adapter.BindingDOMWriteTransactionAdapter.put(BindingDOMWriteTransactionAdapter.java:33) ~[?:?]
      	at org.opendaylight.controller.config.yang.netconf.mdsal.monitoring.MonitoringToMdsalWriter.lambda$onSessionStarted$1(MonitoringToMdsalWriter.java:66) ~[?:?]
      	at org.opendaylight.controller.config.yang.netconf.mdsal.monitoring.MonitoringToMdsalWriter.runTransaction(MonitoringToMdsalWriter.java:103) ~[?:?]
      	at org.opendaylight.controller.config.yang.netconf.mdsal.monitoring.MonitoringToMdsalWriter.onSessionStarted(MonitoringToMdsalWriter.java:66) ~[?:?]
      	at org.opendaylight.netconf.impl.osgi.NetconfSessionMonitoringService.notifySessionUp(NetconfSessionMonitoringService.java:131) ~[?:?]
      	at org.opendaylight.netconf.impl.osgi.NetconfSessionMonitoringService.onSessionUp(NetconfSessionMonitoringService.java:82) ~[?:?]
      	at org.opendaylight.netconf.impl.NetconfServerSessionListener.onSessionUp(NetconfServerSessionListener.java:50) ~[?:?]
      	at org.opendaylight.netconf.impl.NetconfServerSessionListener.onSessionUp(NetconfServerSessionListener.java:33) ~[?:?]
      	at org.opendaylight.netconf.nettyutil.AbstractNetconfSession.sessionUp(AbstractNetconfSession.java:100) ~[?:?]
      	at org.opendaylight.netconf.impl.NetconfServerSession.sessionUp(NetconfServerSession.java:86) ~[?:?]
      	at org.opendaylight.netconf.nettyutil.AbstractNetconfSession.handlerAdded(AbstractNetconfSession.java:191) ~[?:?]
      	at io.netty.channel.AbstractChannelHandlerContext.callHandlerAdded(AbstractChannelHandlerContext.java:938) ~[?:?]
      	at io.netty.channel.DefaultChannelPipeline.callHandlerAdded0(DefaultChannelPipeline.java:609) ~[?:?]
      	... 58 more
      

      It appears that the Session1 class generated from odl-netconf-monitoring.yang is loaded twice, one from netconf-impl & mdsal-netconf-impl which has netconf-impl as an embedded dependency causing class comparison to fail.

      Attachments

        # Subject Branch Project Status CR V

        Activity

          People

            rovarga Robert Varga
            sangwookha Sangwook Ha
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: