hadoop-common-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Steve Loughran (JIRA)" <j...@apache.org>
Subject [jira] Commented: (HADOOP-3822) Create a public scheduler API
Date Sat, 26 Jul 2008 14:57:31 GMT

    [ https://issues.apache.org/jira/browse/HADOOP-3822?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12617187#action_12617187

Steve Loughran commented on HADOOP-3822:

with inner classes, a lot of this is moot. What is important for an abstract class is that

* it doesn't do anything in its constructor that calls non-final methods
* it doesnt offer protected fields (better for private and protected methods) as you can't
change much from then on.
* you dont rely on package scoped fields/methods/classes

The biggest problem I have with either api choice is exception handling -you are always stuck
with whatever exceptions the api designer thought was likely. 

Currently hadoop has a lot of package-private code, and that is bad because it forces people
subclassing to use that package name. This is bad for the hadoop team, as their packages appear
in the stack traces -they get to field the support calls. 

One thing we could consider is a java5 tag @Unstable or @Internal, which would be a bit like
@deprecated, and warn people that the things could change without warning -and hence that
there were no stability guarantees at all. 

> Create a public scheduler API
> -----------------------------
>                 Key: HADOOP-3822
>                 URL: https://issues.apache.org/jira/browse/HADOOP-3822
>             Project: Hadoop Core
>          Issue Type: Improvement
>          Components: mapred
>            Reporter: Tom White
>             Fix For: 0.19.0
>         Attachments: hadoop-3822.patch, hadoop-3822.sh
> The work in HADOOP-3412 provided an API to support pluggable schedulers. However implementations
have to be in the org.apache.hadoop.mapred package, which is undesirable. The goal of this
issue is to create a public API for scheduler writers to code against.

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

View raw message