|
it's easy to reproduce. just install odl-dlux-all first, then install odl-l2switch-all next. There are other sequences of feature installs to hit this issue as well.
once it happens, it seems basic openflow services are not working (e.g. cannot connect OVS switch)
Full karaf.log file is attached.
here is the traceback on the karaf console.
Exception in thread "pool-35-thread-3" java.lang.IllegalStateException: TopologyManager startup fail! TM bundle needs restart.
at org.opendaylight.openflowplugin.applications.topology.manager.DataChangeListenerImpl.<init>(DataChangeListenerImpl.java:66)
at org.opendaylight.openflowplugin.applications.topology.manager.TerminationPointChangeListenerImpl.<init>(TerminationPointChangeListenerImpl.java:41)
at org.opendaylight.openflowplugin.applications.topology.manager.FlowCapableTopologyProvider.onSessionInitiated(FlowCapableTopologyProvider.java:55)
at org.opendaylight.controller.md.sal.binding.util.BindingContextUtils.createProviderContextAndInitialize(BindingContextUtils.java:56)
at org.opendaylight.controller.sal.binding.impl.RootBindingAwareBroker.registerProvider(RootBindingAwareBroker.java:172)
at org.opendaylight.controller.sal.binding.impl.RootBindingAwareBroker.registerProvider(RootBindingAwareBroker.java:160)
at org.opendaylight.controller.sal.binding.api.AbstractBindingAwareProvider.onBrokerAvailable(AbstractBindingAwareProvider.java:18)
at org.opendaylight.controller.sal.binding.api.AbstractBrokerAwareActivator$1$1.run(AbstractBrokerAwareActivator.java:34)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:744)
Caused by: org.opendaylight.yangtools.binding.data.codec.impl.IncorrectNestingException: Class interface org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.FlowCapableNodeConnector is not valid child of interface org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.node.NodeConnector
at org.opendaylight.yangtools.binding.data.codec.impl.IncorrectNestingException.create(IncorrectNestingException.java:28)
at org.opendaylight.yangtools.binding.data.codec.impl.DataContainerCodecContext.childNonNull(DataContainerCodecContext.java:178)
at org.opendaylight.yangtools.binding.data.codec.impl.DataObjectCodecContext.bindingPathArgumentChild(DataObjectCodecContext.java:178)
at org.opendaylight.yangtools.binding.data.codec.impl.BindingCodecContext.getCodecContextNode(BindingCodecContext.java:127)
at org.opendaylight.yangtools.binding.data.codec.impl.InstanceIdentifierCodec.serialize(InstanceIdentifierCodec.java:29)
at org.opendaylight.yangtools.binding.data.codec.impl.InstanceIdentifierCodec.serialize(InstanceIdentifierCodec.java:19)
at org.opendaylight.yangtools.binding.data.codec.impl.BindingNormalizedNodeCodecRegistry.toYangInstanceIdentifier(BindingNormalizedNodeCodecRegistry.java:87)
at org.opendaylight.controller.md.sal.binding.impl.BindingToNormalizedNodeCodec.toYangInstanceIdentifierBlocking(BindingToNormalizedNodeCodec.java:99)
at org.opendaylight.controller.md.sal.binding.impl.AbstractForwardedDataBroker.registerDataChangeListener(AbstractForwardedDataBroker.java:68)
at org.opendaylight.openflowplugin.applications.topology.manager.DataChangeListenerImpl$1.call(DataChangeListenerImpl.java:58)
at org.opendaylight.openflowplugin.applications.topology.manager.DataChangeListenerImpl$1.call(DataChangeListenerImpl.java:55)
at org.opendaylight.openflowplugin.common.wait.SimpleTaskRetryLooper.loopUntilNoException(SimpleTaskRetryLooper.java:41)
at org.opendaylight.openflowplugin.applications.topology.manager.DataChangeListenerImpl.<init>(DataChangeListenerImpl.java:55)
... 10 more
|