@Override public JobPartitionState[] getPartitionStates() { JobPartitionState[] partitionStates = processInformation.getPartitionStates(); return Arrays.copyOf(partitionStates, partitionStates.length); }
@Override public int getProcessedRecords() { return processInformation.getProcessedRecords(); } }
@Override protected Object call() throws Exception { MapReduceService mapReduceService = getService(MapReduceService.SERVICE_NAME); JobSupervisor supervisor = mapReduceService.getJobSupervisor(parameters.name, parameters.jobId); if (supervisor != null && supervisor.getJobProcessInformation() != null) { JobProcessInformation current = supervisor.getJobProcessInformation(); List<JobPartitionState> jobPartitionStates = Arrays.asList(current.getPartitionStates()); return MapReduceJobProcessInformationCodec.encodeResponse(jobPartitionStates, current.getProcessedRecords()); } throw new IllegalStateException( "Information not found for map reduce with name: " + parameters.name + ", job ID: " + parameters.jobId); }
@Override protected Object call() throws Exception { MapReduceService mapReduceService = getService(MapReduceService.SERVICE_NAME); JobSupervisor supervisor = mapReduceService.getJobSupervisor(parameters.name, parameters.jobId); if (supervisor != null && supervisor.getJobProcessInformation() != null) { JobProcessInformation current = supervisor.getJobProcessInformation(); List<JobPartitionState> jobPartitionStates = Arrays.asList(current.getPartitionStates()); return MapReduceJobProcessInformationCodec.encodeResponse(jobPartitionStates, current.getProcessedRecords()); } throw new IllegalStateException( "Information not found for map reduce with name: " + parameters.name + ", job ID: " + parameters.jobId); }
@Override public JobPartitionState[] getPartitionStates() { JobPartitionState[] partitionStates = processInformation.getPartitionStates(); return Arrays.copyOf(partitionStates, partitionStates.length); }
@Override public int getProcessedRecords() { return processInformation.getProcessedRecords(); } }
private boolean checkState(JobProcessInformation processInformation, int partitionId) { JobPartitionState[] partitionStates = processInformation.getPartitionStates(); JobPartitionState partitionState = partitionStates[partitionId]; return partitionState == null || partitionState.getState() == JobPartitionState.State.WAITING; }
private boolean checkState(JobProcessInformation processInformation, int partitionId) { JobPartitionState[] partitionStates = processInformation.getPartitionStates(); JobPartitionState partitionState = partitionStates[partitionId]; return partitionState == null || partitionState.getState() == JobPartitionState.State.WAITING; }
public void checkFullyProcessed(JobProcessInformation processInformation) { if (isOwnerNode()) { JobPartitionState[] partitionStates = processInformation.getPartitionStates(); for (JobPartitionState partitionState : partitionStates) { if (partitionState == null || partitionState.getState() != JobPartitionState.State.PROCESSED) { return; } } final String name = configuration.getName(); final String jobId = configuration.getJobId(); final NodeEngine nodeEngine = configuration.getNodeEngine(); final GetResultOperationFactory operationFactory = new GetResultOperationFactory(name, jobId); // Get the initial future object to eventually set the result and cleanup final TrackableJobFuture future = jobTracker.unregisterTrackableJob(jobId); if (future == null) { // If already handled just return return; } final JobSupervisor jobSupervisor = this; Runnable runnable = new GetResultsRunnable(nodeEngine, operationFactory, jobId, jobSupervisor, future); ExecutionService executionService = nodeEngine.getExecutionService(); ManagedExecutorService executor = executionService.getExecutor(ExecutionService.ASYNC_EXECUTOR); executor.submit(runnable); } }
public void checkFullyProcessed(JobProcessInformation processInformation) { if (isOwnerNode()) { JobPartitionState[] partitionStates = processInformation.getPartitionStates(); for (JobPartitionState partitionState : partitionStates) { if (partitionState == null || partitionState.getState() != JobPartitionState.State.PROCESSED) { return; } } final String name = configuration.getName(); final String jobId = configuration.getJobId(); final NodeEngine nodeEngine = configuration.getNodeEngine(); final GetResultOperationFactory operationFactory = new GetResultOperationFactory(name, jobId); // Get the initial future object to eventually set the result and cleanup final TrackableJobFuture future = jobTracker.unregisterTrackableJob(jobId); if (future == null) { // If already handled just return return; } final JobSupervisor jobSupervisor = this; Runnable runnable = new GetResultsRunnable(nodeEngine, operationFactory, jobId, jobSupervisor, future); ExecutionService executionService = nodeEngine.getExecutionService(); ManagedExecutorService executor = executionService.getExecutor(ExecutionService.ASYNC_EXECUTOR); executor.submit(runnable); } }