hadoop-common-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sanjay Radia (JIRA)" <j...@apache.org>
Subject [jira] Issue Comment Edited: (HADOOP-2885) Restructure the hadoop.dfs package
Date Mon, 10 Mar 2008 19:12:46 GMT

    [ https://issues.apache.org/jira/browse/HADOOP-2885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12577021#action_12577021
] 

sanjay.radia edited comment on HADOOP-2885 at 3/10/08 12:12 PM:
----------------------------------------------------------------

All three proposals go towards making the interface explicit. If you look at the master/parent
jira
you will see that it was one of the goals.  Interface separation and compatibility was 
one of the major motivations of this jira.
The original proposal (is in the description at the top) is closer to what you, eric,
 are saying (but it was called dfs instead of hdfs).

Also note that even when interface and impl are under one package,
 the src of the interface and impl can be in separate src trees. Hence even though hdfs 
is under fs,  all three proposals move the server part to a separate src tree. The three proposal
differ in how much of the
HDFS client wrapper is in core src tree. Even proposal 1 which keeps the wrapper in src/hdfs
proposes that there be two jars.

Most of sun's java interfaces and impl has different package roots (interferface in java.foo
and impl in com.sun.xxx.foo,)
The style above (keeping the impl under the same package but in a different src tree) is not
uncommon for apache
projects (as doug tells me). In our case, apache is the interface publisher and also the impl
publisher.

      was (Author: sanjay.radia):
    All three proposals go towards making the interface cleaner. If you look at the master/parent
jira
you will see that it was one of the goals. For me the interface separation and compatibility
was 
one of the major motivations.
The original proposal (is in the description at the top) is closer to what you are saying
(but it was called dfs instead of hdfs).

Also note that even when interface and impl are under one package,
 the src of the interface and impl can be in separate src trees. Hence even though hdfs 
is under fs,  all three proposals move the server part in a separate src tree. The three proposal
differs how much of the
HDFS client wrapper is in core src tree. Even proposal 1 which keeps the wrapper in src/hdfs
proposes that there
be two jars.

Most of sun's java interfaces and impl has different package roots (interferface in java.foo
and impl in com.sun.xxx.foo,)
The style above (keeping the impl under the same package but in a different src tree) is not
uncommon for apache
projects (as doug tells me) because apache is the interface publisher and also the impl publisher.
  
> Restructure the hadoop.dfs package
> ----------------------------------
>
>                 Key: HADOOP-2885
>                 URL: https://issues.apache.org/jira/browse/HADOOP-2885
>             Project: Hadoop Core
>          Issue Type: Sub-task
>          Components: dfs
>            Reporter: Sanjay Radia
>            Assignee: Sanjay Radia
>            Priority: Minor
>             Fix For: 0.17.0
>
>         Attachments: Prototype dfs package.png
>
>
> This Jira proposes restructurign the package hadoop.dfs.
> 1. Move all server side and internal protocols (NN-DD etc) to hadoop.dfs.server.*
> 2. Further breakdown of dfs.server.
> - dfs.server.namenode.*
> - dfs.server.datanode.*
> - dfs.server.balancer.*
> - dfs.server.common.* - stuff shared between the various servers
> - dfs.protocol.*  - internal protocol between DN, NN and Balancer etc.
> 3. Client interface:
> - hadoop.dfs.DistributedFileSystem.java
> - hadoop.dfs.ChecksumDistributedFileSystem.java
> - hadoop.dfs.HftpFilesystem.java
> - hadoop.dfs.protocol.* - the client side protocol

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


Mime
View raw message