Uploaded image for project: 'Brooklyn'
  1. Brooklyn
  2. BROOKLYN-354

Rebind failed (when an NingxController entity's hostname sensor was null)

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 0.10.0
    • None

    Description

      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!

      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
      

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              aled.sage Aled Sage
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: