@Override public int compare(Task<?> t1, Task<?> t2) { long end1 = t1.getEndTimeUtc(); long end2 = t2.getEndTimeUtc(); return (end1 < end2) ? -1 : ((end1 == end2) ? 0 : 1); } };
@Override public Number get() { return t1.getEndTimeUtc(); }}, MathPredicates.<Number>greaterThanOrEqual(0));
@Override public Number get() { return t.getEndTimeUtc(); }}, MathPredicates.<Number>greaterThanOrEqual(0));
@Override public void onTaskDone(Task<?> task) { Assert.assertTrue(task.isDone()); Object result = task.getUnchecked(); if (result != null && result.equals("foo")) { synchronized (completedTasks) { completedTasks.put(task, Duration.sinceUtc(task.getEndTimeUtc())); } latch.countDown(); } } });
protected void expireAgedTasks() { Duration maxTaskAge = brooklynProperties.getConfig(MAX_TASK_AGE); Collection<Task<?>> allTasks = executionManager.allTasksLive(); Collection<Task<?>> tasksToDelete = MutableList.of(); try { for (Task<?> task: allTasks) { if (!task.isDone()) continue; if (BrooklynTaskTags.isSubTask(task)) continue; if (maxTaskAge.isShorterThan(Duration.sinceUtc(task.getEndTimeUtc()))) tasksToDelete.add(task); } } catch (ConcurrentModificationException e) { // delete what we've found so far LOG.debug("Got CME inspecting aged tasks, with "+tasksToDelete.size()+" found for deletion: "+e); } for (Task<?> task: tasksToDelete) { executionManager.deleteTask(task); } }
private String taskToVerboseString(Task<?> t) { return MoreObjects.toStringHelper(t) .add("id", t.getId()) .add("displayName", t.getDisplayName()) .add("submitTime", t.getSubmitTimeUtc()) .add("startTime", t.getStartTimeUtc()) .add("endTime", t.getEndTimeUtc()) .add("status", t.getStatusSummary()) .add("tags", t.getTags()) .toString(); }
if (t.getEndTimeUtc()>=0) return true; if (!t.isCancelled()) { log.warn("Internal task thread is dead or null ("+tt+") but task not ended: "+t.getEndTimeUtc()+" ("+t+")");
long t1 = o1.isDone() ? o1.getEndTimeUtc() : o1.isBegun() ? o1.getStartTimeUtc() : o1.getSubmitTimeUtc(); long t2 = o2.isDone() ? o2.getEndTimeUtc() : o2.isBegun() ? o2.getStartTimeUtc() : o2.getSubmitTimeUtc(); long u1 = now - t1; long u2 = now - t2;
task.getTags(), ifPositive(task.getSubmitTimeUtc()), ifPositive(task.getStartTimeUtc()), ifPositive(task.getEndTimeUtc()), task.getStatusSummary(), result, task.isError(), task.isCancelled(), children, asLink(task.getSubmittedByTask(), ub),
MathPredicates.<Number>greaterThanOrEqual(0)); } else { Assert.assertTrue(t.getEndTimeUtc() < 0, "Wrong end time: "+t.getEndTimeUtc());