private static void writeTaskAttemptId(DataOutputStream dos, TaskAttemptId taId) throws IOException { TaskId tid = taId.getTaskId(); ActivityId aid = tid.getActivityId(); OperatorDescriptorId odId = aid.getOperatorDescriptorId(); dos.writeInt(odId.getId()); dos.writeInt(aid.getLocalId()); dos.writeInt(tid.getPartition()); dos.writeInt(taId.getAttempt()); }
private String findTaskLocation(TaskId tid) { ActivityId aid = tid.getActivityId(); ActivityCluster ac = jobRun.getActivityClusterGraph().getActivityMap().get(aid); Task[] tasks = getActivityClusterPlan(ac).getActivityPlanMap().get(aid).getTasks(); List<TaskClusterAttempt> tcAttempts = tasks[tid.getPartition()].getTaskCluster().getAttempts(); if (tcAttempts == null || tcAttempts.isEmpty()) { return null; } TaskClusterAttempt lastTCA = tcAttempts.get(tcAttempts.size() - 1); TaskAttempt ta = lastTCA.getTaskAttempts().get(tid); return ta == null ? null : ta.getNodeId(); }
private TaskCluster getTaskCluster(TaskId tid) { JobRun run = executor.getJobRun(); ActivityCluster ac = run.getActivityClusterGraph().getActivityMap().get(tid.getActivityId()); ActivityClusterPlan acp = run.getActivityClusterPlanMap().get(ac.getId()); Task[] tasks = acp.getActivityPlanMap().get(tid.getActivityId()).getTasks(); Task task = tasks[tid.getPartition()]; assert task.getTaskId().equals(tid); return task.getTaskCluster(); }
List<Task> taskStates = new ArrayList<>(); for (TaskId tid : cluster) { taskStates.add(activityPlanMap.get(tid.getActivityId()).getTasks()[tid.getPartition()]); tcSet.add(tc); for (TaskId tid : cluster) { activityPlanMap.get(tid.getActivityId()).getTasks()[tid.getPartition()].setTaskCluster(tc);
ObjectNode json = om.createObjectNode(); json.put("activity-id", taskAttemptId.getTaskId().getActivityId().toString()); json.put("partition", taskAttemptId.getTaskId().getPartition()); json.put("attempt", taskAttemptId.getAttempt());
private String assignLocation(ActivityClusterGraph acg, Map<TaskId, LValueConstraintExpression> locationMap, TaskId tid, TaskAttempt taskAttempt) throws HyracksException { ActivityId aid = tid.getActivityId(); ActivityCluster ac = acg.getActivityMap().get(aid); Set<ActivityId> blockers = ac.getBlocked2BlockerMap().get(aid);
@Override public final void runWork() { IJobManager jobManager = ccs.getJobManager(); JobRun run = jobManager.get(jobId); if (run != null) { TaskId tid = taId.getTaskId(); Map<ActivityId, ActivityCluster> activityClusterMap = run.getActivityClusterGraph().getActivityMap(); ActivityCluster ac = activityClusterMap.get(tid.getActivityId()); if (ac != null) { Map<ActivityId, ActivityPlan> taskStateMap = run.getActivityClusterPlanMap().get(ac.getId()).getActivityPlanMap(); Task[] taskStates = taskStateMap.get(tid.getActivityId()).getTasks(); if (taskStates != null && taskStates.length > tid.getPartition()) { Task ts = taskStates[tid.getPartition()]; TaskCluster tc = ts.getTaskCluster(); List<TaskClusterAttempt> taskClusterAttempts = tc.getAttempts(); if (taskClusterAttempts != null && taskClusterAttempts.size() > taId.getAttempt()) { TaskClusterAttempt tca = taskClusterAttempts.get(taId.getAttempt()); TaskAttempt ta = tca.getTaskAttempts().get(tid); if (ta != null) { performEvent(ta); } } } } } }
for (Pair<TaskId, ConnectorDescriptorId> p : cInfoList) { Task targetTS = activityPlanMap.get(p.getLeft().getActivityId()).getTasks()[p.getLeft().getPartition()]; TaskCluster targetTC = targetTS.getTaskCluster(); if (targetTC != tc) {
TaskAttemptId taId = td.getTaskAttemptId(); TaskId tid = taId.getTaskId(); ActivityId aid = tid.getActivityId(); ActivityCluster ac = acg.getActivityMap().get(aid); IActivity han = ac.getActivityMap().get(aid);
TaskId tid = ts.getTaskId(); TaskAttempt taskAttempt = new TaskAttempt(tcAttempt, new TaskAttemptId(new TaskId(tid.getActivityId(), tid.getPartition()), attempts), ts); taskAttempt.setStatus(TaskAttempt.TaskStatus.INITIALIZED, null); locationMap.put(tid, new PartitionLocationExpression(tid.getActivityId().getOperatorDescriptorId(), tid.getPartition())); taskAttempts.put(tid, taskAttempt); taskAttemptMap.put(nodeId, tads); OperatorDescriptorId opId = tid.getActivityId().getOperatorDescriptorId(); jobRun.registerOperatorLocation(opId, tid.getPartition(), nodeId); ActivityPartitionDetails apd = ts.getActivityPlan().getActivityPartitionDetails(); int attempt = taid.getAttempt(); TaskId tid = taid.getTaskId(); ActivityId aid = tid.getActivityId(); List<IConnectorDescriptor> inConnectors = acg.getActivityInputs(aid); int[] inPartitionCounts = tad.getInputPartitionCounts();