Index: core/src/main/java/org/apache/hama/bsp/GroomServer.java =================================================================== --- core/src/main/java/org/apache/hama/bsp/GroomServer.java (revision 1163459) +++ core/src/main/java/org/apache/hama/bsp/GroomServer.java (working copy) @@ -990,4 +990,18 @@ } + @Override + public boolean statusUpdate(TaskAttemptID taskId, TaskStatus taskStatus) + throws IOException, InterruptedException { + // TODO Auto-generated method stub + return false; + } + + @Override + public void fatalError(TaskAttemptID taskId, String message) + throws IOException { + // TODO Auto-generated method stub + + } + } Index: core/src/main/java/org/apache/hama/bsp/TaskStatus.java =================================================================== --- core/src/main/java/org/apache/hama/bsp/TaskStatus.java (revision 1163459) +++ core/src/main/java/org/apache/hama/bsp/TaskStatus.java (working copy) @@ -31,7 +31,7 @@ * Describes the current status of a task. This is not intended to be a * comprehensive piece of data. */ -class TaskStatus implements Writable, Cloneable { +public class TaskStatus implements Writable, Cloneable { static final Log LOG = LogFactory.getLog(TaskStatus.class); // enumeration for reporting current phase of a task. Index: core/src/main/java/org/apache/hama/ipc/BSPPeerProtocol.java =================================================================== --- core/src/main/java/org/apache/hama/ipc/BSPPeerProtocol.java (revision 1163459) +++ core/src/main/java/org/apache/hama/ipc/BSPPeerProtocol.java (working copy) @@ -22,6 +22,7 @@ import org.apache.hama.Constants; import org.apache.hama.bsp.Task; +import org.apache.hama.bsp.TaskStatus; import org.apache.hama.bsp.TaskAttemptID; /** @@ -41,6 +42,18 @@ boolean ping(TaskAttemptID taskid) throws IOException; /** + * Report child's progress to parent. + * + * @param taskId task-id of the child + * @param taskStatus status of the child + * @throws IOException + * @throws InterruptedException + * @return True if the task is known + */ + boolean statusUpdate(TaskAttemptID taskId, TaskStatus taskStatus) + throws IOException, InterruptedException; + + /** * Report that the task is successfully completed. Failure is assumed if the * task process exits without calling this. * @@ -52,6 +65,9 @@ /** Report that the task encounted a local filesystem error. */ void fsError(TaskAttemptID taskId, String message) throws IOException; + /** Report that the task encounted a fatal error.*/ + void fatalError(TaskAttemptID taskId, String message) throws IOException; + void incrementSuperstepCount(TaskAttemptID taskid) throws IOException; /**