[ 
https://issues.apache.org/jira/browse/MAPREDUCE-4942?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13656278#comment-13656278
 ] 

Robert Joseph Evans commented on MAPREDUCE-4942:
------------------------------------------------

This is one of the odd places where the code is binary compatible but not 
source compatible.  0.23 binaries should run against the 2.0 API, but they are 
likely to not compile against the changed API unless they are catching 
Exception :).

I can see your reasoning about wanting to maintain compatibility with 1.0, we 
got so much flack from asking everyone to recompile that we are not going to be 
able to do it again for a long time.  Because of that I personally am against 
putting in any changes that are incompatible with 0.23.  If we do it will 
either delay Yahoo adopting 2.0 significantly or it will force us to fork until 
we can build up enough good will that we can risk asking everyone to recompile 
again. I am not going to -1 this because I don't think that is good for the 
community, but it will mean that Yahoo! is not going to be able to run on stock 
2.0 for a while.
                
> mapreduce.Job has a bunch of methods that throw InterruptedException so its 
> incompatible with MR1
> -------------------------------------------------------------------------------------------------
>
>                 Key: MAPREDUCE-4942
>                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-4942
>             Project: Hadoop Map/Reduce
>          Issue Type: Sub-task
>          Components: mrv2
>    Affects Versions: 2.0.2-alpha
>            Reporter: Robert Kanter
>            Assignee: Robert Kanter
>             Fix For: 2.0.5-beta
>
>         Attachments: MAPREDUCE-4942.patch
>
>
> The following methods in MR2's {{org.apache.hadoop.mapreduce.Job}} throw an 
> {{InterruptedException}} but don't in MR1, which makes them incompatible.  
> (Their Javadoc comments are also missing that they throw an 
> {{InterruptedException}} anyway)
> I propose that we wrap the {{InterruptedException}} in a 
> {{RuntimeException}}.  
> {code}
> public float setupProgress() throws IOException, InterruptedException
> public float mapProgress() throws IOException, InterruptedException
> public float reduceProgress() throws IOException, InterruptedException
> public boolean isComplete() throws IOException, InterruptedException
> public boolean isSuccessful() throws IOException, InterruptedException
> public void killJob() throws IOException, InterruptedException
> public void killTask(org.apache.hadoop.mapreduce.TaskAttemptID) throws 
> IOException, InterruptedException
> public void failTask(org.apache.hadoop.mapreduce.TaskAttemptID) throws 
> IOException, InterruptedException
> public Counters getCounters() throws IOException, InterruptedException
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to