@Override public Amount<Long, Time> getReevaluationDelay( IInstanceKey instance, IJobUpdateInstructions instructions, MutableStoreProvider storeProvider, StateManager stateManager, JobUpdateStatus status) { LOG.info("Adding instance " + instance + " while " + status); ITaskConfig replacement = getTargetConfig(instructions, status == ROLLING_FORWARD, instance.getInstanceId()); stateManager.insertPendingTasks( storeProvider, replacement, ImmutableSet.of(instance.getInstanceId())); return Amount.of( (long) instructions.getSettings().getMaxWaitToInstanceRunningMs(), Time.MILLISECONDS); }
@Override public Amount<Long, Time> getReevaluationDelay( IInstanceKey instance, IJobUpdateInstructions instructions, MutableStoreProvider storeProvider, StateManager stateManager, JobUpdateStatus status) { String taskId = Tasks.id( Iterables.getOnlyElement( storeProvider .getTaskStore() .fetchTasks(Query.instanceScoped(instance).active()))); LOG.info("Killing " + instance + " while " + status); stateManager.changeState( storeProvider, taskId, Optional.absent(), ScheduleStatus.KILLING, Optional.of("Killed for job update.")); return Amount.of( (long) instructions.getSettings().getMaxWaitToInstanceRunningMs(), Time.MILLISECONDS); }