1. HBase
  2. HBASE-75

[hbase] Refactor classes into Client, Master, and Regionserver packages


    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Minor Minor
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 0.2.0
    • Component/s: None
    • Labels:


      I've been crawling around the HBase codebase for a little while now, and I think I have a proposal that would make it easer to find your way around in the codebase in general.

      I think that we should make three new packages below org.apache.hadoop.hbase, client, master, and regionserver. The client package would contain HTable, client-side scanning stuff, HBaseAdmin, the MapReduce-related stuff, the shell, REST and Thrift. The master package would contain HMaster, maybe Leases, any other classes that belong to master. The regionserver package would contain HRegionServer, HRegion, HStore and all its subclasses (HStoreFile, etc). Whatever is left over should be stuff that's pretty common to all the sub-packages, so we can either leave that in the hbase package, or push it down into a common subpackage.

      This would make it much easier for new contributors to decide where to look for stuff, as well as make it more obvious what the architectural divisions of the system are. To boot, it would allow us to reorganize our tests into similar subpackages, which has the advantage of allowing us to think about, for instance, client tests passing/failing as a group, rather than scattered alphabetically throughout the entire suite.

      This idea would probably erase HADOOP-2518, or at least change the goal to factor HStore down into o.a.h.h.regionserver.store.

        Issue Links


          Transition Time In Source Status Execution Times Last Executer Last Execution Date
          Open Open Resolved Resolved
          50d 17h 18m 1 Bryan Duxbury 13/Mar/08 18:05
          Resolved Resolved Closed Closed
          162d 3h 7m 1 Jim Kellerman 22/Aug/08 22:13
          Jim Kellerman made changes -
          Status Resolved [ 5 ] Closed [ 6 ]
          Bryan Duxbury made changes -
          Resolution Fixed [ 1 ]
          Status Open [ 1 ] Resolved [ 5 ]
          Bryan Duxbury added a comment -

          All the sub-tasks have been resolved and committed. Resolving parent issue.

          Bryan Duxbury added a comment - All the sub-tasks have been resolved and committed. Resolving parent issue.
          Bryan Duxbury made changes -
          Assignee Bryan Duxbury [ bryanduxbury ]
          Bryan Duxbury made changes -
          Fix Version/s 0.2.0 [ 12312955 ]
          Owen O'Malley made changes -
          Project Hadoop Core [ 12310240 ] Hadoop HBase [ 12310753 ]
          Fix Version/s 0.17.0 [ 12312913 ]
          Key HADOOP-2684 HBASE-75
          Component/s contrib/hbase [ 12311752 ]
          Assignee Bryan Duxbury [ bryanduxbury ]
          Jim Kellerman made changes -
          Link This issue is duplicated by HADOOP-2518 [ HADOOP-2518 ]
          Jim Kellerman made changes -
          Field Original Value New Value
          Link This issue is blocked by HADOOP-2636 [ HADOOP-2636 ]
          Bryan Duxbury created issue -


            • Assignee:
              Bryan Duxbury
              Bryan Duxbury
            • Votes:
              0 Vote for this issue
              0 Start watching this issue


              • Created: