hadoop-common-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Michael Bieniosek (JIRA)" <j...@apache.org>
Subject [jira] Commented: (HADOOP-1313) JobInProgress should be public (or implement a public interface)
Date Wed, 02 May 2007 00:16:15 GMT

    [ https://issues.apache.org/jira/browse/HADOOP-1313?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12492993

Michael Bieniosek commented on HADOOP-1313:

The webapps use the JobTracker, so I assumed I would be able to use its interface as well.
 It seems odd that the webapp is privileged.  

JobClient and JobSubmissionProtocol don't provide the actual number of running/completed tasks;
they only seem to provide the progress as a float.  I also want ClusterStatus.  ClusterStatus
is available from JobSubmissionProtocol as well as JobTracker, but JobSubmissionProtocol is
not available from JobClient.

> JobInProgress should be public (or implement a public interface)
> ----------------------------------------------------------------
>                 Key: HADOOP-1313
>                 URL: https://issues.apache.org/jira/browse/HADOOP-1313
>             Project: Hadoop
>          Issue Type: Bug
>          Components: mapred
>            Reporter: Michael Bieniosek
> I'm trying to get programmatic access to hadoop job/task status through the JobTracker
> I notice that JobTracker returns a JobInProgress object in several public methods (runningJobs,
getJob).  However, JobInProgress is a package-access class.  So, oddly, I can get JobTracker.getJob(),
but I can't store the result as a JobInProgress (I suppose I could store it as an Object,
but then I couldn't upcast it back).  
> The JobInProgress object gives me useful information about jobs, so I don't think making
runningJobs/getJob not public is a good idea.  I get the idea from HADOOP-28 that JobInProgress
is not public because nobody wants to maintain compatibility in this class across hadoop versions.
> So it would probably be best if we created public interfaces that JobInProgress and TaskInProgress
implement.  I only care about the accessors, so maybe from JobInProgress we could expose (getProfile,
getStatus, get*Time, {finished,desired,running}{Maps,Reduces}, getMapTasks, getCounters) and
from TaskInProgress (isRunning, isComplete, isFailed, isMapTask, numTaskFailures, numKilledTasks,
getProgress, getCounters).
> Any thoughts?

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message