You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Jesse Yates (JIRA)" <ji...@apache.org> on 2012/05/07 20:54:49 UTC
[jira] [Commented] (HBASE-4336) Convert source tree into maven
modules
[ https://issues.apache.org/jira/browse/HBASE-4336?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13269887#comment-13269887 ]
Jesse Yates commented on HBASE-4336:
------------------------------------
Commit candidate v0 is up at https://github.com/jyates/hbase/tree/refactor-modules. Its been rebased onto a fairly recent trunk (may be back a few days, but is pretty close).
Worked with Matt Corgan and Ian Varley (thanks Matt and Ian!) on getting this working for more than one person; currently shown to work on OSX and Ubuntu.
Give it a spin for the use cases you care about and lets get this rolled in!
Notes for usage:
* Requires Maven 3 (same as current HBase, but calling this out as its easy to mess up).
* Security profile is now enabled with a property, not necessarily enabling a profile
** -Dsecurity, not -Psecurity (minor, but the 'right' way to use profiles)
* mvn eclipse:eclipse requires running 'mvn install' first
** m2eclipse (built-in for Eclipse Indigo and installable in older versions) lets you do imports of the project, so you can ignore building the eclipse project files first. However, this way is a little wonky for the import, but you can basically ignore all the errors - seems to work fine.
Testing done:
* mvn
** clean, package, test, compile
* usage
** deployed in pseudo-distributed and works from shell
> Convert source tree into maven modules
> --------------------------------------
>
> Key: HBASE-4336
> URL: https://issues.apache.org/jira/browse/HBASE-4336
> Project: HBase
> Issue Type: Task
> Components: build
> Reporter: Gary Helmling
> Priority: Critical
> Fix For: 0.96.0
>
>
> When we originally converted the build to maven we had a single "core" module defined, but later reverted this to a module-less build for the sake of simplicity.
> It now looks like it's time to re-address this, as we have an actual need for modules to:
> * provide a trimmed down "client" library that applications can make use of
> * more cleanly support building against different versions of Hadoop, in place of some of the reflection machinations currently required
> * incorporate the secure RPC engine that depends on some secure Hadoop classes
> I propose we start simply by refactoring into two initial modules:
> * core - common classes and utilities, and client-side code and interfaces
> * server - master and region server implementations and supporting code
> This would also lay the groundwork for incorporating the HBase security features that have been developed. Once the module structure is in place, security-related features could then be incorporated into a third module -- "security" -- after normal review and approval. The security module could then depend on secure Hadoop, without modifying the dependencies of the rest of the HBase code.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira