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

NPE releasing VMs in app instances, upgraded to 1.0.0-snapshot

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Blocker
    • Resolution: Fixed
    • None
    • None
    • None

    Description

      I launched some apps in an old Brooklyn in aws, and then stopped and upgraded to 1.0.0-SNAPSHOT.

      The apps did rebind correctly, and cluster resize worked etc.

      However, when I called the stop() effector it failed when trying to terminate the VMs with the exception below. This is because legacy locations don't have the config key machineDeletionSemaphore.

      2017-11-10T12:14:39,550 WARN  123 o.a.b.c.m.i.EffectorUtils [er-QwhLmNV2-1304] Error invoking stop at BasicApplicationImpl{id=lnh4ktx013}: 3 of 3 parallel child tasks failed; 3 errors including: Error invoking stop at VanillaSoftwa
      reProcessImpl{id=nbyj75p118}: NullPointerException: machineDeletionSemaphore
      2017-11-10T12:14:39,551 DEBUG 123 o.a.b.c.m.i.EffectorUtils [er-QwhLmNV2-1304] Error invoking stop at BasicApplicationImpl{id=lnh4ktx013}
      java.util.concurrent.ExecutionException: org.apache.brooklyn.util.exceptions.PropagatedRuntimeException: 3 of 3 parallel child tasks failed; 3 errors including: Error invoking stop at VanillaSoftwareProcessImpl{id=nbyj75p118}: Null
      PointerException: machineDeletionSemaphore
              at org.apache.brooklyn.core.mgmt.internal.AbstractManagementContext.invokeEffectorMethodSync(AbstractManagementContext.java:368) [123:org.apache.brooklyn.core:1.0.0.20171108_0923]
              at org.apache.brooklyn.core.mgmt.internal.EffectorUtils.invokeMethodEffector(EffectorUtils.java:274) [123:org.apache.brooklyn.core:1.0.0.20171108_0923]
              at org.apache.brooklyn.core.effector.MethodEffector.call(MethodEffector.java:153) [123:org.apache.brooklyn.core:1.0.0.20171108_0923]
              at org.apache.brooklyn.core.entity.trait.Startable$StopEffectorBody.call(Startable.java:68) [123:org.apache.brooklyn.core:1.0.0.20171108_0923]
              at org.apache.brooklyn.core.entity.trait.Startable$StopEffectorBody.call(Startable.java:60) [123:org.apache.brooklyn.core:1.0.0.20171108_0923]
              at org.apache.brooklyn.core.effector.EffectorTasks$EffectorBodyTaskFactory$1.call(EffectorTasks.java:82) [123:org.apache.brooklyn.core:1.0.0.20171108_0923]
              at org.apache.brooklyn.util.core.task.DynamicSequentialTask$DstJob.call(DynamicSequentialTask.java:364) [123:org.apache.brooklyn.core:1.0.0.20171108_0923]
              at org.apache.brooklyn.util.core.task.BasicExecutionManager$SubmissionCallable.call(BasicExecutionManager.java:565) [123:org.apache.brooklyn.core:1.0.0.20171108_0923]
              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) [?:?]
              at java.lang.Thread.run(Thread.java:748) [?:?]
      Caused by: org.apache.brooklyn.util.exceptions.PropagatedRuntimeException: 
              at org.apache.brooklyn.util.exceptions.Exceptions.propagate(Exceptions.java:129) ~[?:?]
              at org.apache.brooklyn.core.mgmt.internal.AbstractManagementContext.invokeEffectorMethodLocal(AbstractManagementContext.java:338) ~[?:?]
              at org.apache.brooklyn.core.mgmt.internal.AbstractManagementContext.invokeEffectorMethodSync(AbstractManagementContext.java:364) ~[?:?]
              ... 11 more
      Caused by: java.lang.reflect.InvocationTargetException
              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.brooklyn.util.javalang.Reflections.invokeMethodFromArgs(Reflections.java:984) ~[?:?]
              at org.apache.brooklyn.util.javalang.Reflections.invokeMethodFromArgs(Reflections.java:871) ~[?:?]
              at org.apache.brooklyn.util.javalang.Reflections.invokeMethodFromArgs(Reflections.java:857) ~[?:?]
              at org.apache.brooklyn.util.javalang.Reflections.invokeMethodFromArgs(Reflections.java:852) ~[?:?]
              at org.apache.brooklyn.core.mgmt.internal.AbstractManagementContext.invokeEffectorMethodLocal(AbstractManagementContext.java:325) ~[?:?]
              at org.apache.brooklyn.core.mgmt.internal.AbstractManagementContext.invokeEffectorMethodSync(AbstractManagementContext.java:364) ~[?:?]
              ... 11 more
      Caused by: org.apache.brooklyn.util.exceptions.PropagatedRuntimeException: 
              at org.apache.brooklyn.util.exceptions.Exceptions.propagate(Exceptions.java:129) ~[?:?]
              at org.apache.brooklyn.util.core.task.BasicTask.getUnchecked(BasicTask.java:394) ~[?:?]
              at org.apache.brooklyn.util.core.task.DynamicTasks$TaskQueueingResult.andWaitForSuccess(DynamicTasks.java:185) ~[?:?]
              at org.apache.brooklyn.util.core.task.DynamicTasks.get(DynamicTasks.java:353) ~[?:?]
              at org.apache.brooklyn.core.entity.trait.StartableMethods.stop(StartableMethods.java:58) ~[?:?]
              at org.apache.brooklyn.core.entity.AbstractApplication.doStop(AbstractApplication.java:271) ~[?:?]
              at org.apache.brooklyn.core.entity.AbstractApplication.stop(AbstractApplication.java:246) ~[?:?]
              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.brooklyn.util.javalang.Reflections.invokeMethodFromArgs(Reflections.java:984) ~[?:?]
              at org.apache.brooklyn.util.javalang.Reflections.invokeMethodFromArgs(Reflections.java:871) ~[?:?]
              at org.apache.brooklyn.util.javalang.Reflections.invokeMethodFromArgs(Reflections.java:857) ~[?:?]
              at org.apache.brooklyn.util.javalang.Reflections.invokeMethodFromArgs(Reflections.java:852) ~[?:?]
              at org.apache.brooklyn.core.mgmt.internal.AbstractManagementContext.invokeEffectorMethodLocal(AbstractManagementContext.java:325) ~[?:?]
              at org.apache.brooklyn.core.mgmt.internal.AbstractManagementContext.invokeEffectorMethodSync(AbstractManagementContext.java:364) ~[?:?]
              ... 11 more
      Caused by: java.util.concurrent.ExecutionException: org.apache.brooklyn.util.exceptions.CompoundRuntimeException: 3 of 3 parallel child tasks failed; 3 errors including: Error invoking stop at VanillaSoftwareProcessImpl{id=nbyj75p1
      18}: NullPointerException: machineDeletionSemaphore
              at java.util.concurrent.FutureTask.report(FutureTask.java:122) ~[?:?]
              at java.util.concurrent.FutureTask.get(FutureTask.java:192) ~[?:?]
              at com.google.common.util.concurrent.ForwardingFuture.get(ForwardingFuture.java:63) ~[?:?]
              at org.apache.brooklyn.util.core.task.BasicTask.get(BasicTask.java:383) ~[?:?]
              at org.apache.brooklyn.util.core.task.BasicTask.getUnchecked(BasicTask.java:392) ~[?:?]
              at org.apache.brooklyn.util.core.task.DynamicTasks$TaskQueueingResult.andWaitForSuccess(DynamicTasks.java:185) ~[?:?]
              at org.apache.brooklyn.util.core.task.DynamicTasks.get(DynamicTasks.java:353) ~[?:?]
              at org.apache.brooklyn.core.entity.trait.StartableMethods.stop(StartableMethods.java:58) ~[?:?]
              at org.apache.brooklyn.core.entity.AbstractApplication.doStop(AbstractApplication.java:271) ~[?:?]
              at org.apache.brooklyn.core.entity.AbstractApplication.stop(AbstractApplication.java:246) ~[?:?]
              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.brooklyn.util.javalang.Reflections.invokeMethodFromArgs(Reflections.java:984) ~[?:?]
              at org.apache.brooklyn.util.javalang.Reflections.invokeMethodFromArgs(Reflections.java:871) ~[?:?]
              at org.apache.brooklyn.util.javalang.Reflections.invokeMethodFromArgs(Reflections.java:857) ~[?:?]
              at org.apache.brooklyn.util.javalang.Reflections.invokeMethodFromArgs(Reflections.java:852) ~[?:?]
              at org.apache.brooklyn.core.mgmt.internal.AbstractManagementContext.invokeEffectorMethodLocal(AbstractManagementContext.java:325) ~[?:?]
              at org.apache.brooklyn.core.mgmt.internal.AbstractManagementContext.invokeEffectorMethodSync(AbstractManagementContext.java:364) ~[?:?]
              ... 11 more
      Caused by: org.apache.brooklyn.util.exceptions.CompoundRuntimeException: 3 of 3 parallel child tasks failed; 3 errors including: Error invoking stop at VanillaSoftwareProcessImpl{id=nbyj75p118}: NullPointerException: machineDeletio
      nSemaphore
              at org.apache.brooklyn.util.exceptions.Exceptions.create(Exceptions.java:481) ~[?:?]
              at org.apache.brooklyn.util.exceptions.Exceptions.propagate(Exceptions.java:462) ~[?:?]
              at org.apache.brooklyn.util.core.task.ParallelTask.runJobs(ParallelTask.java:94) ~[?:?]
              at org.apache.brooklyn.util.core.task.CompoundTask$1.call(CompoundTask.java:83) ~[?:?]
              at org.apache.brooklyn.util.core.task.CompoundTask$1.call(CompoundTask.java:81) ~[?:?]
              ... 5 more
      Caused by: java.util.concurrent.ExecutionException: org.apache.brooklyn.core.mgmt.internal.EffectorUtils$EffectorCallPropagatedRuntimeException: Error invoking stop at VanillaSoftwareProcessImpl{id=nbyj75p118}: NullPointerException
      : machineDeletionSemaphore
              at java.util.concurrent.FutureTask.report(FutureTask.java:122) ~[?:?]
              at java.util.concurrent.FutureTask.get(FutureTask.java:192) ~[?:?]
              at com.google.common.util.concurrent.ForwardingFuture.get(ForwardingFuture.java:63) ~[?:?]
              at org.apache.brooklyn.util.core.task.BasicTask.get(BasicTask.java:383) ~[?:?]
              at org.apache.brooklyn.util.core.task.ParallelTask.runJobs(ParallelTask.java:76) ~[?:?]
              at org.apache.brooklyn.util.core.task.CompoundTask$1.call(CompoundTask.java:83) ~[?:?]
              at org.apache.brooklyn.util.core.task.CompoundTask$1.call(CompoundTask.java:81) ~[?:?]
              ... 5 more
      Caused by: org.apache.brooklyn.core.mgmt.internal.EffectorUtils$EffectorCallPropagatedRuntimeException: Error invoking stop at VanillaSoftwareProcessImpl{id=nbyj75p118}
              at org.apache.brooklyn.core.mgmt.internal.EffectorUtils$EffectorCallPropagatedRuntimeException.propagate(EffectorUtils.java:316) ~[?:?]
              at org.apache.brooklyn.core.mgmt.internal.EffectorUtils$EffectorCallPropagatedRuntimeException.access$100(EffectorUtils.java:283) ~[?:?]
              at org.apache.brooklyn.core.mgmt.internal.EffectorUtils.handleEffectorException(EffectorUtils.java:324) ~[?:?]
              at org.apache.brooklyn.core.effector.EffectorTasks$EffectorBodyTaskFactory$2.handleException(EffectorTasks.java:90) ~[?:?]
              at org.apache.brooklyn.util.core.task.DynamicSequentialTask.handleException(DynamicSequentialTask.java:474) ~[?:?]
              at org.apache.brooklyn.util.core.task.DynamicSequentialTask$DstJob.call(DynamicSequentialTask.java:422) ~[?:?]
              ... 5 more
      Caused by: org.apache.brooklyn.util.exceptions.PropagatedRuntimeException: 
              at org.apache.brooklyn.util.exceptions.Exceptions.propagate(Exceptions.java:129) ~[?:?]
              at org.apache.brooklyn.entity.software.base.lifecycle.MachineLifecycleEffectorTasks.doStop(MachineLifecycleEffectorTasks.java:870) ~[?:?]
              at org.apache.brooklyn.entity.software.base.lifecycle.MachineLifecycleEffectorTasks.doStopLatching(MachineLifecycleEffectorTasks.java:757) ~[?:?]
              at org.apache.brooklyn.entity.software.base.lifecycle.MachineLifecycleEffectorTasks.stop(MachineLifecycleEffectorTasks.java:744) ~[?:?]
              at org.apache.brooklyn.entity.software.base.lifecycle.MachineLifecycleEffectorTasks$StopEffectorBody.call(MachineLifecycleEffectorTasks.java:293) ~[?:?]
              at org.apache.brooklyn.entity.software.base.lifecycle.MachineLifecycleEffectorTasks$StopEffectorBody.call(MachineLifecycleEffectorTasks.java:290) ~[?:?]
              ... 7 more
      Caused by: java.util.concurrent.ExecutionException: java.lang.NullPointerException: machineDeletionSemaphore
              at java.util.concurrent.FutureTask.report(FutureTask.java:122) ~[?:?]
              at java.util.concurrent.FutureTask.get(FutureTask.java:192) ~[?:?]
              at com.google.common.util.concurrent.ForwardingFuture.get(ForwardingFuture.java:63) ~[?:?]
              at org.apache.brooklyn.util.core.task.BasicTask.get(BasicTask.java:383) ~[?:?]
              at org.apache.brooklyn.entity.software.base.lifecycle.MachineLifecycleEffectorTasks.doStop(MachineLifecycleEffectorTasks.java:858) ~[?:?]
              at org.apache.brooklyn.entity.software.base.lifecycle.MachineLifecycleEffectorTasks.doStopLatching(MachineLifecycleEffectorTasks.java:757) ~[?:?]
              at org.apache.brooklyn.entity.software.base.lifecycle.MachineLifecycleEffectorTasks.stop(MachineLifecycleEffectorTasks.java:744) ~[?:?]
              at org.apache.brooklyn.entity.software.base.lifecycle.MachineLifecycleEffectorTasks$StopEffectorBody.call(MachineLifecycleEffectorTasks.java:293) ~[?:?]
              at org.apache.brooklyn.entity.software.base.lifecycle.MachineLifecycleEffectorTasks$StopEffectorBody.call(MachineLifecycleEffectorTasks.java:290) ~[?:?]
              ... 7 more
      Caused by: java.lang.NullPointerException: machineDeletionSemaphore
              at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:226) ~[?:?]
              at org.apache.brooklyn.location.jclouds.JcloudsLocation.getMachineDeletionSemaphore(JcloudsLocation.java:392) ~[?:?]
              at org.apache.brooklyn.location.jclouds.JcloudsLocation.release(JcloudsLocation.java:2161) ~[?:?]
              at org.apache.brooklyn.entity.software.base.lifecycle.MachineLifecycleEffectorTasks.stopAnyProvisionedMachines(MachineLifecycleEffectorTasks.java:1033) ~[?:?]
              at org.apache.brooklyn.entity.software.base.lifecycle.MachineLifecycleEffectorTasks$StopAnyProvisionedMachinesTask.call(MachineLifecycleEffectorTasks.java:883) ~[?:?]
              at org.apache.brooklyn.entity.software.base.lifecycle.MachineLifecycleEffectorTasks$StopAnyProvisionedMachinesTask.call(MachineLifecycleEffectorTasks.java:880) ~[?:?]
              ... 6 more
      

      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: