Index: core/src/main/java/org/apache/hama/bsp/BSPMaster.java =================================================================== --- core/src/main/java/org/apache/hama/bsp/BSPMaster.java (revision 1197384) +++ core/src/main/java/org/apache/hama/bsp/BSPMaster.java (working copy) @@ -158,7 +158,9 @@ if (ts.getRunState() == TaskStatus.State.SUCCEEDED) { jip.completedTask(tip, ts); } else if (ts.getRunState() == TaskStatus.State.RUNNING) { - // do nothing + // TODO add progress counter + jip.getStatus().setprogress(ts.getSuperstepCount()); + jip.getStatus().setSuperstepCount(ts.getSuperstepCount()); } else if (ts.getRunState() == TaskStatus.State.FAILED) { jip.status.setRunState(JobStatus.FAILED); jip.failedTask(tip, ts); @@ -173,6 +175,7 @@ } } else if (jip.getStatus().getRunState() == JobStatus.RUNNING) { jip.getStatus().setprogress(ts.getSuperstepCount()); + jip.getStatus().setSuperstepCount(ts.getSuperstepCount()); } else if (jip.getStatus().getRunState() == JobStatus.KILLED) { GroomProtocol worker = findGroomServer(tmpStatus); Directive d1 = new DispatchTasksDirective( Index: core/src/main/java/org/apache/hama/bsp/GroomServer.java =================================================================== --- core/src/main/java/org/apache/hama/bsp/GroomServer.java (revision 1197384) +++ core/src/main/java/org/apache/hama/bsp/GroomServer.java (working copy) @@ -400,12 +400,10 @@ // Reports to a BSPMaster for (Map.Entry e : runningTasks .entrySet()) { - Thread.sleep(REPORT_INTERVAL); TaskInProgress tip = e.getValue(); TaskStatus taskStatus = tip.getStatus(); if (taskStatus.getRunState() == TaskStatus.State.RUNNING) { - taskStatus.setProgress(taskStatus.getSuperstepCount()); if (!tip.runner.isAlive()) { if (taskStatus.getRunState() != TaskStatus.State.FAILED) {