Ok - so you're using the <clustered-app-config>. The code that handles that
is in org.opendaylight.controller.blueprint.ext.DataStoreAppConfigMetadata.
Basically it registers a DTCL for changes to the yang model. On change, it
restarts the blueprint container. Enable debug and see if it's getting
triggered.

Tom

On Wed, Apr 19, 2017 at 10:08 AM, Tomas Janciga -X (tjanciga - PANTHEON
TECHNOLOGIES at Cisco) <tjanc...@cisco.com> wrote:

> No, I’m referring to re-configuration of blueprint modules via restconf.
>
> First re-configuration passes and all next attempts are resulting with
> 200OK but the new configuration is not used by the module.
>
>
>
> Thanks,
>
> Tomas
>
> *From:* Tom Pantelis [mailto:tompante...@gmail.com]
> *Sent:* Wednesday, April 19, 2017 4:02 PM
> *To:* Tomas Janciga -X (tjanciga - PANTHEON TECHNOLOGIES at Cisco)
> *Cc:* controller-dev@lists.opendaylight.org; John Burns (johnburn)
>
> *Subject:* Re: [controller-dev] Re-configuration of module using
> Blueprint on Karaf4 distribution
>
>
>
> Are you referring to re-configuration of a config subsystem (CSS) module
> via restconf? If so, I don't know why it doesn't seem to work but I would
> suggest not using this mechanism as it's problematic for upgrades. I
> suggest to also convert to blueprint as, since Boron, we have been moving
> away from the CSS. In fact, we just discussed on the kernel call about
> officially deprecating it in Nitrogen with eventual removal in the future.
>
>
>
> Tom
>
>
>
> On Wed, Apr 19, 2017 at 7:41 AM, Tomas Janciga -X (tjanciga - PANTHEON
> TECHNOLOGIES at Cisco) <tjanc...@cisco.com> wrote:
>
> Thanks for clarification Tom.
>
> Now I understand that the stack trace is probably not related to the
> problem with re-configuration of modules on Karaf4.
>
>
>
> But is the issue with re-configuration already known please ?
>
> I’ve tried to find some project using karaf4-parent and using Blueprint
> configuration of modules, but I haven’t found any.
>
> Is IoTDM project the first project testing it ?
>
>
>
> Thanks,
>
> Tomas
>
> *From:* Tom Pantelis [mailto:tompante...@gmail.com]
> *Sent:* Tuesday, April 18, 2017 4:12 PM
> *To:* Tomas Janciga -X (tjanciga - PANTHEON TECHNOLOGIES at Cisco)
> *Cc:* controller-dev@lists.opendaylight.org
> *Subject:* Re: [controller-dev] Re-configuration of module using
> Blueprint on Karaf4 distribution
>
>
>
> Tomas,
>
>
>
> The "Unable to create a proxy object..." message is related to blueprint
> and is benign (logged as INFO). When registering a service instance, it
> tries to create a proxy for it (for the quiesce functionality which isn't
> important) - on failure it uses the original instance (lucky for us). This
> happens sometimes - not sure why - it's an issue in the Aries Proxy lib. It
> would be nice if it used the JDK proxy APIs for interfaces as that's robust
> and only used the ASM stuff when proxying a concrete class as the JDK proxy
> API doesn't support that. OSGi services normally advertise an interface
> anyway (best practice).
>
>
>
> Tom
>
>
>
> On Tue, Apr 18, 2017 at 9:55 AM, Tomas Janciga -X (tjanciga - PANTHEON
> TECHNOLOGIES at Cisco) <tjanc...@cisco.com> wrote:
>
> Hi guys,
>
> I’m working on migration of IoTDM project to Karaf4.
>
> I’ve done some draft changes of onem2m-core module and it’s submodules.
> Some of the submodules are using Blueprint configuration.
>
> I have a problem when I’m running Karaf4 distribution and I try to
> re-configure some of these modules through RESTCONF.
>
> First time everything works and module is re-configured successfully but
> second time (and for all next attempts as well) I just receive 200OK but
> the changed configuration is not used (the module is not re-loaded using
> the new configuration).
>
> I’ve noticed a stack trace in logs, it’s attached. It’s printed during the
> first re-configuration (nothing is printed during second and all next
> attempts to re-configure the module).
>
>
>
> Could you let me know please, if it is some known issue or whether it
> works well in general and the issue is related to my changes only ?
>
> The same steps works well for Karaf3 distribution of IoTDM.
>
> Thanks
>
> Tomas
>
>
>
> opendaylight-user@root>log:display
>
> 2017-04-18 06:38:51,010 | INFO  | erRestartService |
> printContainerRestartServiceImpl | 202 - org.opendaylight.controller.blueprint
> - 0.6.0.SNAPSHOT | Restarting blueprint containers for bundle
> org.opendaylight.iotdm.onem2m-protocol-http-provider_0.3.0.SNAPSHOT [267]
> and its dependent bundles []
>
> 2017-04-18 06:38:51,054 | INFO  | ainer-ThreadPool |
> BlueprintExtender                | 115 - org.apache.aries.blueprint.core
> - 1.6.2 | Destroying BlueprintContainer for bundle
> org.opendaylight.iotdm.onem2m-protocol-http-provider/0.3.0.SNAPSHOT
>
> 2017-04-18 06:38:51,092 | INFO  | ainer-ThreadPool |
> ContextHandler                   | 177 - org.eclipse.jetty.util -
> 8.1.19.v20160209 | stopped o.e.j.s.ServletContextHandler{/,null}
>
> 2017-04-18 06:38:51,145 | INFO  | ainer-ThreadPool |
> Onem2mHttpPluginServer           | 261 - org.opendaylight.iotdm.onem2m-core
> - 0.3.0.SNAPSHOT | stopHttpServer: on port: 8285
>
> 2017-04-18 06:38:51,145 | INFO  | ainer-ThreadPool |
> Onem2mHttpBaseIotdmPlugin        | 266 - 
> org.opendaylight.iotdm.onem2m-protocol-http-impl
> - 0.3.0.SNAPSHOT | Closed HTTP Base IoTDM plugin at port: 8285, security
> level: L0
>
> 2017-04-18 06:38:51,281 | INFO  | ainer-ThreadPool |
> Onem2mRouterService              | 261 - org.opendaylight.iotdm.onem2m-core
> - 0.3.0.SNAPSHOT | Default router plugin removed: http
>
> 2017-04-18 06:38:51,281 | INFO  | ainer-ThreadPool |
> Onem2mHttpProvider               | 267 - 
> org.opendaylight.iotdm.onem2m-protocol-http-provider
> - 0.3.0.SNAPSHOT | Onem2mHttpProvider instance HttpProviderDefault: Closed
>
> 2017-04-18 06:38:51,285 | INFO  | ainer-ThreadPool |
> printContainerRestartServiceImpl | 202 - org.opendaylight.controller.blueprint
> - 0.6.0.SNAPSHOT | Restarting blueprint container for bundle
> org.opendaylight.iotdm.onem2m-protocol-http-provider_0.3.0.SNAPSHOT [267]
> with paths [bundleentry://267.fwk613784740/org/opendaylight/
> blueprint/impl-blueprint.xml]
>
> 2017-04-18 06:38:51,299 | INFO  | ainer-ThreadPool |
> ServiceRecipe                    | 115 - org.apache.aries.blueprint.core
> - 1.6.2 | Unable to create a proxy object for the service .component-1
> defined in bundle org.opendaylight.controller.sal-binding-broker-impl/
> 1.5.0.SNAPSHOT with id. Returning the original object instead.
>
> org.apache.aries.proxy.UnableToProxyException:
> java.lang.ClassFormatError: Duplicate interface name in class file
> Proxye8f10bc6_1688_47fc_b4b5_8d679dbb8631
>
>                 at org.apache.aries.proxy.impl.
> interfaces.ProxyClassLoader.createProxyClass(ProxyClassLoader.java:165)
>
>                 at org.apache.aries.proxy.impl.interfaces.
> InterfaceProxyGenerator.getProxyInstance(InterfaceProxyGenerator.java:97)
>
>                 at org.apache.aries.proxy.impl.AsmProxyManager.
> createNewProxy(AsmProxyManager.java:80)
>
>                 at org.apache.aries.proxy.impl.AbstractProxyManager.
> createDelegatingInterceptingProxy(AbstractProxyManager.java:75)
>
>                 at org.apache.aries.proxy.impl.AbstractProxyManager.
> createInterceptingProxy(AbstractProxyManager.java:53)
>
>                 at org.apache.aries.blueprint.container.ServiceRecipe$
> TriggerServiceFactory.getService(ServiceRecipe.java:
> 569)[115:org.apache.aries.blueprint.core:1.6.2]
>
>                 at org.eclipse.osgi.internal.serviceregistry.
> ServiceFactoryUse$1.run(ServiceFactoryUse.java:212)[
> org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
>
>                 at java.security.AccessController.doPrivileged(Native
> Method)[:1.8.0_91]
>
>                 at org.eclipse.osgi.internal.serviceregistry.
> ServiceFactoryUse.factoryGetService(ServiceFactoryUse.java:210)[
> org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
>
>                 at org.eclipse.osgi.internal.serviceregistry.
> ServiceFactoryUse.getService(ServiceFactoryUse.java:111)[
> org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
>
>                 at org.eclipse.osgi.internal.serviceregistry.
> ServiceConsumer$2.getService(ServiceConsumer.java:45)[org.
> eclipse.osgi-3.10.101.v20150820-1432.jar:]
>
>                 at org.eclipse.osgi.internal.serviceregistry.
> ServiceRegistrationImpl.getService(ServiceRegistrationImpl.java:
> 496)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
>
>                 at org.eclipse.osgi.internal.serviceregistry.
> ServiceRegistry.getService(ServiceRegistry.java:461)[org.
> eclipse.osgi-3.10.101.v20150820-1432.jar:]
>
>                 at org.eclipse.osgi.internal.framework.BundleContextImpl.
> getService(BundleContextImpl.java:619)[org.eclipse.osgi-3.
> 10.101.v20150820-1432.jar:]
>
>                 at org.apache.aries.blueprint.container.
> AbstractServiceReferenceRecipe.getServiceSecurely(
> AbstractServiceReferenceRecipe.java:235)[115:org.apache.
> aries.blueprint.core:1.6.2]
>
>                 at org.opendaylight.controller.blueprint.ext.
> StaticServiceReferenceRecipe.internalCreate(StaticServiceReferenceRecipe.
> java:109)[202:org.opendaylight.controller.blueprint:0.6.0.SNAPSHOT]
>
>                 at org.opendaylight.controller.blueprint.ext.
> StaticServiceReferenceRecipe.retrack(StaticServiceReferenceRecipe.
> java:75)[202:org.opendaylight.controller.blueprint:0.6.0.SNAPSHOT]
>
>                 at org.apache.aries.blueprint.container.
> AbstractServiceReferenceRecipe.start(AbstractServiceReferenceRecipe
> .java:140)[115:org.apache.aries.blueprint.core:1.6.2]
>
>                 at org.opendaylight.controller.blueprint.ext.
> StaticServiceReferenceRecipe.startTracking(StaticServiceReferenceRecipe.
> java:46)[202:org.opendaylight.controller.blueprint:0.6.0.SNAPSHOT]
>
>                 at org.opendaylight.controller.blueprint.ext.
> AbstractDependentComponentFactoryMetadata.retrieveService(
> AbstractDependentComponentFactoryMetadata.java:119)[202:org.
> opendaylight.controller.blueprint:0.6.0.SNAPSHOT]
>
>                 at org.opendaylight.controller.blueprint.ext.
> AbstractDependentComponentFactoryMetadata.retrieveService(
> AbstractDependentComponentFactoryMetadata.java:104)[202:org.
> opendaylight.controller.blueprint:0.6.0.SNAPSHOT]
>
>                 at org.opendaylight.controller.blueprint.ext.
> DataStoreAppConfigMetadata.startTracking(DataStoreAppConfigMetadata.
> java:166)[202:org.opendaylight.controller.blueprint:0.6.0.SNAPSHOT]
>
>                 at org.opendaylight.controller.blueprint.ext.
> AbstractDependentComponentFactoryMetadata.startTracking(
> AbstractDependentComponentFactoryMetadata.java:186)[202:org.
> opendaylight.controller.blueprint:0.6.0.SNAPSHOT]
>
>                 at org.apache.aries.blueprint.di.
> DependentComponentFactoryRecipe.start(DependentComponentFactoryRecip
> e.java:55)[115:org.apache.aries.blueprint.core:1.6.2]
>
>                 at org.apache.aries.blueprint.container.
> BlueprintContainerImpl.trackServiceReferences(BlueprintContainerImpl.java:
> 636)[115:org.apache.aries.blueprint.core:1.6.2]
>
>                 at org.apache.aries.blueprint.container.
> BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:
> 360)[115:org.apache.aries.blueprint.core:1.6.2]
>
>                 at org.apache.aries.blueprint.container.
> BlueprintContainerImpl.run(BlueprintContainerImpl.java:
> 276)[115:org.apache.aries.blueprint.core:1.6.2]
>
>                 at org.apache.aries.blueprint.container.BlueprintExtender.
> createContainer(BlueprintExtender.java:300)[115:org.apache.aries.
> blueprint.core:1.6.2]
>
>                 at org.apache.aries.blueprint.container.BlueprintExtender.
> createContainer(BlueprintExtender.java:269)[115:org.apache.aries.
> blueprint.core:1.6.2]
>
>                 at org.apache.aries.blueprint.container.BlueprintExtender.
> access$900(BlueprintExtender.java:68)[115:org.apache.aries.
> blueprint.core:1.6.2]
>
>                 at org.apache.aries.blueprint.container.BlueprintExtender$
> BlueprintContainerServiceImpl.createContainer(BlueprintExtender.java:602)[
> 115:org.apache.aries.blueprint.core:1.6.2]
>
>                 at org.opendaylight.controller.blueprint.
> BlueprintContainerRestartServiceImpl.lambda$createContainers$6(
> BlueprintContainerRestartServiceImpl.java:216)[202:org.
> opendaylight.controller.blueprint:0.6.0.SNAPSHOT]
>
>                 at java.util.ArrayList.forEach(
> ArrayList.java:1249)[:1.8.0_91]
>
>                 at org.opendaylight.controller.blueprint.
> BlueprintContainerRestartServiceImpl.createContainers(
> BlueprintContainerRestartServiceImpl.java:211)[202:org.
> opendaylight.controller.blueprint:0.6.0.SNAPSHOT]
>
>                 at org.opendaylight.controller.blueprint.
> BlueprintContainerRestartServiceImpl.lambda$restartContainerAndDependentsI
> nternal$3(BlueprintContainerRestartServiceImpl.java:140)[202:org.
> opendaylight.controller.blueprint:0.6.0.SNAPSHOT]
>
>                 at org.opendaylight.controller.blueprint.
> BlueprintContainerRestartServiceImpl.destroyContainers(
> BlueprintContainerRestartServiceImpl.java:176)[202:org.
> opendaylight.controller.blueprint:0.6.0.SNAPSHOT]
>
>                 at org.opendaylight.controller.blueprint.
> BlueprintContainerRestartServiceImpl.lambda$destroyContainers$5(
> BlueprintContainerRestartServiceImpl.java:205)[202:org.
> opendaylight.controller.blueprint:0.6.0.SNAPSHOT]
>
>                 at org.apache.aries.blueprint.container.
> BlueprintQuiesceParticipant$QuiesceDelegatingCallback.callback(
> BlueprintQuiesceParticipant.java:159)[115:org.apache.
> aries.blueprint.core:1.6.2]
>
>                 at org.apache.aries.blueprint.container.
> BlueprintQuiesceParticipant$QuiesceBundle.run(BlueprintQuiesceParticipant.
> java:125)[115:org.apache.aries.blueprint.core:1.6.2]
>
>                 at java.util.concurrent.ThreadPoolExecutor.runWorker(
> ThreadPoolExecutor.java:1142)[:1.8.0_91]
>
>                 at java.util.concurrent.ThreadPoolExecutor$Worker.run(
> ThreadPoolExecutor.java:617)[:1.8.0_91]
>
>                 at java.lang.Thread.run(Thread.java:745)[:1.8.0_91]
>
> Caused by: java.lang.ClassFormatError: Duplicate interface name in class
> file Proxye8f10bc6_1688_47fc_b4b5_8d679dbb8631
>
>                 at java.lang.ClassLoader.defineClass1(Native
> Method)[:1.8.0_91]
>
>                 at java.lang.ClassLoader.defineClass(ClassLoader.java:
> 763)[:1.8.0_91]
>
>                 at org.apache.aries.proxy.impl.
> interfaces.ProxyClassLoader.createProxyClass(ProxyClassLoader.java:157)
>
>                 ... 41 more
>
>
> _______________________________________________
> controller-dev mailing list
> controller-dev@lists.opendaylight.org
> https://lists.opendaylight.org/mailman/listinfo/controller-dev
>
>
>
>
>
_______________________________________________
controller-dev mailing list
controller-dev@lists.opendaylight.org
https://lists.opendaylight.org/mailman/listinfo/controller-dev
  • [controller-d... Tomas Janciga -X (tjanciga - PANTHEON TECHNOLOGIES at Cisco)
    • Re: [con... Tom Pantelis
      • Re: ... Tomas Janciga -X (tjanciga - PANTHEON TECHNOLOGIES at Cisco)
        • ... Tom Pantelis
          • ... Tomas Janciga -X (tjanciga - PANTHEON TECHNOLOGIES at Cisco)
            • ... Tom Pantelis
              • ... Tomas Janciga -X (tjanciga - PANTHEON TECHNOLOGIES at Cisco)

Reply via email to