Skip to content

Commit

Permalink
fix issues
Browse files Browse the repository at this point in the history
  • Loading branch information
wsorenson committed Dec 30, 2015
1 parent 5915e32 commit 1f6b7f3
Show file tree
Hide file tree
Showing 17 changed files with 89 additions and 85 deletions.
@@ -1,6 +1,5 @@
package com.hubspot.singularity; package com.hubspot.singularity;


import java.util.Collections;
import java.util.List; import java.util.List;


import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonCreator;
Expand All @@ -18,19 +17,19 @@ public enum PendingType {
private final long timestamp; private final long timestamp;
private final PendingType pendingType; private final PendingType pendingType;
private final Optional<String> user; private final Optional<String> user;
private final List<String> cmdLineArgsList; private final Optional<List<String>> cmdLineArgsList;
private final Optional<String> runId; private final Optional<String> runId;
private final Optional<Boolean> skipHealthchecks; private final Optional<Boolean> skipHealthchecks;
private final Optional<String> message; private final Optional<String> message;
private final Optional<String> actionId; private final Optional<String> actionId;


public SingularityPendingRequest(String requestId, String deployId, long timestamp, Optional<String> user, PendingType pendingType, Optional<Boolean> skipHealthchecks, Optional<String> message) { public SingularityPendingRequest(String requestId, String deployId, long timestamp, Optional<String> user, PendingType pendingType, Optional<Boolean> skipHealthchecks, Optional<String> message) {
this(requestId, deployId, timestamp, user, pendingType, Collections.<String> emptyList(), Optional.<String> absent(), skipHealthchecks, message, Optional.<String> absent()); this(requestId, deployId, timestamp, user, pendingType, Optional.<List<String>> absent(), Optional.<String> absent(), skipHealthchecks, message, Optional.<String> absent());
} }


@JsonCreator @JsonCreator
public SingularityPendingRequest(@JsonProperty("requestId") String requestId, @JsonProperty("deployId") String deployId, @JsonProperty("timestamp") long timestamp, public SingularityPendingRequest(@JsonProperty("requestId") String requestId, @JsonProperty("deployId") String deployId, @JsonProperty("timestamp") long timestamp,
@JsonProperty("user") Optional<String> user, @JsonProperty("pendingType") PendingType pendingType, @JsonProperty("cmdLineArgsList") List<String> cmdLineArgsList, @JsonProperty("user") Optional<String> user, @JsonProperty("pendingType") PendingType pendingType, @JsonProperty("cmdLineArgsList") Optional<List<String>> cmdLineArgsList,
@JsonProperty("runId") Optional<String> runId, @JsonProperty("skipHealthchecks") Optional<Boolean> skipHealthchecks, @JsonProperty("message") Optional<String> message, @JsonProperty("runId") Optional<String> runId, @JsonProperty("skipHealthchecks") Optional<Boolean> skipHealthchecks, @JsonProperty("message") Optional<String> message,
@JsonProperty("actionId") Optional<String> actionId) { @JsonProperty("actionId") Optional<String> actionId) {
this.requestId = requestId; this.requestId = requestId;
Expand Down Expand Up @@ -73,7 +72,7 @@ public PendingType getPendingType() {
return pendingType; return pendingType;
} }


public List<String> getCmdLineArgsList() { public Optional<List<String>> getCmdLineArgsList() {
return cmdLineArgsList; return cmdLineArgsList;
} }


Expand Down
Expand Up @@ -9,12 +9,11 @@
import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.annotation.JsonProperty;
import com.google.common.base.Optional; import com.google.common.base.Optional;
import com.google.common.base.Predicate; import com.google.common.base.Predicate;
import com.hubspot.mesos.JavaUtils;


public class SingularityPendingTask { public class SingularityPendingTask {


private final SingularityPendingTaskId pendingTaskId; private final SingularityPendingTaskId pendingTaskId;
private final List<String> cmdLineArgsList; private final Optional<List<String>> cmdLineArgsList;
private final Optional<String> user; private final Optional<String> user;
private final Optional<String> runId; private final Optional<String> runId;
private final Optional<Boolean> skipHealthchecks; private final Optional<Boolean> skipHealthchecks;
Expand Down Expand Up @@ -42,11 +41,11 @@ public boolean apply(@Nonnull SingularityPendingTask input) {
} }


@JsonCreator @JsonCreator
public SingularityPendingTask(@JsonProperty("pendingTaskId") SingularityPendingTaskId pendingTaskId, @JsonProperty("cmdLineArgsList") List<String> cmdLineArgsList, public SingularityPendingTask(@JsonProperty("pendingTaskId") SingularityPendingTaskId pendingTaskId, @JsonProperty("cmdLineArgsList") Optional<List<String>> cmdLineArgsList,
@JsonProperty("user") Optional<String> user, @JsonProperty("runId") Optional<String> runId, @JsonProperty("skipHealthchecks") Optional<Boolean> skipHealthchecks) { @JsonProperty("user") Optional<String> user, @JsonProperty("runId") Optional<String> runId, @JsonProperty("skipHealthchecks") Optional<Boolean> skipHealthchecks) {
this.pendingTaskId = pendingTaskId; this.pendingTaskId = pendingTaskId;
this.user = user; this.user = user;
this.cmdLineArgsList = JavaUtils.nonNullImmutable(cmdLineArgsList); this.cmdLineArgsList = cmdLineArgsList;
this.runId = runId; this.runId = runId;
this.skipHealthchecks = skipHealthchecks; this.skipHealthchecks = skipHealthchecks;
} }
Expand Down Expand Up @@ -79,7 +78,7 @@ public SingularityPendingTaskId getPendingTaskId() {
return pendingTaskId; return pendingTaskId;
} }


public List<String> getCmdLineArgsList() { public Optional<List<String>> getCmdLineArgsList() {
return cmdLineArgsList; return cmdLineArgsList;
} }


Expand Down
Expand Up @@ -139,10 +139,19 @@ public boolean apply(SingularityExecutorShellCommandDescriptor input) {
int pid; int pid;
Path pidFilePath = MesosUtils.getTaskDirectoryPath(getTask().getTaskId()).resolve(executorConfiguration.getShellCommandPidFile()); Path pidFilePath = MesosUtils.getTaskDirectoryPath(getTask().getTaskId()).resolve(executorConfiguration.getShellCommandPidFile());
if (Files.exists(pidFilePath)) { if (Files.exists(pidFilePath)) {
Scanner scanner = null;
try { try {
pid = Integer.parseInt(new Scanner(pidFilePath).useDelimiter("\\Z").next()); scanner = new Scanner(pidFilePath);
scanner.useDelimiter("\\Z");
pid = Integer.parseInt(scanner.next());
} catch (Exception e) { } catch (Exception e) {
throw new InvalidShellCommandException(String.format("No PID found due to exception reading pid file: %s", e.getMessage())); throw new InvalidShellCommandException(String.format("No PID found due to exception reading pid file: %s", e.getMessage()));
} finally {
if (scanner != null) {
try {
scanner.close();
} catch (Throwable t) {}
}
} }
} else if (isDocker) { } else if (isDocker) {
pid = 1; pid = 1;
Expand Down
@@ -1,7 +1,6 @@
package com.hubspot.singularity.oomkiller.config; package com.hubspot.singularity.oomkiller.config;


import javax.validation.constraints.Min; import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;


import org.hibernate.validator.constraints.NotEmpty; import org.hibernate.validator.constraints.NotEmpty;


Expand Down Expand Up @@ -79,11 +78,11 @@ public void setCgroupProcsPathFormat(String cgroupProcsPathFormat) {
@Override @Override
public String toString() { public String toString() {
return "SingularityOOMKillerConfiguration[" + return "SingularityOOMKillerConfiguration[" +
"requestKillThresholdRatio=" + requestKillThresholdRatio + "requestKillThresholdRatio=" + requestKillThresholdRatio +
", killProcessDirectlyThresholdRatio=" + killProcessDirectlyThresholdRatio + ", killProcessDirectlyThresholdRatio=" + killProcessDirectlyThresholdRatio +
", checkForOOMEveryMillis=" + checkForOOMEveryMillis + ", checkForOOMEveryMillis=" + checkForOOMEveryMillis +
", slaveHostname='" + slaveHostname + '\'' + ", slaveHostname='" + slaveHostname + '\'' +
", cgroupProcsPathFormat='" + cgroupProcsPathFormat + '\'' + ", cgroupProcsPathFormat='" + cgroupProcsPathFormat + '\'' +
']'; ']';
} }
} }
Expand Up @@ -29,7 +29,6 @@
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;


import com.google.common.base.Optional; import com.google.common.base.Optional;
import com.google.common.base.Preconditions;
import com.google.common.base.Predicate; import com.google.common.base.Predicate;
import com.google.common.base.Throwables; import com.google.common.base.Throwables;
import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableList;
Expand Down
Expand Up @@ -150,8 +150,8 @@ private void checkPendingTasks() {
} }
} }


private List<String> getCmdLineArgs(Optional<String> cmdLineArgs) { private Optional<List<String>> getCmdLineArgs(Optional<String> cmdLineArgs) {
return cmdLineArgs.isPresent() ? Collections.singletonList(cmdLineArgs.get()) : Collections.<String> emptyList(); return cmdLineArgs.isPresent() ? Optional.of(Collections.singletonList(cmdLineArgs.get())) : Optional.<List<String>> absent();
} }


private Optional<String> getCmdLineArgs(SingularityPendingTaskId pendingTaskId) throws Exception { private Optional<String> getCmdLineArgs(SingularityPendingTaskId pendingTaskId) throws Exception {
Expand Down
@@ -1,6 +1,7 @@
package com.hubspot.singularity.data.zkmigrations; package com.hubspot.singularity.data.zkmigrations;


import java.util.Collections; import java.util.Collections;
import java.util.List;


import javax.inject.Singleton; import javax.inject.Singleton;


Expand Down Expand Up @@ -57,8 +58,8 @@ public void applyMigration() {


Optional<String> cmdLineArgs = getCmdLineArgs(pendingTaskId); Optional<String> cmdLineArgs = getCmdLineArgs(pendingTaskId);


taskManager.savePendingTask(new SingularityPendingTask(newPendingTaskId, cmdLineArgs.isPresent() ? Collections.singletonList(cmdLineArgs.get()) : taskManager.savePendingTask(new SingularityPendingTask(newPendingTaskId, cmdLineArgs.isPresent() ? Optional.of(Collections.singletonList(cmdLineArgs.get())) :
Collections.<String> emptyList(), Optional.<String> absent(), Optional.<String> absent(), Optional.<Boolean> absent())); Optional.<List<String>> absent(), Optional.<String> absent(), Optional.<String> absent(), Optional.<Boolean> absent()));


curator.delete().forPath(ZKPaths.makePath(PENDING_TASKS_ROOT, pendingTaskId)); curator.delete().forPath(ZKPaths.makePath(PENDING_TASKS_ROOT, pendingTaskId));
} }
Expand Down
Expand Up @@ -19,7 +19,6 @@
import org.apache.mesos.Protos.Label; import org.apache.mesos.Protos.Label;
import org.apache.mesos.Protos.Labels; import org.apache.mesos.Protos.Labels;
import org.apache.mesos.Protos.Labels.Builder; import org.apache.mesos.Protos.Labels.Builder;
import org.apache.mesos.Protos.LabelsOrBuilder;
import org.apache.mesos.Protos.Offer; import org.apache.mesos.Protos.Offer;
import org.apache.mesos.Protos.Resource; import org.apache.mesos.Protos.Resource;
import org.apache.mesos.Protos.TaskID; import org.apache.mesos.Protos.TaskID;
Expand Down Expand Up @@ -197,12 +196,12 @@ private Optional<DockerInfo.PortMapping> buildPortMapping(final SingularityDocke
private String fillInTaskIdValues(String string, Offer offer, SingularityTaskId taskId) { private String fillInTaskIdValues(String string, Offer offer, SingularityTaskId taskId) {
if (!Strings.isNullOrEmpty(string)) { if (!Strings.isNullOrEmpty(string)) {
string = string.replace("${TASK_REQUEST_ID}", taskId.getRequestId()) string = string.replace("${TASK_REQUEST_ID}", taskId.getRequestId())
.replace("${TASK_DEPLOY_ID}", taskId.getDeployId()) .replace("${TASK_DEPLOY_ID}", taskId.getDeployId())
.replace("${TASK_STARTED_AT}", Long.toString(taskId.getStartedAt())) .replace("${TASK_STARTED_AT}", Long.toString(taskId.getStartedAt()))
.replace("${TASK_INSTANCE_NO}", Integer.toString(taskId.getInstanceNo())) .replace("${TASK_INSTANCE_NO}", Integer.toString(taskId.getInstanceNo()))
.replace("${TASK_HOST}", offer.getHostname()) .replace("${TASK_HOST}", offer.getHostname())
.replace("${TASK_RACK_ID}", slaveAndRackHelper.getRackIdOrDefault(offer)) .replace("${TASK_RACK_ID}", slaveAndRackHelper.getRackIdOrDefault(offer))
.replace("${TASK_ID}", taskId.getId()); .replace("${TASK_ID}", taskId.getId());
} }


return string; return string;
Expand Down Expand Up @@ -281,11 +280,11 @@ private void prepareCustomExecutor(final TaskInfo.Builder bldr, final Singularit
} }


bldr.setExecutor(ExecutorInfo.newBuilder() bldr.setExecutor(ExecutorInfo.newBuilder()
.setCommand(commandBuilder.build()) .setCommand(commandBuilder.build())
.setExecutorId(ExecutorID.newBuilder().setValue(task.getDeploy().getCustomExecutorId().or(idGenerator.getNextExecutorId()))) .setExecutorId(ExecutorID.newBuilder().setValue(task.getDeploy().getCustomExecutorId().or(idGenerator.getNextExecutorId())))
.setSource(task.getDeploy().getCustomExecutorSource().or(task.getPendingTask().getPendingTaskId().getId())) .setSource(task.getDeploy().getCustomExecutorSource().or(task.getPendingTask().getPendingTaskId().getId()))
.addAllResources(buildMesosResources(desiredExecutorResources)) .addAllResources(buildMesosResources(desiredExecutorResources))
.build() .build()
); );


if (task.getDeploy().getExecutorData().isPresent()) { if (task.getDeploy().getExecutorData().isPresent()) {
Expand All @@ -299,14 +298,14 @@ private void prepareCustomExecutor(final TaskInfo.Builder bldr, final Singularit
} }
} }


if (!task.getPendingTask().getCmdLineArgsList().isEmpty()) { if (task.getPendingTask().getCmdLineArgsList().isPresent() && !task.getPendingTask().getCmdLineArgsList().get().isEmpty()) {
LOG.trace("Adding cmd line args {} to task {} executorData", task.getPendingTask().getCmdLineArgsList(), taskId.getId()); LOG.trace("Adding cmd line args {} to task {} executorData", task.getPendingTask().getCmdLineArgsList(), taskId.getId());


final ImmutableList.Builder<String> extraCmdLineArgsBuilder = ImmutableList.builder(); final ImmutableList.Builder<String> extraCmdLineArgsBuilder = ImmutableList.builder();
if (executorDataBldr.getExtraCmdLineArgs() != null && !executorDataBldr.getExtraCmdLineArgs().isEmpty()) { if (executorDataBldr.getExtraCmdLineArgs() != null && !executorDataBldr.getExtraCmdLineArgs().isEmpty()) {
extraCmdLineArgsBuilder.addAll(executorDataBldr.getExtraCmdLineArgs()); extraCmdLineArgsBuilder.addAll(executorDataBldr.getExtraCmdLineArgs());
} }
extraCmdLineArgsBuilder.addAll(task.getPendingTask().getCmdLineArgsList()); extraCmdLineArgsBuilder.addAll(task.getPendingTask().getCmdLineArgsList().get());
executorDataBldr.setExtraCmdLineArgs(extraCmdLineArgsBuilder.build()); executorDataBldr.setExtraCmdLineArgs(extraCmdLineArgsBuilder.build());
} }


Expand Down Expand Up @@ -336,7 +335,9 @@ private void prepareCommand(final TaskInfo.Builder bldr, final SingularityTaskId
commandBldr.addAllArguments(task.getDeploy().getArguments().get()); commandBldr.addAllArguments(task.getDeploy().getArguments().get());
} }


commandBldr.addAllArguments(task.getPendingTask().getCmdLineArgsList()); if (task.getPendingTask().getCmdLineArgsList().isPresent()) {
commandBldr.addAllArguments(task.getPendingTask().getCmdLineArgsList().get());
}


if (task.getDeploy().getArguments().isPresent() || if (task.getDeploy().getArguments().isPresent() ||
// Hopefully temporary workaround for // Hopefully temporary workaround for
Expand Down
Expand Up @@ -204,7 +204,6 @@ public SingularityRequestParent bounce(@ApiParam("The request ID to bounce") @Pa
}) })
public SingularityPendingRequestParent scheduleImmediately(@ApiParam("The request ID to run") @PathParam("requestId") String requestId, public SingularityPendingRequestParent scheduleImmediately(@ApiParam("The request ID to run") @PathParam("requestId") String requestId,
@ApiParam("Run ID to associate with this task. If not specified, one will be generated") @QueryParam("runId") Optional<String> runId, @ApiParam("Run ID to associate with this task. If not specified, one will be generated") @QueryParam("runId") Optional<String> runId,
@ApiParam("Additional command line arguments to append to the task") List<String> commandLineArgs,
Optional<SingularityRunNowRequest> runNowRequest) { Optional<SingularityRunNowRequest> runNowRequest) {
SingularityRequestWithState requestWithState = fetchRequestWithState(requestId); SingularityRequestWithState requestWithState = fetchRequestWithState(requestId);


Expand All @@ -225,14 +224,13 @@ public SingularityPendingRequestParent scheduleImmediately(@ApiParam("The reques


Optional<String> message = Optional.absent(); Optional<String> message = Optional.absent();
Optional<Boolean> skipHealthchecks = Optional.absent(); Optional<Boolean> skipHealthchecks = Optional.absent();
Optional<List<String>> commandLineArgs = Optional.absent();


if (runNowRequest.isPresent()) { if (runNowRequest.isPresent()) {
message = runNowRequest.get().getMessage(); message = runNowRequest.get().getMessage();
runId = runNowRequest.get().getRunId(); runId = runNowRequest.get().getRunId();
skipHealthchecks = runNowRequest.get().getSkipHealthchecks(); skipHealthchecks = runNowRequest.get().getSkipHealthchecks();
if (runNowRequest.get().getCommandLineArgs().isPresent()) { commandLineArgs = runNowRequest.get().getCommandLineArgs();
commandLineArgs = runNowRequest.get().getCommandLineArgs().get();
}
} }


if (!runId.isPresent()) { if (!runId.isPresent()) {
Expand Down
Expand Up @@ -300,7 +300,7 @@ private void bounce(SingularityRequestCleanup requestCleanup, final List<Singula
} }


requestManager.addToPendingQueue(new SingularityPendingRequest(requestCleanup.getRequestId(), requestCleanup.getDeployId().get(), requestCleanup.getTimestamp(), requestManager.addToPendingQueue(new SingularityPendingRequest(requestCleanup.getRequestId(), requestCleanup.getDeployId().get(), requestCleanup.getTimestamp(),
requestCleanup.getUser(), PendingType.BOUNCE, Collections.<String> emptyList(), Optional.<String> absent(), requestCleanup.getSkipHealthchecks(), requestCleanup.getMessage(), requestCleanup.getActionId())); requestCleanup.getUser(), PendingType.BOUNCE, Optional.<List<String>> absent(), Optional.<String> absent(), requestCleanup.getSkipHealthchecks(), requestCleanup.getMessage(), requestCleanup.getActionId()));


LOG.info("Added {} tasks for request {} to cleanup bounce queue in {}", matchingTaskIds.size(), requestCleanup.getRequestId(), JavaUtils.duration(now)); LOG.info("Added {} tasks for request {} to cleanup bounce queue in {}", matchingTaskIds.size(), requestCleanup.getRequestId(), JavaUtils.duration(now));
} }
Expand Down
@@ -1,6 +1,5 @@
package com.hubspot.singularity.scheduler; package com.hubspot.singularity.scheduler;


import java.util.Collections;
import java.util.List; import java.util.List;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.Lock;
Expand Down Expand Up @@ -146,7 +145,7 @@ protected void handleExpiringObject(SingularityExpiringBounce expiringObject, Si
} }


requestManager.addToPendingQueue(new SingularityPendingRequest(expiringObject.getRequestId(), expiringObject.getDeployId(), System.currentTimeMillis(), expiringObject.getUser(), requestManager.addToPendingQueue(new SingularityPendingRequest(expiringObject.getRequestId(), expiringObject.getDeployId(), System.currentTimeMillis(), expiringObject.getUser(),
PendingType.CANCEL_BOUNCE, Collections.<String> emptyList(), Optional.<String> absent(), Optional.<Boolean> absent(), Optional.of(message), Optional.of(expiringObject.getActionId()))); PendingType.CANCEL_BOUNCE, Optional.<List<String>> absent(), Optional.<String> absent(), Optional.<Boolean> absent(), Optional.of(message), Optional.of(expiringObject.getActionId())));
} }


} }
Expand Down
Expand Up @@ -176,7 +176,7 @@ public void testRunId() {


String runId = "my-run-id"; String runId = "my-run-id";


SingularityPendingRequestParent parent = requestResource.scheduleImmediately(requestId, Optional.of(runId), Collections.<String> emptyList(), Optional.<SingularityRunNowRequest> absent()); SingularityPendingRequestParent parent = requestResource.scheduleImmediately(requestId, Optional.of(runId), Optional.<SingularityRunNowRequest> absent());


Assert.assertEquals(runId, parent.getPendingRequest().getRunId().get()); Assert.assertEquals(runId, parent.getPendingRequest().getRunId().get());


Expand All @@ -193,7 +193,7 @@ public void testRunId() {
Assert.assertEquals(runId, historyManager.getTaskHistory(taskId.getId()).get().getTask().getTaskRequest().getPendingTask().getRunId().get()); Assert.assertEquals(runId, historyManager.getTaskHistory(taskId.getId()).get().getTask().getTaskRequest().getPendingTask().getRunId().get());
Assert.assertEquals(runId, historyManager.getTaskHistoryForRequest(requestId, 0, 10).get(0).getRunId().get()); Assert.assertEquals(runId, historyManager.getTaskHistoryForRequest(requestId, 0, 10).get(0).getRunId().get());


parent = requestResource.scheduleImmediately(requestId, Optional.<String> absent(), Collections.<String> emptyList(), Optional.<SingularityRunNowRequest> absent()); parent = requestResource.scheduleImmediately(requestId, Optional.<String> absent(), Optional.<SingularityRunNowRequest> absent());


Assert.assertTrue(parent.getPendingRequest().getRunId().isPresent()); Assert.assertTrue(parent.getPendingRequest().getRunId().isPresent());
} }
Expand All @@ -206,7 +206,7 @@ public void testPersisterRaceCondition() {
initScheduledRequest(); initScheduledRequest();
initFirstDeploy(); initFirstDeploy();


requestResource.scheduleImmediately(requestId, Optional.<String>absent(), Collections.<String>emptyList(), Optional.<SingularityRunNowRequest> absent()); requestResource.scheduleImmediately(requestId, Optional.<String>absent(), Optional.<SingularityRunNowRequest> absent());


resourceOffers(); resourceOffers();


Expand Down
Expand Up @@ -218,7 +218,7 @@ protected SingularityTask launchTask(SingularityRequest request, SingularityDepl


protected SingularityPendingTask buildPendingTask(SingularityRequest request, SingularityDeploy deploy, long launchTime, int instanceNo) { protected SingularityPendingTask buildPendingTask(SingularityRequest request, SingularityDeploy deploy, long launchTime, int instanceNo) {
SingularityPendingTaskId pendingTaskId = new SingularityPendingTaskId(request.getId(), deploy.getId(), launchTime, instanceNo, PendingType.IMMEDIATE, launchTime); SingularityPendingTaskId pendingTaskId = new SingularityPendingTaskId(request.getId(), deploy.getId(), launchTime, instanceNo, PendingType.IMMEDIATE, launchTime);
SingularityPendingTask pendingTask = new SingularityPendingTask(pendingTaskId, Collections.<String> emptyList(), Optional.<String> absent(), Optional.<String> absent(), Optional.<Boolean> absent()); SingularityPendingTask pendingTask = new SingularityPendingTask(pendingTaskId, Optional.<List<String>> absent(), Optional.<String> absent(), Optional.<String> absent(), Optional.<Boolean> absent());


return pendingTask; return pendingTask;
} }
Expand Down Expand Up @@ -464,7 +464,7 @@ protected SingularityPendingTask createAndSchedulePendingTask(String deployId) {
SingularityPendingTaskId pendingTaskId = new SingularityPendingTaskId(requestId, deployId, SingularityPendingTaskId pendingTaskId = new SingularityPendingTaskId(requestId, deployId,
System.currentTimeMillis() + TimeUnit.DAYS.toMillis(random.nextInt(3)), random.nextInt(10), PendingType.IMMEDIATE, System.currentTimeMillis()); System.currentTimeMillis() + TimeUnit.DAYS.toMillis(random.nextInt(3)), random.nextInt(10), PendingType.IMMEDIATE, System.currentTimeMillis());


SingularityPendingTask pendingTask = new SingularityPendingTask(pendingTaskId, Collections.<String> emptyList(), Optional.<String> absent(), Optional.<String> absent(), Optional.<Boolean> absent()); SingularityPendingTask pendingTask = new SingularityPendingTask(pendingTaskId, Optional.<List<String>> absent(), Optional.<String> absent(), Optional.<String> absent(), Optional.<Boolean> absent());


taskManager.savePendingTask(pendingTask); taskManager.savePendingTask(pendingTask);


Expand Down
Expand Up @@ -86,9 +86,9 @@ public void testCmdLineArgsMigration() throws Exception {


migrationRunner.checkMigrations(); migrationRunner.checkMigrations();


Assert.assertTrue(taskManager.getPendingTask(pt1).get().getCmdLineArgsList().isEmpty()); Assert.assertTrue(!taskManager.getPendingTask(pt1).get().getCmdLineArgsList().isPresent());
Assert.assertTrue(taskManager.getPendingTask(pt2).get().getCmdLineArgsList().get(0).equals("cmd line args")); Assert.assertTrue(taskManager.getPendingTask(pt2).get().getCmdLineArgsList().get().get(0).equals("cmd line args"));
Assert.assertTrue(taskManager.getPendingTask(pt2).get().getCmdLineArgsList().size() == 1); Assert.assertTrue(taskManager.getPendingTask(pt2).get().getCmdLineArgsList().get().size() == 1);


Assert.assertTrue(taskManager.getPendingTaskIds().contains(pt1)); Assert.assertTrue(taskManager.getPendingTaskIds().contains(pt1));
Assert.assertTrue(taskManager.getPendingTaskIds().contains(pt2)); Assert.assertTrue(taskManager.getPendingTaskIds().contains(pt2));
Expand All @@ -100,14 +100,14 @@ public void testCmdLineArgsMigration() throws Exception {
Assert.assertEquals(r.getDeployId(), p1.getDeployId()); Assert.assertEquals(r.getDeployId(), p1.getDeployId());
Assert.assertEquals(r.getTimestamp(), p1.getTimestamp()); Assert.assertEquals(r.getTimestamp(), p1.getTimestamp());
Assert.assertEquals(r.getPendingType(), p1.getPendingType()); Assert.assertEquals(r.getPendingType(), p1.getPendingType());
Assert.assertTrue(r.getCmdLineArgsList().isEmpty()); Assert.assertTrue(!r.getCmdLineArgsList().isPresent());
Assert.assertEquals(r.getUser(), p1.getUser()); Assert.assertEquals(r.getUser(), p1.getUser());
} else { } else {
Assert.assertEquals(r.getDeployId(), p2.getDeployId()); Assert.assertEquals(r.getDeployId(), p2.getDeployId());
Assert.assertEquals(r.getTimestamp(), p2.getTimestamp()); Assert.assertEquals(r.getTimestamp(), p2.getTimestamp());
Assert.assertEquals(r.getPendingType(), p2.getPendingType()); Assert.assertEquals(r.getPendingType(), p2.getPendingType());
Assert.assertTrue(r.getCmdLineArgsList().size() == 1); Assert.assertTrue(r.getCmdLineArgsList().get().size() == 1);
Assert.assertTrue(r.getCmdLineArgsList().get(0).equals("cmd line args")); Assert.assertTrue(r.getCmdLineArgsList().get().get(0).equals("cmd line args"));
Assert.assertEquals(r.getUser(), p2.getUser()); Assert.assertEquals(r.getUser(), p2.getUser());
} }
} }
Expand Down

0 comments on commit 1f6b7f3

Please sign in to comment.