Uploaded image for project: 'mdsal'
  1. mdsal
  2. MDSAL-379

Attempt to recover bindings when TCCL is incorrect

XMLWordPrintable

      As noted in INFRAUTILS-58, JobCoordinator shifts binding codec access to a place where the TCCL does not reflect available classes, leading to a failure to reload augmentations:

      org.opendaylight.mdsal.binding.dom.codec.impl.IncorrectNestingException: Class interface org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.rev160406.IfTunnel is not valid child of interface org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.Interface
      	at org.opendaylight.mdsal.binding.dom.codec.impl.IncorrectNestingException.create(IncorrectNestingException.java:25) ~[?:?]
      	at org.opendaylight.mdsal.binding.dom.codec.impl.DataContainerCodecContext.childNonNull(DataContainerCodecContext.java:165) ~[?:?]
      	at org.opendaylight.mdsal.binding.dom.codec.impl.DataObjectCodecContext.bindingPathArgumentChild(DataObjectCodecContext.java:185) ~[?:?]
      	at org.opendaylight.mdsal.binding.dom.codec.impl.BindingCodecContext.getCodecContextNode(BindingCodecContext.java:133) ~[?:?]
      	at org.opendaylight.mdsal.binding.dom.codec.impl.BindingCodecContext.newWriter(BindingCodecContext.java:110) ~[?:?]
      	at org.opendaylight.mdsal.binding.dom.codec.impl.BindingNormalizedNodeCodecRegistry.toNormalizedNode(BindingNormalizedNodeCodecRegistry.java:112) ~[?:?]
      	at org.opendaylight.mdsal.binding.dom.adapter.BindingToNormalizedNodeCodec.toNormalizedNode(BindingToNormalizedNodeCodec.java:162) ~[?:?]
      	at org.opendaylight.controller.md.sal.binding.impl.AbstractWriteTransaction.merge(AbstractWriteTransaction.java:51) ~[?:?]

      While this needs to be fixed in JobCoordinator, we have the class we're logging for available in this case, hence we can improve the situation by using the class's class loader as an alternative.

       

            rovarga Robert Varga
            rovarga Robert Varga
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: