[ https://issues.apache.org/jira/browse/HBASE-20333?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Sean Busbey updated HBASE-20333: -------------------------------- Status: Patch Available (was: In Progress) -v0 WIP - patches for HBASE-20478 and HBASE-20332, since we rely on them - reworking of where we do the hadoop exclude / include since now two modules want it excluded and one wants to include it - new module {{hbase-shaded-client-byo-hadoop}} that leaves hadoop-* dependencies exposed to downstream passes basic correctness tests (check-invariants, manually looking at reduced dependency tree). going to take a go at HBASE-20334 using the result of this WIP patch to see if this works. > break up shaded client into one with no Hadoop and one that's standalone > ------------------------------------------------------------------------ > > Key: HBASE-20333 > URL: https://issues.apache.org/jira/browse/HBASE-20333 > Project: HBase > Issue Type: Sub-task > Components: shading > Affects Versions: 2.0.0 > Reporter: Sean Busbey > Assignee: Sean Busbey > Priority: Critical > Fix For: 2.0.0 > > Attachments: HBASE-20333.WIP.0.patch > > > there are contexts where we want to stay out of our downstream users way wrt > dependencies, but they need more Hadoop classes than we provide. i.e. any > downstream client that wants to use both HBase and HDFS in their application, > or any non-MR YARN application. > Now that Hadoop also has shaded client artifacts for Hadoop 3, we're also > providing less incremental benefit by including our own rewritten Hadoop > classes to avoid downstream needing to pull in all of Hadoop's transitive > dependencies. > right now those users need to ensure that any jars from the Hadoop project > are loaded in the classpath prior to our shaded client jar. This is brittle > and prone to weird debugging trouble. > instead, we should have two artifacts: one that just lists Hadoop as a > prerequisite and one that still includes the rewritten-but-not-relocated > Hadoop classes. > We can then use docs to emphasize when each of these is appropriate to use. -- This message was sent by Atlassian JIRA (v7.6.3#76005)