[CONTROLLER-1427] Exception in config-pusher when installing odl-openflowplugin-all (and -li) Created: 30/Sep/15  Updated: 21/Jun/18  Resolved: 26/Oct/15

Status: Resolved
Project: controller
Component/s: config
Affects Version/s: Beryllium
Fix Version/s: None

Type: Bug
Reporter: Jamo Luhrsen Assignee: Unassigned
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


External issue ID: 4387
Priority: High

 Description   

This may need to be reassigned to the openflowplugin project, but I think other config-pusher Exception bugs were resolved in controller before.

using the latest master [0], if you install 'odl-openflowplugin-all-li' the following exception is seen:

Exception in thread "config-pusher" java.lang.IllegalStateException: Unable to resolve value AttributeConfigElement [defaultValue=null, value=

{instance=TCP}

] to attribute transport-protocol
at org.opendaylight.controller.config.facade.xml.mapping.config.InstanceConfig.resolveConfiguration(InstanceConfig.java:131)
at org.opendaylight.controller.config.facade.xml.mapping.config.InstanceConfig.fromXml(InstanceConfig.java:192)
at org.opendaylight.controller.config.facade.xml.mapping.config.ModuleConfig.fromXml(ModuleConfig.java:59)
at org.opendaylight.controller.config.facade.xml.mapping.config.Config$1.resolveElement(Config.java:147)
at org.opendaylight.controller.config.facade.xml.mapping.config.Config$1.resolveElement(Config.java:144)
at org.opendaylight.controller.config.facade.xml.mapping.config.Config.resolveModule(Config.java:224)
at org.opendaylight.controller.config.facade.xml.mapping.config.Config.fromXmlModulesResolved(Config.java:152)
at org.opendaylight.controller.config.facade.xml.ConfigExecution.getResolvedXmlElements(ConfigExecution.java:49)
at org.opendaylight.controller.config.facade.xml.ConfigSubsystemFacade.setOnTransaction(ConfigSubsystemFacade.java:228)
at org.opendaylight.controller.config.facade.xml.ConfigSubsystemFacade.test(ConfigSubsystemFacade.java:165)
at org.opendaylight.controller.config.facade.xml.ConfigSubsystemFacade.executeTests(ConfigSubsystemFacade.java:149)
at org.opendaylight.controller.config.facade.xml.ConfigSubsystemFacade.executeConfigExecution(ConfigSubsystemFacade.java:123)
at org.opendaylight.controller.config.persist.impl.ConfigPusherImpl.pushConfig(ConfigPusherImpl.java:284)
at org.opendaylight.controller.config.persist.impl.ConfigPusherImpl.pushConfigWithConflictingVersionRetries(ConfigPusherImpl.java:143)
at org.opendaylight.controller.config.persist.impl.ConfigPusherImpl.internalPushConfigs(ConfigPusherImpl.java:113)
at org.opendaylight.controller.config.persist.impl.ConfigPusherImpl.processSingle(ConfigPusherImpl.java:81)
at org.opendaylight.controller.config.persist.impl.ConfigPusherImpl.process(ConfigPusherImpl.java:74)
at org.opendaylight.controller.config.persist.impl.osgi.ConfigPersisterActivator$2.run(ConfigPersisterActivator.java:131)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.IllegalStateException: Binding context provider was not set yet
at com.google.common.base.Preconditions.checkState(Preconditions.java:173)
at org.opendaylight.controller.config.facade.xml.osgi.YangStoreSnapshot.fromYang(YangStoreSnapshot.java:165)
at org.opendaylight.controller.config.facade.xml.mapping.attributes.resolving.EnumAttributeResolvingStrategy.parseAttribute(EnumAttributeResolvingStrategy.java:49)
at org.opendaylight.controller.config.facade.xml.mapping.attributes.fromxml.AttributeConfigElement.resolveValue(AttributeConfigElement.java:46)
at org.opendaylight.controller.config.facade.xml.mapping.config.InstanceConfig.resolveConfiguration(InstanceConfig.java:127)
... 18 more



 Comments   
Comment by Jamo Luhrsen [ 30/Sep/15 ]

distro used:
https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/org/opendaylight/integration/distribution-karaf/0.4.0-SNAPSHOT/distribution-karaf-0.4.0-20150929.161503-1551.zip

Comment by Vratko Polak [ 01/Oct/15 ]

Sounds similar to the issue this merged patch aims to fix:
https://git.opendaylight.org/gerrit/27658

Comment by Jamo Luhrsen [ 05/Oct/15 ]

