You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@brooklyn.apache.org by "Aled Sage (JIRA)" <ji...@apache.org> on 2017/10/23 09:08:00 UTC

[jira] [Created] (BROOKLYN-545) Rebind failure after using cluster with `enableAvailabilityZones`

Aled Sage created BROOKLYN-545:
----------------------------------

             Summary: Rebind failure after using cluster with `enableAvailabilityZones`
                 Key: BROOKLYN-545
                 URL: https://issues.apache.org/jira/browse/BROOKLYN-545
             Project: Brooklyn
          Issue Type: Bug
    Affects Versions: 0.12.0
            Reporter: Aled Sage
            Assignee: Aled Sage
            Priority: Critical


I was running Brooklyn 1.0.0-snapshot. On restarting Brooklyn, it failed to rebind with the {{NullPointerException}} below in the log.

This probably affects lots of older versions of Brooklyn as well (I've guessed at 0.12.0 in the "affects" field!).

Problem is that our xstream deserialization is trying to insert a null key into a {{ConcurrentHashMap}}. This is because the {{DynamicCluster}}'s config key {{dynamiccluster.zone.failureDetector}} has a mutable default value!

The {{ProportionalZoneFailureDetector.zoneHistories}} contains {{locationProxy}} instances for locations that no longer exist.

I'm guessing the consequence of this bug is that if anyone uses {{enableAvailabilityZones}} in an app and then terminates the app (thus unmanaging the locations), any subsequent use of an app with {{DynamicCluster}} will cause rebind to fail.

{noformat}
2017-10-17T10:37:38,348 ERROR 126 o.a.b.l.c.BasicLauncher [FelixStartLevel] Subsystem for persistence had startup error (continuing with startup): org.apache.brooklyn.util.exceptions.FatalRuntimeException: Error rebinding to persisted state: Failure rebinding: problem loading memento: memento h4wlc143uw deserialization error: ConversionException: null : null
---- Debugging information ----
cause-exception     : java.lang.NullPointerException
cause-message       : null
class               : java.util.concurrent.ConcurrentHashMap
required-type       : java.util.concurrent.ConcurrentHashMap
converter-type      : org.apache.brooklyn.util.core.xstream.StringKeyMapConverter
path                : /entity/config/dynamiccluster.memberspec/org.apache.brooklyn.api:org.apache.brooklyn.api.entity.EntitySpec/parameters/org.apache.brooklyn.core:org.apache.brooklyn.core.objs.BasicSpecParameter[19]/configKey/defaultValue/zoneHistories/entry
line number         : 539
class[1]            : org.apache.brooklyn.entity.group.zoneaware.ProportionalZoneFailureDetector
converter-type[1]   : com.thoughtworks.xstream.converters.reflection.ReflectionConverter
class[2]            : org.apache.brooklyn.core.config.BasicConfigKey
class[3]            : org.apache.brooklyn.core.objs.BasicSpecParameter
class[4]            : com.google.common.collect.ImmutableList
converter-type[2]   : org.apache.brooklyn.util.core.xstream.ImmutableListConverter
class[5]            : org.apache.brooklyn.api.entity.EntitySpec
converter-type[3]   : org.apache.brooklyn.core.mgmt.persist.XmlMementoSerializer$SpecConverter
class[6]            : java.util.LinkedHashMap
class[7]            : org.apache.brooklyn.core.mgmt.rebind.dto.BasicEntityMemento
version             : 1.0.0-SNAPSHOT
-------------------------------
org.apache.brooklyn.util.exceptions.FatalRuntimeException: Error rebinding to persisted state: Failure rebinding: problem loading memento: memento h4wlc143uw deserialization error: ConversionException: null : null
---- Debugging information ----
cause-exception     : java.lang.NullPointerException
cause-message       : null
class               : java.util.concurrent.ConcurrentHashMap
required-type       : java.util.concurrent.ConcurrentHashMap
converter-type      : org.apache.brooklyn.util.core.xstream.StringKeyMapConverter
path                : /entity/config/dynamiccluster.memberspec/org.apache.brooklyn.api:org.apache.brooklyn.api.entity.EntitySpec/parameters/org.apache.brooklyn.core:org.apache.brooklyn.core.objs.BasicSpecParameter[19]/c
onfigKey/defaultValue/zoneHistories/entry
line number         : 539
class[1]            : org.apache.brooklyn.entity.group.zoneaware.ProportionalZoneFailureDetector
converter-type[1]   : com.thoughtworks.xstream.converters.reflection.ReflectionConverter
class[2]            : org.apache.brooklyn.core.config.BasicConfigKey
class[3]            : org.apache.brooklyn.core.objs.BasicSpecParameter
class[4]            : com.google.common.collect.ImmutableList
converter-type[2]   : org.apache.brooklyn.util.core.xstream.ImmutableListConverter
class[5]            : org.apache.brooklyn.api.entity.EntitySpec
converter-type[3]   : org.apache.brooklyn.core.mgmt.persist.XmlMementoSerializer$SpecConverter
class[6]            : java.util.LinkedHashMap
class[7]            : org.apache.brooklyn.core.mgmt.rebind.dto.BasicEntityMemento
version             : 1.0.0-SNAPSHOT
-------------------------------
        at org.apache.brooklyn.launcher.common.BasicLauncher.startPersistenceWithoutHA(BasicLauncher.java:654) [126:org.apache.brooklyn.launcher-common:1.0.0.SNAPSHOT]
        at org.apache.brooklyn.launcher.common.BasicLauncher.startPersistence(BasicLauncher.java:611) [126:org.apache.brooklyn.launcher-common:1.0.0.SNAPSHOT]
        at org.apache.brooklyn.launcher.common.BasicLauncher.handlePersistence(BasicLauncher.java:501) [126:org.apache.brooklyn.launcher-common:1.0.0.SNAPSHOT]
        at org.apache.brooklyn.launcher.common.BasicLauncher.startPartTwo(BasicLauncher.java:418) [126:org.apache.brooklyn.launcher-common:1.0.0.SNAPSHOT]
        at org.apache.brooklyn.launcher.osgi.OsgiLauncherImpl.startOsgi(OsgiLauncherImpl.java:116) [333:org.apache.brooklyn.karaf-init:1.0.0.SNAPSHOT]
        at Proxy15e05ead_d753_4d2d_a439_dc3559cde5b4.startOsgi(Unknown Source) [?:?]
        at org.apache.brooklyn.launcher.osgi.start.OsgiLauncherCompleter.init(OsgiLauncherCompleter.java:36) [335:org.apache.brooklyn.karaf-start:1.0.0.SNAPSHOT]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
        at java.lang.reflect.Method.invoke(Method.java:498) ~[?:?]
        at org.apache.aries.blueprint.utils.ReflectionUtils.invoke(ReflectionUtils.java:299) [15:org.apache.aries.blueprint.core:1.8.2]
        at org.apache.aries.blueprint.container.BeanRecipe.invoke(BeanRecipe.java:980) [15:org.apache.aries.blueprint.core:1.8.2]
        at org.apache.aries.blueprint.container.BeanRecipe.runBeanProcInit(BeanRecipe.java:736) [15:org.apache.aries.blueprint.core:1.8.2]
        at org.apache.aries.blueprint.container.BeanRecipe.internalCreate2(BeanRecipe.java:848) [15:org.apache.aries.blueprint.core:1.8.2]
        at org.apache.aries.blueprint.container.BeanRecipe.internalCreate(BeanRecipe.java:811) [15:org.apache.aries.blueprint.core:1.8.2]
        at org.apache.aries.blueprint.di.AbstractRecipe$1.call(AbstractRecipe.java:79) [15:org.apache.aries.blueprint.core:1.8.2]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
        at org.apache.aries.blueprint.di.AbstractRecipe.create(AbstractRecipe.java:88) [15:org.apache.aries.blueprint.core:1.8.2]
        at org.apache.aries.blueprint.container.BlueprintRepository.createInstances(BlueprintRepository.java:255) [15:org.apache.aries.blueprint.core:1.8.2]
        at org.apache.aries.blueprint.container.BlueprintRepository.createAll(BlueprintRepository.java:186) [15:org.apache.aries.blueprint.core:1.8.2]
        at org.apache.aries.blueprint.container.BlueprintContainerImpl.instantiateEagerComponents(BlueprintContainerImpl.java:704) [15:org.apache.aries.blueprint.core:1.8.2]
        at org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:410) [15:org.apache.aries.blueprint.core:1.8.2]
        at org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:275) [15:org.apache.aries.blueprint.core:1.8.2]
        at org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:300) [15:org.apache.aries.blueprint.core:1.8.2]
        at org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:269) [15:org.apache.aries.blueprint.core:1.8.2]
        at org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:265) [15:org.apache.aries.blueprint.core:1.8.2]
        at org.apache.aries.blueprint.container.BlueprintExtender.modifiedBundle(BlueprintExtender.java:255) [15:org.apache.aries.blueprint.core:1.8.2]
        at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:500) [15:org.apache.aries.blueprint.core:1.8.2]
        at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:433) [15:org.apache.aries.blueprint.core:1.8.2]
        at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$AbstractTracked.track(BundleHookBundleTracker.java:725) [15:org.apache.aries.blueprint.core:1.8.2]
        at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.bundleChanged(BundleHookBundleTracker.java:463) [15:org.apache.aries.blueprint.core:1.8.2]
        at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$BundleEventHook.event(BundleHookBundleTracker.java:422) [15:org.apache.aries.blueprint.core:1.8.2]
        at org.apache.felix.framework.util.SecureAction.invokeBundleEventHook(SecureAction.java:1179) [?:?]
        at org.apache.felix.framework.EventDispatcher.createWhitelistFromHooks(EventDispatcher.java:730) [?:?]
        at org.apache.felix.framework.EventDispatcher.fireBundleEvent(EventDispatcher.java:485) [?:?]
        at org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:4563) [?:?]
        at org.apache.felix.framework.Felix.startBundle(Felix.java:2173) [?:?]
        at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1372) [?:?]
        at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308) [?:?]
        at java.lang.Thread.run(Thread.java:748) [?:?]
Caused by: org.apache.brooklyn.util.exceptions.PropagatedRuntimeException: Failure rebinding: problem loading memento: memento h4wlc143uw deserialization error: ConversionException: null : null
---- Debugging information ----
cause-exception     : java.lang.NullPointerException
cause-message       : null
class               : java.util.concurrent.ConcurrentHashMap
required-type       : java.util.concurrent.ConcurrentHashMap
converter-type      : org.apache.brooklyn.util.core.xstream.StringKeyMapConverter
path                : /entity/config/dynamiccluster.memberspec/org.apache.brooklyn.api:org.apache.brooklyn.api.entity.EntitySpec/parameters/org.apache.brooklyn.core:org.apache.brooklyn.core.objs.BasicSpecParameter[19]/configKey/defaultValue/zoneHistories/entry
line number         : 539
class[1]            : org.apache.brooklyn.entity.group.zoneaware.ProportionalZoneFailureDetector
converter-type[1]   : com.thoughtworks.xstream.converters.reflection.ReflectionConverter
class[2]            : org.apache.brooklyn.core.config.BasicConfigKey
class[3]            : org.apache.brooklyn.core.objs.BasicSpecParameter
class[4]            : com.google.common.collect.ImmutableList
converter-type[2]   : org.apache.brooklyn.util.core.xstream.ImmutableListConverter
class[5]            : org.apache.brooklyn.api.entity.EntitySpec
converter-type[3]   : org.apache.brooklyn.core.mgmt.persist.XmlMementoSerializer$SpecConverter
class[6]            : java.util.LinkedHashMap
class[7]            : org.apache.brooklyn.core.mgmt.rebind.dto.BasicEntityMemento
version             : 1.0.0-SNAPSHOT
-------------------------------
        at org.apache.brooklyn.util.exceptions.Exceptions.create(Exceptions.java:481) ~[?:?]
        at org.apache.brooklyn.core.mgmt.rebind.RebindExceptionHandlerImpl.onDoneImpl(RebindExceptionHandlerImpl.java:504) ~[?:?]
        at org.apache.brooklyn.core.mgmt.rebind.RebindExceptionHandlerImpl.onDone(RebindExceptionHandlerImpl.java:420) ~[?:?]
        at org.apache.brooklyn.core.mgmt.rebind.RebindIteration.run(RebindIteration.java:282) ~[?:?]
        at org.apache.brooklyn.core.mgmt.rebind.RebindManagerImpl.rebindImpl(RebindManagerImpl.java:538) ~[?:?]
        at org.apache.brooklyn.core.mgmt.rebind.RebindManagerImpl.lambda$rebind$0(RebindManagerImpl.java:494) ~[?:?]
        at org.apache.brooklyn.util.core.task.BasicExecutionContext$1.call(BasicExecutionContext.java:143) ~[?:?]
        at org.apache.brooklyn.util.core.task.BasicExecutionContext$1.call(BasicExecutionContext.java:141) ~[?:?]
        at org.apache.brooklyn.util.core.task.BasicExecutionContext.runInSameThread(BasicExecutionContext.java:227) ~[?:?]
        at org.apache.brooklyn.util.core.task.BasicExecutionContext.get(BasicExecutionContext.java:141) ~[?:?]
        at org.apache.brooklyn.core.mgmt.rebind.RebindManagerImpl.rebind(RebindManagerImpl.java:493) ~[?:?]
        at org.apache.brooklyn.launcher.common.BasicLauncher.startPersistenceWithoutHA(BasicLauncher.java:649) ~[?:?]
        ... 40 more
Caused by: java.lang.IllegalStateException: problem loading memento: memento h4wlc143uw deserialization error
        at org.apache.brooklyn.core.mgmt.rebind.RebindExceptionHandlerImpl.onLoadMementoFailed(RebindExceptionHandlerImpl.java:179) ~[?:?]
        at org.apache.brooklyn.core.mgmt.persist.BrooklynMementoPersisterToObjectStore$4.visit(BrooklynMementoPersisterToObjectStore.java:486) ~[?:?]
        at org.apache.brooklyn.core.mgmt.persist.BrooklynMementoPersisterToObjectStore$1VisitorWrapper.run(BrooklynMementoPersisterToObjectStore.java:530) ~[?:?]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) ~[?:?]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[?:?]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) ~[?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ~[?:?]
        ... 1 more
Caused by: com.thoughtworks.xstream.converters.ConversionException: null : null
---- Debugging information ----
cause-exception     : java.lang.NullPointerException
cause-message       : null
class               : java.util.concurrent.ConcurrentHashMap
required-type       : java.util.concurrent.ConcurrentHashMap
converter-type      : org.apache.brooklyn.util.core.xstream.StringKeyMapConverter
path                : /entity/config/dynamiccluster.memberspec/org.apache.brooklyn.api:org.apache.brooklyn.api.entity.EntitySpec/parameters/org.apache.brooklyn.core:org.apache.brooklyn.core.objs.BasicSpecParameter[19]/configKey/defaultValue/zoneHistories/entry
line number         : 539
class[1]            : org.apache.brooklyn.entity.group.zoneaware.ProportionalZoneFailureDetector
converter-type[1]   : com.thoughtworks.xstream.converters.reflection.ReflectionConverter
class[2]            : org.apache.brooklyn.core.config.BasicConfigKey
class[3]            : org.apache.brooklyn.core.objs.BasicSpecParameter
class[4]            : com.google.common.collect.ImmutableList
converter-type[2]   : org.apache.brooklyn.util.core.xstream.ImmutableListConverter
class[5]            : org.apache.brooklyn.api.entity.EntitySpec
converter-type[3]   : org.apache.brooklyn.core.mgmt.persist.XmlMementoSerializer$SpecConverter
class[6]            : java.util.LinkedHashMap
class[7]            : org.apache.brooklyn.core.mgmt.rebind.dto.BasicEntityMemento
version             : 1.0.0-SNAPSHOT
-------------------------------
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:79) ~[?:?]
        at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:65) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66) ~[?:?]
        at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unmarshallField(AbstractReflectionConverter.java:480) ~[?:?]
        at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.doUnmarshal(AbstractReflectionConverter.java:412) ~[?:?]
        at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unmarshal(AbstractReflectionConverter.java:263) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72) ~[?:?]
        at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:65) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66) ~[?:?]
        at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unmarshallField(AbstractReflectionConverter.java:480) ~[?:?]
        at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.doUnmarshal(AbstractReflectionConverter.java:412) ~[?:?]
        at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unmarshal(AbstractReflectionConverter.java:263) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72) ~[?:?]
        at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:65) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66) ~[?:?]
        at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unmarshallField(AbstractReflectionConverter.java:480) ~[?:?]
        at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.doUnmarshal(AbstractReflectionConverter.java:412) ~[?:?]
        at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unmarshal(AbstractReflectionConverter.java:263) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72) ~[?:?]
        at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:65) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:50) ~[?:?]
        at com.thoughtworks.xstream.converters.collections.AbstractCollectionConverter.readItem(AbstractCollectionConverter.java:71) ~[?:?]
        at com.thoughtworks.xstream.converters.collections.CollectionConverter.addCurrentElementToCollection(CollectionConverter.java:98) ~[?:?]
        at com.thoughtworks.xstream.converters.collections.CollectionConverter.populateCollection(CollectionConverter.java:91) ~[?:?]
        at com.thoughtworks.xstream.converters.collections.CollectionConverter.populateCollection(CollectionConverter.java:85) ~[?:?]
        at org.apache.brooklyn.util.core.xstream.ImmutableListConverter.unmarshal(ImmutableListConverter.java:52) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72) ~[?:?]
        at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:65) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66) ~[?:?]
        at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unmarshallField(AbstractReflectionConverter.java:480) ~[?:?]
        at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.doUnmarshal(AbstractReflectionConverter.java:412) ~[?:?]
        at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unmarshal(AbstractReflectionConverter.java:263) ~[?:?]
        at org.apache.brooklyn.core.mgmt.persist.XmlMementoSerializer$SpecConverter.unmarshal(XmlMementoSerializer.java:455) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72) ~[?:?]
        at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:65) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:50) ~[?:?]
        at com.thoughtworks.xstream.converters.collections.AbstractCollectionConverter.readItem(AbstractCollectionConverter.java:71) ~[?:?]
        at org.apache.brooklyn.util.core.xstream.StringKeyMapConverter.unmarshalStringKey(StringKeyMapConverter.java:120) ~[?:?]
        at org.apache.brooklyn.util.core.xstream.StringKeyMapConverter.unmarshalEntry(StringKeyMapConverter.java:111) ~[?:?]
        at org.apache.brooklyn.util.core.xstream.MapConverter.populateMap(MapConverter.java:89) ~[?:?]
        at com.thoughtworks.xstream.converters.collections.MapConverter.unmarshal(MapConverter.java:87) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72) ~[?:?]
        at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:65) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66) ~[?:?]
        at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unmarshallField(AbstractReflectionConverter.java:480) ~[?:?]
        at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.doUnmarshal(AbstractReflectionConverter.java:412) ~[?:?]
        at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unmarshal(AbstractReflectionConverter.java:263) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72) ~[?:?]
        at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:65) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:50) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.start(TreeUnmarshaller.java:134) ~[?:?]
        at com.thoughtworks.xstream.core.AbstractTreeMarshallingStrategy.unmarshal(AbstractTreeMarshallingStrategy.java:32) ~[?:?]
        at com.thoughtworks.xstream.XStream.unmarshal(XStream.java:1206) ~[?:?]
        at com.thoughtworks.xstream.XStream.unmarshal(XStream.java:1190) ~[?:?]
        at com.thoughtworks.xstream.XStream.fromXML(XStream.java:1061) ~[?:?]
        at org.apache.brooklyn.util.core.xstream.XmlSerializer.deserialize(XmlSerializer.java:167) ~[?:?]
        at org.apache.brooklyn.util.core.xstream.XmlSerializer.fromString(XmlSerializer.java:177) ~[?:?]
        at org.apache.brooklyn.core.mgmt.persist.RetryingMementoSerializer.fromString(RetryingMementoSerializer.java:71) ~[?:?]
        at org.apache.brooklyn.core.mgmt.persist.BrooklynMementoPersisterToObjectStore$4.visit(BrooklynMementoPersisterToObjectStore.java:479) ~[?:?]
        at org.apache.brooklyn.core.mgmt.persist.BrooklynMementoPersisterToObjectStore$1VisitorWrapper.run(BrooklynMementoPersisterToObjectStore.java:530) ~[?:?]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) ~[?:?]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[?:?]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) ~[?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ~[?:?]
        ... 1 more
Caused by: java.lang.NullPointerException
        at java.util.concurrent.ConcurrentHashMap.putVal(ConcurrentHashMap.java:1011) ~[?:?]
        at java.util.concurrent.ConcurrentHashMap.put(ConcurrentHashMap.java:1006) ~[?:?]
        at org.apache.brooklyn.util.core.xstream.MapConverter.unmarshalEntry(MapConverter.java:103) ~[?:?]
        at org.apache.brooklyn.util.core.xstream.StringKeyMapConverter.unmarshalEntry(StringKeyMapConverter.java:109) ~[?:?]
        at org.apache.brooklyn.util.core.xstream.MapConverter.populateMap(MapConverter.java:89) ~[?:?]
        at com.thoughtworks.xstream.converters.collections.MapConverter.unmarshal(MapConverter.java:87) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72) ~[?:?]
        at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:65) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66) ~[?:?]
        at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unmarshallField(AbstractReflectionConverter.java:480) ~[?:?]
        at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.doUnmarshal(AbstractReflectionConverter.java:412) ~[?:?]
        at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unmarshal(AbstractReflectionConverter.java:263) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72) ~[?:?]
        at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:65) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66) ~[?:?]
        at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unmarshallField(AbstractReflectionConverter.java:480) ~[?:?]
        at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.doUnmarshal(AbstractReflectionConverter.java:412) ~[?:?]
        at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unmarshal(AbstractReflectionConverter.java:263) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72) ~[?:?]
        at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:65) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66) ~[?:?]
        at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unmarshallField(AbstractReflectionConverter.java:480) ~[?:?]
        at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.doUnmarshal(AbstractReflectionConverter.java:412) ~[?:?]
        at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unmarshal(AbstractReflectionConverter.java:263) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72) ~[?:?]
        at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:65) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:50) ~[?:?]
        at com.thoughtworks.xstream.converters.collections.AbstractCollectionConverter.readItem(AbstractCollectionConverter.java:71) ~[?:?]
        at com.thoughtworks.xstream.converters.collections.CollectionConverter.addCurrentElementToCollection(CollectionConverter.java:98) ~[?:?]
        at com.thoughtworks.xstream.converters.collections.CollectionConverter.populateCollection(CollectionConverter.java:91) ~[?:?]
        at com.thoughtworks.xstream.converters.collections.CollectionConverter.populateCollection(CollectionConverter.java:85) ~[?:?]
        at org.apache.brooklyn.util.core.xstream.ImmutableListConverter.unmarshal(ImmutableListConverter.java:52) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72) ~[?:?]
        at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:65) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66) ~[?:?]
        at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unmarshallField(AbstractReflectionConverter.java:480) ~[?:?]
        at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.doUnmarshal(AbstractReflectionConverter.java:412) ~[?:?]
        at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unmarshal(AbstractReflectionConverter.java:263) ~[?:?]
        at org.apache.brooklyn.core.mgmt.persist.XmlMementoSerializer$SpecConverter.unmarshal(XmlMementoSerializer.java:455) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72) ~[?:?]
        at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:65) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:50) ~[?:?]
        at com.thoughtworks.xstream.converters.collections.AbstractCollectionConverter.readItem(AbstractCollectionConverter.java:71) ~[?:?]
        at org.apache.brooklyn.util.core.xstream.StringKeyMapConverter.unmarshalStringKey(StringKeyMapConverter.java:120) ~[?:?]
        at org.apache.brooklyn.util.core.xstream.StringKeyMapConverter.unmarshalEntry(StringKeyMapConverter.java:111) ~[?:?]
        at org.apache.brooklyn.util.core.xstream.MapConverter.populateMap(MapConverter.java:89) ~[?:?]
        at com.thoughtworks.xstream.converters.collections.MapConverter.unmarshal(MapConverter.java:87) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72) ~[?:?]
        at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:65) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66) ~[?:?]
        at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unmarshallField(AbstractReflectionConverter.java:480) ~[?:?]
        at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.doUnmarshal(AbstractReflectionConverter.java:412) ~[?:?]
        at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unmarshal(AbstractReflectionConverter.java:263) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72) ~[?:?]
        at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:65) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:50) ~[?:?]
        at com.thoughtworks.xstream.core.TreeUnmarshaller.start(TreeUnmarshaller.java:134) ~[?:?]
        at com.thoughtworks.xstream.core.AbstractTreeMarshallingStrategy.unmarshal(AbstractTreeMarshallingStrategy.java:32) ~[?:?]
        at com.thoughtworks.xstream.XStream.unmarshal(XStream.java:1206) ~[?:?]
        at com.thoughtworks.xstream.XStream.unmarshal(XStream.java:1190) ~[?:?]
        at com.thoughtworks.xstream.XStream.fromXML(XStream.java:1061) ~[?:?]
        at org.apache.brooklyn.util.core.xstream.XmlSerializer.deserialize(XmlSerializer.java:167) ~[?:?]
        at org.apache.brooklyn.util.core.xstream.XmlSerializer.fromString(XmlSerializer.java:177) ~[?:?]
        at org.apache.brooklyn.core.mgmt.persist.RetryingMementoSerializer.fromString(RetryingMementoSerializer.java:71) ~[?:?]
        at org.apache.brooklyn.core.mgmt.persist.BrooklynMementoPersisterToObjectStore$4.visit(BrooklynMementoPersisterToObjectStore.java:479) ~[?:?]
        at org.apache.brooklyn.core.mgmt.persist.BrooklynMementoPersisterToObjectStore$1VisitorWrapper.run(BrooklynMementoPersisterToObjectStore.java:530) ~[?:?]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) ~[?:?]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[?:?]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) ~[?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ~[?:?]
        ... 1 more
{noformat}




--
This message was sent by Atlassian JIRA
(v6.4.14#64029)