[ 
https://issues.apache.org/jira/browse/HBASE-8386?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Work on HBASE-8386 started by Sean Busbey.
------------------------------------------
> deprecate TableMapReduce.addDependencyJars(Configuration, class<?> ...)
> -----------------------------------------------------------------------
>
>                 Key: HBASE-8386
>                 URL: https://issues.apache.org/jira/browse/HBASE-8386
>             Project: HBase
>          Issue Type: Improvement
>          Components: mapreduce
>            Reporter: Nick Dimiduk
>            Assignee: Sean Busbey
>
> We expose two public static methods names {{addDependencyJars}}. One of them, 
> {{void addDependencyJars(Job}}, is very helpful -- goes out of its way to 
> detect job dependencies as well as shipping all the necessary HBase 
> dependencies. The other is shfty and nefarious, {{void 
> addDependencyJars(Configuration, Class<?>...)}} -- it only adds exactly what 
> the user requests, forcing them to resolve dependencies themselves and giving 
> a false sense of security. We should deprecate the latter throw a big giant 
> warning when people use that one. The handy functionality of providing help 
> when our heuristics fail can be added via a new method signature, something 
> like {{void addDependencyJars(Job, Class<?> ...}}. This method would do 
> everything {{void addDependencyJars(Job}} does, plus let the user specify 
> arbitrary additional classes. That way HBase still can help the user, but 
> also gives them super-powers to compensate for when our heuristics fail.
> For reference, this appears to be the reason why HBase + Pig doesn't really 
> work out of the box. See 
> [HBaseStorage.java|https://github.com/apache/pig/blob/trunk/src/org/apache/pig/backend/hadoop/hbase/HBaseStorage.java#L730]



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to