Examples of IAssignedTask


Examples of org.apache.aurora.scheduler.storage.entities.IAssignedTask

    if (task.getStatus() != RUNNING) {
      return respond(NOT_FOUND, "The selected instance is currently in state " + task.getStatus());
    }

    IAssignedTask assignedTask = task.getAssignedTask();
    Optional<Integer> port = getRedirectPort(assignedTask);
    if (!port.isPresent()) {
      return respond(NOT_FOUND, "The task does not have a registered http port.");
    }

    UriBuilder redirect = UriBuilder
        .fromPath(forwardRequest.or("/"))
        .scheme("http")
        .host(assignedTask.getSlaveHost())
        .port(port.get());
    for (Entry<String, List<String>> entry : uriInfo.getQueryParameters().entrySet()) {
      for (String value : entry.getValue()) {
        redirect.queryParam(entry.getKey(), value);
      }
View Full Code Here

Examples of org.apache.aurora.scheduler.storage.entities.IAssignedTask

      // Task is no longer PENDING no need to preempt
      if (pendingTasks.isEmpty()) {
        return Optional.absent();
      }

      IAssignedTask pendingTask = Iterables.getOnlyElement(pendingTasks);

      Multimap<String, IAssignedTask> slavesToActiveTasks = getSlavesToActiveTasks();

      if (slavesToActiveTasks.isEmpty()) {
        return Optional.absent();
      }

      attemptedPreemptions.incrementAndGet();

      // Group the offers by slave id so they can be paired with active tasks from the same slave.
      Multimap<String, Offer> slavesToOffers =
          Multimaps.index(offerQueue.getOffers(), OFFER_TO_SLAVE_ID);

      Set<String> allSlaves = ImmutableSet.<String>builder()
          .addAll(slavesToOffers.keySet())
          .addAll(slavesToActiveTasks.keySet())
          .build();

      for (String slaveID : allSlaves) {
        Optional<Set<IAssignedTask>> toPreemptTasks = getTasksToPreempt(
            slavesToActiveTasks.get(slaveID),
            slavesToOffers.get(slaveID),
            pendingTask,
            attributeAggregate);

        if (toPreemptTasks.isPresent()) {
          for (IAssignedTask toPreempt : toPreemptTasks.get()) {
            stateManager.changeState(
                toPreempt.getTaskId(),
                Optional.<ScheduleStatus>absent(),
                PREEMPTING,
                Optional.of("Preempting in favor of " + pendingTask.getTaskId()));
            tasksPreempted.incrementAndGet();
          }
          return Optional.of(slaveID);
        }
      }
View Full Code Here

Examples of org.apache.aurora.scheduler.storage.entities.IAssignedTask

    private TaskInfo assign(Offer offer, IScheduledTask task) {
      String host = offer.getHostname();
      Set<Integer> selectedPorts =
          Resources.getPorts(offer, task.getAssignedTask().getTask().getRequestedPorts().size());
      IAssignedTask assigned = stateManager.assignTask(
          Tasks.id(task),
          host,
          offer.getSlaveId(),
          selectedPorts);
      LOG.info(String.format("Offer on slave %s (id %s) is being assigned task for %s.",
View Full Code Here

Examples of org.apache.aurora.scheduler.storage.entities.IAssignedTask

    private TaskInfo assign(MutableStoreProvider storeProvider, Offer offer, IScheduledTask task) {
      String host = offer.getHostname();
      Set<Integer> selectedPorts =
          Resources.getPorts(offer, task.getAssignedTask().getTask().getRequestedPorts().size());
      IAssignedTask assigned = stateManager.assignTask(
          storeProvider,
          Tasks.id(task),
          host,
          offer.getSlaveId(),
          selectedPorts);
View Full Code Here

Examples of org.apache.aurora.scheduler.storage.entities.IAssignedTask

      // Task is no longer PENDING no need to preempt
      if (pendingTasks.isEmpty()) {
        return Optional.absent();
      }

      final IAssignedTask pendingTask = Iterables.getOnlyElement(pendingTasks);

      Multimap<String, IAssignedTask> slavesToActiveTasks = getSlavesToActiveTasks();

      if (slavesToActiveTasks.isEmpty()) {
        return Optional.absent();
      }

      attemptedPreemptions.incrementAndGet();

      // Group the offers by slave id so they can be paired with active tasks from the same slave.
      Multimap<String, HostOffer> slavesToOffers =
          Multimaps.index(offerQueue.getOffers(), OFFER_TO_SLAVE_ID);

      Set<String> allSlaves = ImmutableSet.<String>builder()
          .addAll(slavesToOffers.keySet())
          .addAll(slavesToActiveTasks.keySet())
          .build();

      for (String slaveID : allSlaves) {
        final Optional<Set<IAssignedTask>> toPreemptTasks = getTasksToPreempt(
            slavesToActiveTasks.get(slaveID),
            slavesToOffers.get(slaveID),
            pendingTask,
            attributeAggregate);

        if (toPreemptTasks.isPresent()) {
          storage.write(new MutateWork.NoResult.Quiet() {
            @Override
            protected void execute(MutableStoreProvider storeProvider) {
              for (IAssignedTask toPreempt : toPreemptTasks.get()) {
                stateManager.changeState(
                    storeProvider,
                    toPreempt.getTaskId(),
                    Optional.<ScheduleStatus>absent(),
                    PREEMPTING,
                    Optional.of("Preempting in favor of " + pendingTask.getTaskId()));
                tasksPreempted.incrementAndGet();
              }
            }
          });
          return Optional.of(slaveID);
View Full Code Here

Examples of org.apache.aurora.scheduler.storage.entities.IAssignedTask

    if (task.getStatus() != RUNNING) {
      return respond(NOT_FOUND, "The selected instance is currently in state " + task.getStatus());
    }

    IAssignedTask assignedTask = task.getAssignedTask();
    Optional<Integer> port = getRedirectPort(assignedTask);
    if (!port.isPresent()) {
      return respond(NOT_FOUND, "The task does not have a registered http port.");
    }

    UriBuilder redirect = UriBuilder
        .fromPath(forwardRequest.or("/"))
        .scheme("http")
        .host(assignedTask.getSlaveHost())
        .port(port.get());
    for (Entry<String, List<String>> entry : uriInfo.getQueryParameters().entrySet()) {
      for (String value : entry.getValue()) {
        redirect.queryParam(entry.getKey(), value);
      }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.