[
https://issues.apache.org/jira/browse/MAPREDUCE-1623?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Tom White updated MAPREDUCE-1623:
---------------------------------
Attachment: MAPREDUCE-1623.patch
Thanks Arun - really useful getting all this feedback. I've attached an updated
patch, see also my comments below.
> src/java/org/apache/hadoop/mapreduce/MRConfig.java
> -> Stable?
It's private, so it matters less, but we should be able to refactor this if
it's an internal class, no? So maybe evolving/unstable.
> src/java/org/apache/hadoop/mapreduce/TaskType.java
> -> Public? Stable?
It is public. Not sure about whether it is stable yet.
> src/java/org/apache/hadoop/mapreduce/StatusReporter.java
> -> Stable or Evolving?
Private, so it matters less.
> src/java/org/apache/hadoop/mapreduce/JobSubmitter.java
> -> Unstable?
Changed.
> src/java/org/apache/hadoop/mapreduce/split/package-info.java
> -> Unstable?
Changed.
> src/java/org/apache/hadoop/mapreduce/JobStatus.java
> -> Public?
Yes.
> src/java/org/apache/hadoop/mapreduce/protocol/package-info.java
> -> Stable?
Changed.
> src/java/org/apache/hadoop/mapreduce/task/package-info.java
> -> Unstable?
Changed
> src/java/org/apache/hadoop/mapreduce/task/reduce/package-info.java
> -> Unstable?
Changed
> src/java/org/apache/hadoop/mapreduce/task/reduce/ShuffleHeader.java
> -> Stable? (I'd like to keep it so, at least, thoughts?)
Changed.
> src/java/org/apache/hadoop/mapreduce/lib/input/LineRecordReader.java
> -> Stable? Limited-Private (Pig) ?
Changed to Evolving, Limited-Private (MR, Pig)
> src/java/org/apache/hadoop/mapreduce/lib/db/OracleDataDrivenDBRecordReader.java
> -> private for extension?
> src/java/org/apache/hadoop/mapreduce/lib/db/MySQLDataDrivenDBRecordReader.java
> -> public for extension?
> src/java/org/apache/hadoop/mapreduce/lib/db/DateSplitter.java
> -> private?
> src/java/org/apache/hadoop/mapreduce/lib/db/OracleDataDrivenDBInputFormat.java
> -> public?
> src/java/org/apache/hadoop/mapreduce/lib/db/BooleanSplitter.java
> -> private?
> src/java/org/apache/hadoop/mapreduce/lib/db/BigDecimalSplitter.java
> -> private?
> src/java/org/apache/hadoop/mapreduce/lib/db/DBRecordReader.java
> -> public?
> src/java/org/apache/hadoop/mapreduce/lib/db/DataDrivenDBRecordReader.java
> -> public?
> src/java/org/apache/hadoop/mapreduce/lib/db/TextSplitter.java
> -> private?
> src/java/org/apache/hadoop/mapreduce/lib/db/DBSplitter.java
> -> private?
> src/java/org/apache/hadoop/mapreduce/lib/db/DBConfiguration.java
> -> private?
> src/java/org/apache/hadoop/mapreduce/lib/db/DBInputFormat.java
> -> public?
> src/java/org/apache/hadoop/mapreduce/lib/db/DBOutputFormat.java
> -> public?
> src/java/org/apache/hadoop/mapreduce/lib/db/DBWritable.java
> -> private?
Needs to be public since client programs can use it.
> src/java/org/apache/hadoop/mapreduce/lib/db/DataDrivenDBInputFormat.java
> -> public?
> src/java/org/apache/hadoop/mapreduce/lib/db/IntegerSplitter.java
> -> private?
> src/java/org/apache/hadoop/mapreduce/lib/db/OracleDateSplitter.java
> -> private?
> src/java/org/apache/hadoop/mapreduce/lib/db/FloatSplitter.java
> -> private?
> src/java/org/apache/hadoop/mapreduce/lib/db/MySQLDBRecordReader.java
> -> public?
> src/java/org/apache/hadoop/mapreduce/lib/db/OracleDBRecordReader.java
> -> public?
I left all of the lib.db classes public evolving since they are used by various
extensions and users. Does this sound reasonable?
> src/java/org/apache/hadoop/mapreduce/lib/reduce/WrappedReducer.java
> -> public?
Yes.
> src/java/org/apache/hadoop/mapreduce/lib/partition/BinaryPartitioner.java
> -> public?
Yes.
> src/java/org/apache/hadoop/mapreduce/lib/map/WrappedMapper.java
> -> public?
Yes.
> src/java/org/apache/hadoop/mapreduce/server/jobtracker/State.java
> -> public?
Yes.
> src/java/org/apache/hadoop/mapreduce/server/jobtracker/JTConfig.java
> -> private?
Changed.
> src/java/org/apache/hadoop/mapreduce/server/jobtracker/TaskTracker.java
> -> limited-private for Schedulers
Changed.
> src/java/org/apache/hadoop/mapreduce/server/tasktracker/TTConfig.java
> -> private?
Changed.
> src/java/org/apache/hadoop/mapreduce/MarkableIterator.java
> -> private?
Are MarkableIterator and MarkableIteratorInterface public user classes? The
unit test for them (TestValueIterReset) implies that the user instantiates a
MarkableIterator.
> src/java/org/apache/hadoop/mapreduce/TaskCounter.java
> -> public?
Yes.
> src/java/org/apache/hadoop/mapreduce/QueueAclsInfo.java
> -> private?
It's returned by a public method on Cluster.
> src/java/org/apache/hadoop/mapreduce/ClusterMetrics.java
> -> public
Yes.
> src/java/org/apache/hadoop/mapreduce/MarkableIteratorInterface.java
> -> private
See above.
> src/java/org/apache/hadoop/mapreduce/Job.java
> -> public
Yes.
> src/java/org/apache/hadoop/mapreduce/JobCounter.java
> -> public
Yes.
> src/java/org/apache/hadoop/mapreduce/JobPriority.java
> -> public
Yes.
> src/java/org/apache/hadoop/mapreduce/jobhistory/package-info.java
> -> private
Yes.
> src/java/org/apache/hadoop/mapreduce/Cluster.java
> -> public
Yes.
> src/java/org/apache/hadoop/mapreduce/QueueState.java
> -> private
Referenced from the public QueueInfo class.
> Apply audience and stability annotations to classes in mapred package
> ---------------------------------------------------------------------
>
> Key: MAPREDUCE-1623
> URL: https://issues.apache.org/jira/browse/MAPREDUCE-1623
> Project: Hadoop Map/Reduce
> Issue Type: Sub-task
> Components: documentation
> Reporter: Tom White
> Assignee: Tom White
> Priority: Blocker
> Fix For: 0.21.0, 0.22.0
>
> Attachments: M1623-1.patch, MAPREDUCE-1623.patch,
> MAPREDUCE-1623.patch, MAPREDUCE-1623.patch, MAPREDUCE-1623.patch,
> MAPREDUCE-1623.patch, MAPREDUCE-1623.patch, MAPREDUCE-1623.patch,
> MAPREDUCE-1623.patch, MAPREDUCE-1623.patch
>
>
> There are lots of implementation classes in org.apache.hadoop.mapred which
> makes it difficult to see the user-level MapReduce API classes in the
> Javadoc. (See
> http://hadoop.apache.org/common/docs/r0.20.2/api/org/apache/hadoop/mapred/package-summary.html
> for example.) By marking these implementation classes with the
> InterfaceAudience.Private annotation we can exclude them from user Javadoc
> (using HADOOP-6658).
> Later work will move the implementation classes into o.a.h.mapreduce.server
> and related packages (see MAPREDUCE-561), but applying the annotations is a
> good first step.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.