Aled Sage created BROOKLYN-296:
----------------------------------
Summary: Adding catalog item with invalid location causes rebind
error
Key: BROOKLYN-296
URL: https://issues.apache.org/jira/browse/BROOKLYN-296
Project: Brooklyn
Issue Type: Bug
Reporter: Aled Sage
Fix For: 0.9.0
One can deploy an invalid catalog item (that references a non-existing
location). Unfortunately when you next restart the Brooklyn server, it will
fail with a rebind error!
There are two things we should perhaps do for this:
1. Don't allow the initial catalog item to be added (giving a nice error
message about it);
2. Allow rebind to continue, with just a warning (e.g. in case the error comes
about because someone has subsequently explicitly deleted the required lcoation
definition).
For example, add the catalog item below:
{noformat}
brooklyn.catalog:
version: 1.0.0
items:
- id: entity-with-location
item:
type: org.apache.brooklyn.entity.machine.MachineEntity
location: location-does-not-exist
{noformat}
When adding it, you'll see a sensible warning like that below (but it will
still add it):
{noformat}
2016-06-08 21:30:41,776 WARN o.a.b.r.t.CatalogTransformer
[brooklyn-jetty-server-8082-qtp1308106248-32]: Unable to create spec for
CatalogEntityItemDto[entity-with-location:1.0.0/null]:
java.lang.IllegalStateException: Transformer for Brooklyn OASIS CAMP
interpreter gave an error creating this plan: Unknown location
'location-does-not-exist' (with retry)
java.lang.IllegalStateException: Transformer for Brooklyn OASIS CAMP
interpreter gave an error creating this plan: Unknown location
'location-does-not-exist' (with retry)
at
org.apache.brooklyn.util.guava.IllegalStateExceptionSupplier.get(IllegalStateExceptionSupplier.java:52)
~[org.apache.brooklyn-brooklyn-utils-common-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.util.guava.IllegalStateExceptionSupplier.get(IllegalStateExceptionSupplier.java:26)
~[org.apache.brooklyn-brooklyn-utils-common-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.util.guava.Maybe$Absent.getException(Maybe.java:276)
~[org.apache.brooklyn-brooklyn-utils-common-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at org.apache.brooklyn.util.guava.Maybe$Absent.get(Maybe.java:273)
~[org.apache.brooklyn-brooklyn-utils-common-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.core.catalog.internal.BasicBrooklynCatalog.internalCreateSpecLegacy(BasicBrooklynCatalog.java:332)
~[org.apache.brooklyn-brooklyn-core-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.core.catalog.internal.BasicBrooklynCatalog.createSpec(BasicBrooklynCatalog.java:308)
~[org.apache.brooklyn-brooklyn-core-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.rest.transform.CatalogTransformer.catalogEntitySummary(CatalogTransformer.java:81)
[org.apache.brooklyn-brooklyn-rest-resources-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.rest.transform.CatalogTransformer.catalogItemSummary(CatalogTransformer.java:117)
[org.apache.brooklyn-brooklyn-rest-resources-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.rest.resources.CatalogResource.create(CatalogResource.java:119)
[org.apache.brooklyn-brooklyn-rest-resources-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
~[na:1.7.0_71]
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
~[na:1.7.0_71]
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
~[na:1.7.0_71]
at java.lang.reflect.Method.invoke(Method.java:606) ~[na:1.7.0_71]
at
org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:180)
[org.apache.cxf-cxf-core-3.1.4.jar:3.1.4]
at
org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:96)
[org.apache.cxf-cxf-core-3.1.4.jar:3.1.4]
at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:200)
[org.apache.cxf-cxf-rt-frontend-jaxrs-3.1.4.jar:3.1.4]
at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:99)
[org.apache.cxf-cxf-rt-frontend-jaxrs-3.1.4.jar:3.1.4]
at
org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:59)
[org.apache.cxf-cxf-core-3.1.4.jar:3.1.4]
at
org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:96)
[org.apache.cxf-cxf-core-3.1.4.jar:3.1.4]
at
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:308)
[org.apache.cxf-cxf-core-3.1.4.jar:3.1.4]
at
org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)
[org.apache.cxf-cxf-core-3.1.4.jar:3.1.4]
at
org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:251)
[org.apache.cxf-cxf-rt-transports-http-3.1.4.jar:3.1.4]
at
org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:234)
[org.apache.cxf-cxf-rt-transports-http-3.1.4.jar:3.1.4]
at
org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:208)
[org.apache.cxf-cxf-rt-transports-http-3.1.4.jar:3.1.4]
at
org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:160)
[org.apache.cxf-cxf-rt-transports-http-3.1.4.jar:3.1.4]
at
org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:180)
[org.apache.cxf-cxf-rt-transports-http-3.1.4.jar:3.1.4]
at
org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:293)
[org.apache.cxf-cxf-rt-transports-http-3.1.4.jar:3.1.4]
at
org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:212)
[org.apache.cxf-cxf-rt-transports-http-3.1.4.jar:3.1.4]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
[javax.servlet-javax.servlet-api-3.1.0.jar:3.1.0]
at
org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:268)
[org.apache.cxf-cxf-rt-transports-http-3.1.4.jar:3.1.4]
at
org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:808)
[org.eclipse.jetty-jetty-servlet-9.2.13.v20150730.jar:9.2.13.v20150730]
at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1669)
[org.eclipse.jetty-jetty-servlet-9.2.13.v20150730.jar:9.2.13.v20150730]
at
org.apache.brooklyn.rest.filter.LoggingFilter.doFilter(LoggingFilter.java:91)
[org.apache.brooklyn-brooklyn-rest-server-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
[org.eclipse.jetty-jetty-servlet-9.2.13.v20150730.jar:9.2.13.v20150730]
at
org.apache.brooklyn.rest.filter.RequestTaggingFilter.doFilter(RequestTaggingFilter.java:51)
[org.apache.brooklyn-brooklyn-rest-server-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
[org.eclipse.jetty-jetty-servlet-9.2.13.v20150730.jar:9.2.13.v20150730]
at
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585)
[org.eclipse.jetty-jetty-servlet-9.2.13.v20150730.jar:9.2.13.v20150730]
at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
[org.eclipse.jetty-jetty-server-9.2.13.v20150730.jar:9.2.13.v20150730]
at
org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:542)
[org.eclipse.jetty-jetty-security-9.2.13.v20150730.jar:9.2.13.v20150730]
at
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
[org.eclipse.jetty-jetty-server-9.2.13.v20150730.jar:9.2.13.v20150730]
at
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
[org.eclipse.jetty-jetty-server-9.2.13.v20150730.jar:9.2.13.v20150730]
at
org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
[org.eclipse.jetty-jetty-servlet-9.2.13.v20150730.jar:9.2.13.v20150730]
at
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
[org.eclipse.jetty-jetty-server-9.2.13.v20150730.jar:9.2.13.v20150730]
at
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
[org.eclipse.jetty-jetty-server-9.2.13.v20150730.jar:9.2.13.v20150730]
at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
[org.eclipse.jetty-jetty-server-9.2.13.v20150730.jar:9.2.13.v20150730]
at
org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:215)
[org.eclipse.jetty-jetty-server-9.2.13.v20150730.jar:9.2.13.v20150730]
at
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
[org.eclipse.jetty-jetty-server-9.2.13.v20150730.jar:9.2.13.v20150730]
at org.eclipse.jetty.server.Server.handle(Server.java:499)
[org.eclipse.jetty-jetty-server-9.2.13.v20150730.jar:9.2.13.v20150730]
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310)
[org.eclipse.jetty-jetty-server-9.2.13.v20150730.jar:9.2.13.v20150730]
at
org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)
[org.eclipse.jetty-jetty-server-9.2.13.v20150730.jar:9.2.13.v20150730]
at
org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540)
[org.eclipse.jetty-jetty-io-9.2.13.v20150730.jar:9.2.13.v20150730]
at
org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
[org.eclipse.jetty-jetty-util-9.2.13.v20150730.jar:9.2.13.v20150730]
at
org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
[org.eclipse.jetty-jetty-util-9.2.13.v20150730.jar:9.2.13.v20150730]
at java.lang.Thread.run(Thread.java:745) [na:1.7.0_71]
Caused by: org.apache.brooklyn.util.exceptions.PropagatedRuntimeException:
at
org.apache.brooklyn.util.exceptions.Exceptions.create(Exceptions.java:385)
~[org.apache.brooklyn-brooklyn-utils-common-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.core.plan.PlanToSpecFactory.attemptWithLoaders(PlanToSpecFactory.java:146)
~[org.apache.brooklyn-brooklyn-core-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.core.plan.PlanToSpecFactory.attemptWithLoaders(PlanToSpecFactory.java:118)
~[org.apache.brooklyn-brooklyn-core-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.core.catalog.internal.BasicBrooklynCatalog.internalCreateSpecLegacy(BasicBrooklynCatalog.java:326)
~[org.apache.brooklyn-brooklyn-core-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
... 49 common frames omitted
Caused by: org.apache.brooklyn.util.exceptions.PropagatedRuntimeException:
Transformer for Brooklyn OASIS CAMP interpreter gave an error creating this
plan: Unknown location 'location-does-not-exist' (with retry)
at
org.apache.brooklyn.core.plan.PlanToSpecFactory.attemptWithLoaders(PlanToSpecFactory.java:137)
~[org.apache.brooklyn-brooklyn-core-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
... 51 common frames omitted
Caused by: org.apache.brooklyn.util.exceptions.UserFacingException: Unknown
location 'location-does-not-exist' (with retry)
at
org.apache.brooklyn.camp.brooklyn.spi.creation.BrooklynYamlLocationResolver.resolveLocation(BrooklynYamlLocationResolver.java:145)
~[org.apache.brooklyn-brooklyn-camp-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.camp.brooklyn.spi.creation.BrooklynYamlLocationResolver.resolveLocationFromString(BrooklynYamlLocationResolver.java:113)
~[org.apache.brooklyn-brooklyn-camp-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.camp.brooklyn.spi.creation.BrooklynYamlLocationResolver.resolveLocations(BrooklynYamlLocationResolver.java:62)
~[org.apache.brooklyn-brooklyn-camp-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.camp.brooklyn.spi.creation.BrooklynComponentTemplateResolver.populateSpec(BrooklynComponentTemplateResolver.java:238)
~[org.apache.brooklyn-brooklyn-camp-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.camp.brooklyn.spi.creation.BrooklynComponentTemplateResolver.resolveSpec(BrooklynComponentTemplateResolver.java:185)
~[org.apache.brooklyn-brooklyn-camp-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.camp.brooklyn.spi.creation.BrooklynAssemblyTemplateInstantiator.buildTemplateServicesAsSpecs(BrooklynAssemblyTemplateInstantiator.java:114)
~[org.apache.brooklyn-brooklyn-camp-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.camp.brooklyn.spi.creation.BrooklynAssemblyTemplateInstantiator.createServiceSpecs(BrooklynAssemblyTemplateInstantiator.java:73)
~[org.apache.brooklyn-brooklyn-camp-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.camp.brooklyn.spi.creation.BrooklynAssemblyTemplateInstantiator.createApplicationSpec(BrooklynAssemblyTemplateInstantiator.java:90)
~[org.apache.brooklyn-brooklyn-camp-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.camp.brooklyn.spi.creation.CampResolver.createEntitySpecFromServicesBlock(CampResolver.java:141)
~[org.apache.brooklyn-brooklyn-camp-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.camp.brooklyn.spi.creation.CampResolver.createSpecFromFull(CampResolver.java:110)
~[org.apache.brooklyn-brooklyn-camp-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.camp.brooklyn.spi.creation.CampToSpecTransformer.createCatalogSpec(CampToSpecTransformer.java:102)
~[org.apache.brooklyn-brooklyn-camp-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.core.catalog.internal.BasicBrooklynCatalog$1.apply(BasicBrooklynCatalog.java:329)
~[org.apache.brooklyn-brooklyn-core-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.core.catalog.internal.BasicBrooklynCatalog$1.apply(BasicBrooklynCatalog.java:326)
~[org.apache.brooklyn-brooklyn-core-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.core.plan.PlanToSpecFactory.attemptWithLoaders(PlanToSpecFactory.java:126)
~[org.apache.brooklyn-brooklyn-core-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
... 51 common frames omitted
{noformat}
On rebind, you'll see an error like that below, and the web-console will report
"Warning! This Brooklyn server has errors":
{noformat}
2016-06-08 21:31:05,211 ERROR o.a.b.c.c.i.CatalogInitialization
[brooklyn-execmanager-iIo2g8wM-0]: Error loading catalog item
'org.apache.brooklyn.core.catalog.internal.CatalogItemDo[CatalogEntityItemDto[entity-with-location:1.0.0/null]]':
Transformer for Brooklyn OASIS CAMP interpreter gave an error creating this
plan: Unknown location 'location-does-not-exist'
2016-06-08 21:31:05,220 DEBUG o.a.b.c.c.i.CatalogInitialization
[brooklyn-execmanager-iIo2g8wM-0]: Trace for error loading catalog item
'org.apache.brooklyn.core.catalog.internal.CatalogItemDo[CatalogEntityItemDto[entity-with-location:1.0.0/null]]':
Transformer for Brooklyn OASIS CAMP interpreter gave an error creating this
plan: Unknown location 'location-does-not-exist'
java.lang.IllegalStateException: Transformer for Brooklyn OASIS CAMP
interpreter gave an error creating this plan: Unknown location
'location-does-not-exist'
at
org.apache.brooklyn.util.guava.IllegalStateExceptionSupplier.get(IllegalStateExceptionSupplier.java:52)
~[org.apache.brooklyn-brooklyn-utils-common-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.util.guava.IllegalStateExceptionSupplier.get(IllegalStateExceptionSupplier.java:26)
~[org.apache.brooklyn-brooklyn-utils-common-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.util.guava.Maybe$Absent.getException(Maybe.java:276)
~[org.apache.brooklyn-brooklyn-utils-common-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at org.apache.brooklyn.util.guava.Maybe$Absent.get(Maybe.java:273)
~[org.apache.brooklyn-brooklyn-utils-common-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.core.catalog.internal.BasicBrooklynCatalog.internalCreateSpecLegacy(BasicBrooklynCatalog.java:332)
~[org.apache.brooklyn-brooklyn-core-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.core.catalog.internal.BasicBrooklynCatalog.createSpec(BasicBrooklynCatalog.java:308)
~[org.apache.brooklyn-brooklyn-core-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.cli.Main$LaunchCommand.confirmCatalog(Main.java:645)
~[org.apache.brooklyn-brooklyn-cli-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at org.apache.brooklyn.cli.Main$LaunchCommand$1.apply(Main.java:433)
[org.apache.brooklyn-brooklyn-cli-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at org.apache.brooklyn.cli.Main$LaunchCommand$1.apply(Main.java:423)
[org.apache.brooklyn-brooklyn-cli-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.core.catalog.internal.CatalogInitialization.populateViaCallbacks(CatalogInitialization.java:382)
[org.apache.brooklyn-brooklyn-core-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.core.catalog.internal.CatalogInitialization.populateCatalogImpl(CatalogInitialization.java:237)
[org.apache.brooklyn-brooklyn-core-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.core.catalog.internal.CatalogInitialization.populateCatalog(CatalogInitialization.java:199)
[org.apache.brooklyn-brooklyn-core-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.core.mgmt.rebind.RebindIteration.rebuildCatalog(RebindIteration.java:422)
[org.apache.brooklyn-brooklyn-core-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.core.mgmt.rebind.RebindIteration.doRun(RebindIteration.java:238)
[org.apache.brooklyn-brooklyn-core-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.core.mgmt.rebind.InitialFullRebindIteration.doRun(InitialFullRebindIteration.java:69)
[org.apache.brooklyn-brooklyn-core-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.core.mgmt.rebind.RebindIteration.run(RebindIteration.java:265)
[org.apache.brooklyn-brooklyn-core-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.core.mgmt.rebind.RebindManagerImpl.rebindImpl(RebindManagerImpl.java:558)
[org.apache.brooklyn-brooklyn-core-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.core.mgmt.rebind.RebindManagerImpl$3.call(RebindManagerImpl.java:508)
[org.apache.brooklyn-brooklyn-core-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.core.mgmt.rebind.RebindManagerImpl$3.call(RebindManagerImpl.java:506)
[org.apache.brooklyn-brooklyn-core-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.util.core.task.BasicExecutionManager$SubmissionCallable.call(BasicExecutionManager.java:519)
[org.apache.brooklyn-brooklyn-core-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
[na:1.7.0_71]
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
[na:1.7.0_71]
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
[na:1.7.0_71]
at java.lang.Thread.run(Thread.java:745) [na:1.7.0_71]
Caused by: org.apache.brooklyn.util.exceptions.PropagatedRuntimeException:
at
org.apache.brooklyn.util.exceptions.Exceptions.create(Exceptions.java:385)
~[org.apache.brooklyn-brooklyn-utils-common-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.core.plan.PlanToSpecFactory.attemptWithLoaders(PlanToSpecFactory.java:146)
~[org.apache.brooklyn-brooklyn-core-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.core.plan.PlanToSpecFactory.attemptWithLoaders(PlanToSpecFactory.java:118)
~[org.apache.brooklyn-brooklyn-core-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.core.catalog.internal.BasicBrooklynCatalog.internalCreateSpecLegacy(BasicBrooklynCatalog.java:326)
~[org.apache.brooklyn-brooklyn-core-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
... 19 common frames omitted
Caused by: org.apache.brooklyn.util.exceptions.PropagatedRuntimeException:
Transformer for Brooklyn OASIS CAMP interpreter gave an error creating this
plan: Unknown location 'location-does-not-exist'
at
org.apache.brooklyn.core.plan.PlanToSpecFactory.attemptWithLoaders(PlanToSpecFactory.java:137)
~[org.apache.brooklyn-brooklyn-core-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
... 21 common frames omitted
Caused by: org.apache.brooklyn.util.exceptions.UserFacingException: Unknown
location 'location-does-not-exist'
at
org.apache.brooklyn.camp.brooklyn.spi.creation.BrooklynYamlLocationResolver.resolveLocation(BrooklynYamlLocationResolver.java:145)
~[org.apache.brooklyn-brooklyn-camp-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.camp.brooklyn.spi.creation.BrooklynYamlLocationResolver.resolveLocationFromString(BrooklynYamlLocationResolver.java:113)
~[org.apache.brooklyn-brooklyn-camp-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.camp.brooklyn.spi.creation.BrooklynYamlLocationResolver.resolveLocations(BrooklynYamlLocationResolver.java:62)
~[org.apache.brooklyn-brooklyn-camp-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.camp.brooklyn.spi.creation.BrooklynComponentTemplateResolver.populateSpec(BrooklynComponentTemplateResolver.java:238)
~[org.apache.brooklyn-brooklyn-camp-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.camp.brooklyn.spi.creation.BrooklynComponentTemplateResolver.resolveSpec(BrooklynComponentTemplateResolver.java:185)
~[org.apache.brooklyn-brooklyn-camp-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.camp.brooklyn.spi.creation.BrooklynAssemblyTemplateInstantiator.buildTemplateServicesAsSpecs(BrooklynAssemblyTemplateInstantiator.java:114)
~[org.apache.brooklyn-brooklyn-camp-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.camp.brooklyn.spi.creation.BrooklynAssemblyTemplateInstantiator.createServiceSpecs(BrooklynAssemblyTemplateInstantiator.java:73)
~[org.apache.brooklyn-brooklyn-camp-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.camp.brooklyn.spi.creation.BrooklynAssemblyTemplateInstantiator.createApplicationSpec(BrooklynAssemblyTemplateInstantiator.java:90)
~[org.apache.brooklyn-brooklyn-camp-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.camp.brooklyn.spi.creation.CampResolver.createEntitySpecFromServicesBlock(CampResolver.java:141)
~[org.apache.brooklyn-brooklyn-camp-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.camp.brooklyn.spi.creation.CampResolver.createSpecFromFull(CampResolver.java:110)
~[org.apache.brooklyn-brooklyn-camp-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.camp.brooklyn.spi.creation.CampToSpecTransformer.createCatalogSpec(CampToSpecTransformer.java:102)
~[org.apache.brooklyn-brooklyn-camp-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.core.catalog.internal.BasicBrooklynCatalog$1.apply(BasicBrooklynCatalog.java:329)
~[org.apache.brooklyn-brooklyn-core-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.core.catalog.internal.BasicBrooklynCatalog$1.apply(BasicBrooklynCatalog.java:326)
~[org.apache.brooklyn-brooklyn-core-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
at
org.apache.brooklyn.core.plan.PlanToSpecFactory.attemptWithLoaders(PlanToSpecFactory.java:126)
~[org.apache.brooklyn-brooklyn-core-0.10.0-SNAPSHOT.jar:0.10.0-SNAPSHOT]
... 21 common frames omitted
{noformat}
The persisted state will have a file like:
{noformat}
<catalogItem>
<brooklynVersion>0.10.0-SNAPSHOT</brooklynVersion>
<type>org.apache.brooklyn.core.catalog.internal.CatalogEntityItemDto</type>
<id>entity-with-location:1.0.0</id>
<catalogItemId>entity-with-location:1.0.0</catalogItemId>
<registeredTypeName>entity-with-location</registeredTypeName>
<version>1.0.0</version>
<planYaml>services:
- type: org.apache.brooklyn.entity.machine.MachineEntity
location: location-does-not-exist</planYaml>
<libraries class="ImmutableList"/>
<catalogItemType>ENTITY</catalogItemType>
<catalogItemJavaType>org.apache.brooklyn.api.entity.Entity</catalogItemJavaType>
<specType>org.apache.brooklyn.api.entity.EntitySpec</specType>
<deprecated>false</deprecated>
<disabled>false</disabled>
</catalogItem>
{noformat}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)