a job in the sandbox using a distro produced Oct 4th hit another config-pusher issue. So the patch that was merged Oct 30th did not solve this one at least. Also, this came when installing "old-openflowplugin-flow-services-ui" (note: it's not the -li feature set)

2015-10-05 05:28:15,784 | ERROR | config-pusher | ConfigTransactionControllerImpl | 88 - org.opendaylight.controller.config-manager - 0.4.0.SNAPSHOT | Commit failed on ModuleIdentifier

{factoryName='statistics-manager', instanceName='statistics-manager'}

in transaction TransactionIdentifier

{name='ConfigTransaction-63-65'}

com.google.common.util.concurrent.UncheckedExecutionException: java.lang.IllegalStateException: Schema for interface org.opendaylight.yang.gen.v1.urn.opendaylight.group.statistics.rev131111.OpendaylightGroupStatisticsService is not available.
at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2203)
at com.google.common.cache.LocalCache.get(LocalCache.java:3937)
at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3941)
at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4824)
at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(LocalCache.java:4830)
at org.opendaylight.controller.md.sal.binding.impl.BindingDOMRpcServiceAdapter.getRpcService(BindingDOMRpcServiceAdapter.java:59)
at org.opendaylight.controller.md.sal.binding.compat.HeliumRpcProviderRegistry.getRpcService(HeliumRpcProviderRegistry.java:48)
at org.opendaylight.controller.md.sal.binding.util.AbstractBindingSalConsumerInstance.getRpcService(AbstractBindingSalConsumerInstance.java:70)
at org.opendaylight.controller.sal.binding.impl.RootBindingAwareBroker.getRpcService(RootBindingAwareBroker.java:192)
at org.opendaylight.openflowplugin.applications.statistics.manager.impl.StatRpcMsgManagerImpl.<init>(StatRpcMsgManagerImpl.java:116)
at org.opendaylight.openflowplugin.applications.statistics.manager.impl.StatisticsManagerImpl.start(StatisticsManagerImpl.java:115)
at org.opendaylight.openflowplugin.applications.config.yang.statistics_manager.StatisticsManagerModule.createInstance(StatisticsManagerModule.java:34)
at org.opendaylight.controller.config.spi.AbstractModule.getInstance(AbstractModule.java:81)
at sun.reflect.GeneratedMethodAccessor31.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.7.0_85]
at java.lang.reflect.Method.invoke(Method.java:606)[:1.7.0_85]
at org.opendaylight.controller.config.manager.impl.dependencyresolver.DependencyResolverManager$ModuleInvocationHandler.handleInvocation(DependencyResolverManager.java:150)
at com.google.common.reflect.AbstractInvocationHandler.invoke(AbstractInvocationHandler.java:87)
at com.sun.proxy.$Proxy70.getInstance(Unknown Source)
at org.opendaylight.controller.config.manager.impl.ConfigTransactionControllerImpl.secondPhaseCommit(ConfigTransactionControllerImpl.java:424)
at org.opendaylight.controller.config.manager.impl.ConfigRegistryImpl.secondPhaseCommit(ConfigRegistryImpl.java:280)
at org.opendaylight.controller.config.manager.impl.ConfigRegistryImpl.commitConfig(ConfigRegistryImpl.java:227)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:1.7.0_85]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)[:1.7.0_85]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.7.0_85]
at java.lang.reflect.Method.invoke(Method.java:606)[:1.7.0_85]
at sun.reflect.misc.Trampoline.invoke(MethodUtil.java:75)[:1.7.0_85]
at sun.reflect.GeneratedMethodAccessor33.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.7.0_85]
at java.lang.reflect.Method.invoke(Method.java:606)[:1.7.0_85]
at sun.reflect.misc.MethodUtil.invoke(MethodUtil.java:279)[:1.7.0_85]
at com.sun.jmx.mbeanserver.ConvertingMethod.invokeWithOpenReturn(ConvertingMethod.java:193)[:1.7.0_85]
at com.sun.jmx.mbeanserver.ConvertingMethod.invokeWithOpenReturn(ConvertingMethod.java:175)[:1.7.0_85]
at com.sun.jmx.mbeanserver.MXBeanIntrospector.invokeM2(MXBeanIntrospector.java:117)[:1.7.0_85]
at com.sun.jmx.mbeanserver.MXBeanIntrospector.invokeM2(MXBeanIntrospector.java:54)[:1.7.0_85]
at com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM(MBeanIntrospector.java:237)[:1.7.0_85]
at com.sun.jmx.mbeanserver.PerInterface.invoke(PerInterface.java:138)[:1.7.0_85]
at com.sun.jmx.mbeanserver.MBeanSupport.invoke(MBeanSupport.java:252)[:1.7.0_85]
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)[:1.7.0_85]
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)[:1.7.0_85]
at com.sun.jmx.mbeanserver.MXBeanProxy$InvokeHandler.invoke(MXBeanProxy.java:150)[:1.7.0_85]
at com.sun.jmx.mbeanserver.MXBeanProxy.invoke(MXBeanProxy.java:167)[:1.7.0_85]
at javax.management.MBeanServerInvocationHandler.invoke(MBeanServerInvocationHandler.java:258)[:1.7.0_85]
at com.sun.proxy.$Proxy16.commitConfig(Unknown Source)[80:org.opendaylight.controller.config-api:0.4.0.SNAPSHOT]
at org.opendaylight.controller.config.util.ConfigRegistryJMXClient.commitConfig(ConfigRegistryJMXClient.java:110)[84:org.opendaylight.controller.config-util:0.4.0.SNAPSHOT]
at org.opendaylight.controller.config.facade.xml.transactions.TransactionProvider.commitTransaction(TransactionProvider.java:145)[90:org.opendaylight.controller.config-manager-facade-xml:0.4.0.SNAPSHOT]
at org.opendaylight.controller.config.facade.xml.ConfigSubsystemFacade.commitSilentTransaction(ConfigSubsystemFacade.java:138)[90:org.opendaylight.controller.config-manager-facade-xml:0.4.0.SNAPSHOT]
at org.opendaylight.controller.config.persist.impl.ConfigPusherImpl.pushConfig(ConfigPusherImpl.java:291)[92:org.opendaylight.controller.config-persister-impl:0.4.0.SNAPSHOT]
at org.opendaylight.controller.config.persist.impl.ConfigPusherImpl.pushConfigWithConflictingVersionRetries(ConfigPusherImpl.java:143)[92:org.opendaylight.controller.config-persister-impl:0.4.0.SNAPSHOT]
at org.opendaylight.controller.config.persist.impl.ConfigPusherImpl.internalPushConfigs(ConfigPusherImpl.java:113)[92:org.opendaylight.controller.config-persister-impl:0.4.0.SNAPSHOT]
at org.opendaylight.controller.config.persist.impl.ConfigPusherImpl.processSingle(ConfigPusherImpl.java:81)[92:org.opendaylight.controller.config-persister-impl:0.4.0.SNAPSHOT]
at org.opendaylight.controller.config.persist.impl.ConfigPusherImpl.process(ConfigPusherImpl.java:74)[92:org.opendaylight.controller.config-persister-impl:0.4.0.SNAPSHOT]
at org.opendaylight.controller.config.persist.impl.osgi.ConfigPersisterActivator$2.run(ConfigPersisterActivator.java:131)[92:org.opendaylight.controller.config-persister-impl:0.4.0.SNAPSHOT]
at java.lang.Thread.run(Thread.java:745)[:1.7.0_85]
Caused by: java.lang.IllegalStateException: Schema for interface org.opendaylight.yang.gen.v1.urn.opendaylight.group.statistics.rev131111.OpendaylightGroupStatisticsService is not available.
at com.google.common.base.Preconditions.checkState(Preconditions.java:197)
at org.opendaylight.controller.md.sal.binding.impl.BindingToNormalizedNodeCodec.getModuleBlocking(BindingToNormalizedNodeCodec.java:313)
at org.opendaylight.controller.md.sal.binding.impl.BindingToNormalizedNodeCodec.getRpcMethodToSchema(BindingToNormalizedNodeCodec.java:292)
at org.opendaylight.controller.md.sal.binding.impl.RpcServiceAdapter.<init>(RpcServiceAdapter.java:57)
at org.opendaylight.controller.md.sal.binding.impl.BindingDOMRpcServiceAdapter.createProxy(BindingDOMRpcServiceAdapter.java:65)
at org.opendaylight.controller.md.sal.binding.impl.BindingDOMRpcServiceAdapter.access$100(BindingDOMRpcServiceAdapter.java:24)
at org.opendaylight.controller.md.sal.binding.impl.BindingDOMRpcServiceAdapter$2.load(BindingDOMRpcServiceAdapter.java:41)
at org.opendaylight.controller.md.sal.binding.impl.BindingDOMRpcServiceAdapter$2.load(BindingDOMRpcServiceAdapter.java:37)
at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3527)
at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2319)
at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2282)
at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2197)
... 53 more

Comment by Vratko Polak [ 06/Oct/15 ]

> Schema for interface * is not available.

It looks like a different symptom of the same bug.
Work on fixing it is being done in https://git.opendaylight.org/gerrit/#/c/27874

Comment by Vratko Polak [ 26/Oct/15 ]

Is this bug still present in recent Beryllium builds?

Comment by Jamo Luhrsen [ 26/Oct/15 ]

(In reply to Vratko Polák from comment #5)
> Is this bug still present in recent Beryllium builds?

No, using a distro from today (10/26) I do not see this issue.

moving to RESOLVED, but please feel free to re-open if it's seen
in some other cases.

Comment by Michael Vorburger [ 21/Jun/18 ]

something similar looking in MDSAL-354

Generated at Wed Feb 07 19:55:31 UTC 2024 using Jira 8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d.