[ 
https://issues.apache.org/jira/browse/HBASE-9213?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13750415#comment-13750415
 ] 

stack commented on HBASE-9213:
------------------------------

If we did what hive did, questions:

1. We would complicate the simple case, running hbase standalone ("Download 
hbase binary, if hadoop 1.x.x, copy jars a, b, c to lib, if hadoop 2.x.x, copy 
jars d, e, f.  Do not copy hadoop 0.20 jars because we do not work unless you 
.... and so on").  We already get dinged on being "complicated".  We would be 
raising the bar for the folks who just want to try it out.
2. How do the hive shims work?  Is it download hive, put in place the 
hive-hadoop-2 shim, and then add in hadoop2?  Or is it download hive and put in 
place hadoop2 (and hive will figure via reflection what it has under it and 
then invoke the approriate hadoop1 or hadoop2 method?).  If the former, that is 
what we have now (our shims are called hbase-hadoop*-compat).  If the latter 
case, then IIUC, it would be untenable us doing reflection to figure if hadoop 
metrics1 or hadoop metrics2 and then per metric, make the appropriate 
invocation; we'd make a horrid reflection spaghetti.

Maybe we could have a setup script where you say what you want to run against 
and we then go fetch what we need (including compat modules from maven) and 
then you start hbase (this'd work for standalone mode but then how to 
distinguish from actual install-on-a-cluster)

1. This is basically still correct for building different tgzs 
http://hbase.apache.org/book.html#build (I need to update)
4. Hard thing about another build tool is that in the end we have to publish to 
a maven repo somehow; we could have a build tool and then have another script 
to do maven publish (and I'm wary that "all is fixed if you just use this other 
build tool" -- heard that one before).


                
> create a unified shim for hadoop 1 and 2 so that there's one build of HBase
> ---------------------------------------------------------------------------
>
>                 Key: HBASE-9213
>                 URL: https://issues.apache.org/jira/browse/HBASE-9213
>             Project: HBase
>          Issue Type: Brainstorming
>          Components: build
>            Reporter: Sergey Shelukhin
>
> This is a brainstorming JIRA. Working with HBase dependency at this point 
> seems to be rather painful from what I hear from other folks. We could do the 
> hive model with unified shim, built in such manner that it can work with 
> either version, where at build time dependencies for all 2-3 versions are 
> pulled and the appropriate one is used for tests, and when running HBase you 
> have to point at Hadoop directory to get the dependencies. I am not very 
> proficient at maven so not quite certain of the best solution yet.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to