Aled Sage created BROOKLYN-354:
----------------------------------
Summary: Rebind failed (when an NingxController entity's hostname
sensor was null)
Key: BROOKLYN-354
URL: https://issues.apache.org/jira/browse/BROOKLYN-354
Project: Brooklyn
Issue Type: Bug
Reporter: Aled Sage
When restarting Brooklyn (using a version from a couple of months ago -
timestamped 20160609.1043), it failed - the log showed the exception below.
While offline, the VM for this {{NginxController}} had been terminated.
The underlying exception means that
{{entity.getAttribute(Attributes.HOSTNAME)}} was null.
This should not stop rebind from working!
{noformat}
2016-09-29 05:29:55,496 ERROR o.a.b.l.common.BasicLauncher [main]: Subsystem
for persistence had startup error (continuing with startup):
org.apache.brooklyn.util.exceptions.PropagatedRuntimeException: Failure
rebinding: problem rebinding entity P5hGuILY (NginxControlle
rImpl{id=P5hGuILY}): Cannot find way to access port 8000 on
NginxControllerImpl{id=P5hGuILY} from Brooklyn (no host.name)
org.apache.brooklyn.util.exceptions.PropagatedRuntimeException:
at
org.apache.brooklyn.util.exceptions.Exceptions.propagate(Exceptions.java:128)
~[brooklyn-utils-common-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at
org.apache.brooklyn.core.mgmt.rebind.RebindManagerImpl.rebind(RebindManagerImpl.java:513)
~[brooklyn-core-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at
org.apache.brooklyn.core.mgmt.ha.HighAvailabilityManagerImpl.promoteToMaster(HighAvailabilityManagerImpl.java:836)
~[brooklyn-core-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at
org.apache.brooklyn.core.mgmt.ha.HighAvailabilityManagerImpl.checkMaster(HighAvailabilityManagerImpl.java:810)
~[brooklyn-core-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at
org.apache.brooklyn.core.mgmt.ha.HighAvailabilityManagerImpl.publishAndCheck(HighAvailabilityManagerImpl.java:592)
~[brooklyn-core-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at
org.apache.brooklyn.core.mgmt.ha.HighAvailabilityManagerImpl.changeMode(HighAvailabilityManagerImpl.java:315)
~[brooklyn-core-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at
org.apache.brooklyn.core.mgmt.ha.HighAvailabilityManagerImpl.start(HighAvailabilityManagerImpl.java:255)
~[brooklyn-core-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at
org.apache.brooklyn.launcher.common.BasicLauncher.startPersistence(BasicLauncher.java:644)
[brooklyn-launcher-common-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at
org.apache.brooklyn.launcher.common.BasicLauncher.handlePersistence(BasicLauncher.java:506)
[brooklyn-launcher-common-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at
org.apache.brooklyn.launcher.common.BasicLauncher.start(BasicLauncher.java:424)
[brooklyn-launcher-common-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at org.apache.brooklyn.cli.Main$LaunchCommand.call(Main.java:461)
[brooklyn-cli-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at org.apache.brooklyn.cli.Main$LaunchCommand.call(Main.java:196)
[brooklyn-cli-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at org.apache.brooklyn.cli.AbstractMain.execCli(AbstractMain.java:252)
[brooklyn-cli-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at org.apache.brooklyn.cli.AbstractMain.execCli(AbstractMain.java:244)
[brooklyn-cli-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at io.cloudsoft.amp.Main.main(Main.java:39) [amp-launcher-3.2.1.jar:na]
Caused by: java.util.concurrent.ExecutionException:
org.apache.brooklyn.util.exceptions.PropagatedRuntimeException: Failure
rebinding: problem rebinding entity P5hGuILY
(NginxControllerImpl{id=P5hGuILY}): Cannot find way to access port 8000 on
NginxControllerImpl{id=P5h
GuILY} from Brooklyn (no host.name)
at java.util.concurrent.FutureTask.report(FutureTask.java:122)
~[na:1.7.0_75]
at java.util.concurrent.FutureTask.get(FutureTask.java:188)
~[na:1.7.0_75]
at
com.google.common.util.concurrent.ForwardingFuture.get(ForwardingFuture.java:63)
~[guava-16.0.1.jar:na]
at org.apache.brooklyn.util.core.task.BasicTask.get(BasicTask.java:361)
~[brooklyn-core-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at
org.apache.brooklyn.core.mgmt.rebind.RebindManagerImpl.rebind(RebindManagerImpl.java:511)
~[brooklyn-core-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
... 13 common frames omitted
org.apache.brooklyn.util.exceptions.PropagatedRuntimeException: Failure
rebinding: problem rebinding entity P5hGuILY
(NginxControllerImpl{id=P5hGuILY}): Cannot find way to access port 8000 on
NginxControllerImpl{id=P5hGuILY} from Brooklyn (no host.name)
at
org.apache.brooklyn.util.exceptions.Exceptions.create(Exceptions.java:386)
~[brooklyn-utils-common-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at
org.apache.brooklyn.core.mgmt.rebind.RebindExceptionHandlerImpl.onDoneImpl(RebindExceptionHandlerImpl.java:497)
~[brooklyn-core-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at
org.apache.brooklyn.core.mgmt.rebind.RebindExceptionHandlerImpl.onDone(RebindExceptionHandlerImpl.java:413)
~[brooklyn-core-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at
org.apache.brooklyn.core.mgmt.rebind.RebindIteration.run(RebindIteration.java:267)
~[brooklyn-core-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at
org.apache.brooklyn.core.mgmt.rebind.RebindManagerImpl.rebindImpl(RebindManagerImpl.java:558)
~[brooklyn-core-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at
org.apache.brooklyn.core.mgmt.rebind.RebindManagerImpl$3.call(RebindManagerImpl.java:508)
~[brooklyn-core-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at
org.apache.brooklyn.core.mgmt.rebind.RebindManagerImpl$3.call(RebindManagerImpl.java:506)
~[brooklyn-core-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at
org.apache.brooklyn.util.core.task.BasicExecutionManager$SubmissionCallable.call(BasicExecutionManager.java:519)
~[brooklyn-core-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
~[na:1.7.0_75]
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
~[na:1.7.0_75]
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
~[na:1.7.0_75]
at java.lang.Thread.run(Thread.java:745) ~[na:1.7.0_75]
Caused by: java.lang.IllegalStateException: problem rebinding entity P5hGuILY
(NginxControllerImpl{id=P5hGuILY})
at
org.apache.brooklyn.core.mgmt.rebind.RebindExceptionHandlerImpl.onRebindFailed(RebindExceptionHandlerImpl.java:304)
~[brooklyn-core-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at
org.apache.brooklyn.core.mgmt.rebind.BasicEntityRebindSupport.addFeeds(BasicEntityRebindSupport.java:172)
~[brooklyn-core-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at
org.apache.brooklyn.core.mgmt.rebind.BasicEntityRebindSupport.addFeeds(BasicEntityRebindSupport.java:47)
~[brooklyn-core-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at
org.apache.brooklyn.core.mgmt.rebind.RebindIteration.associateAdjunctsWithEntities(RebindIteration.java:650)
~[brooklyn-core-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at
org.apache.brooklyn.core.mgmt.rebind.RebindIteration.doRun(RebindIteration.java:243)
~[brooklyn-core-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at
org.apache.brooklyn.core.mgmt.rebind.InitialFullRebindIteration.doRun(InitialFullRebindIteration.java:69)
~[brooklyn-core-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at
org.apache.brooklyn.core.mgmt.rebind.RebindIteration.run(RebindIteration.java:265)
~[brooklyn-core-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
... 8 common frames omitted
Caused by: java.lang.IllegalStateException: Cannot find way to access port 8000
on NginxControllerImpl{id=P5hGuILY} from Brooklyn (no host.name)
at
org.apache.brooklyn.core.location.access.BrooklynAccessUtils.getBrooklynAccessibleAddress(BrooklynAccessUtils.java:106)
~[brooklyn-core-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at
org.apache.brooklyn.entity.proxy.AbstractControllerImpl.inferUrl(AbstractControllerImpl.java:278)
~[brooklyn-software-webapp-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at
org.apache.brooklyn.entity.proxy.nginx.NginxControllerImpl.access$000(NginxControllerImpl.java:67)
~[brooklyn-software-webapp-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at
org.apache.brooklyn.entity.proxy.nginx.NginxControllerImpl$UrlInferencer.get(NginxControllerImpl.java:98)
~[brooklyn-software-webapp-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at
org.apache.brooklyn.entity.proxy.nginx.NginxControllerImpl$UrlInferencer.get(NginxControllerImpl.java:92)
~[brooklyn-software-webapp-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at
org.apache.brooklyn.feed.http.HttpFeed.createHttpClient(HttpFeed.java:363)
~[brooklyn-core-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at org.apache.brooklyn.feed.http.HttpFeed.preStart(HttpFeed.java:322)
~[brooklyn-core-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at
org.apache.brooklyn.core.feed.AbstractFeed.start(AbstractFeed.java:125)
~[brooklyn-core-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
at
org.apache.brooklyn.core.mgmt.rebind.BasicEntityRebindSupport.addFeeds(BasicEntityRebindSupport.java:169)
~[brooklyn-core-0.10.0-20160609.1043.jar:0.10.0-20160609.1043]
... 13 common frames omitted
{noformat}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)